[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 3/3] xen/arm: handle irq_set_type() failures
- To: Jan Beulich <jbeulich@xxxxxxxx>
- From: Mykola Kvach <mykola_kvach@xxxxxxxx>
- Date: Tue, 18 Aug 2026 12:51:41 +0300
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com; dkim=pass header.d=epam.com; arc=none
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=++vue6zmpgd1AiBfELRsqf8M3Vb4q01LCid6m88uRVM=; b=Dgw4xYI+GZXDgOn81NccNbxIrkvb+RUav9lj0BV4fqeGMVc20Jvq9XSwfLXonAu5ojZQCfGnHRn3R/vKrTzRbZ5TnQhSQsDNAlrHYZIb7ahb34dcGoUxuym1MjnvMRjVn8QTKxUA1ak51IVQHVND8jgVpLYApnmQAVmNvXVVZlKzlWZl4FgKRCKIh1GCaRSV6SP0mAnkGyWulkEDZAhFz/xaWLoJ5refGgXLOkEiDPGRAhhm4ds/qoDL+G2bdrh9qSZmNIvP5xV71mbDVGTWsKGmRmJVXW1zCAvxm09wnhl1+uVnSuxoBHB35NQCTeEAQYYBIJhozF11wXE03CNbcQ==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=HlLXGFQ++o/9yJzw3TuHi8WH5sxDFHixrFU8d6Aa269kzerCBILNv4kTp9xpvxEKTwYWqAGxqz7ucrXfYXkR7ZPnDFIR89Y5SNuSKjV/UJ7upOYAKGA5uRllXvE+EOixUiM7a81dzYDBsuGrxQ8eWf8GDUUL2m2c1Dk08XaW1AjBFH4QwqgHB5hvRPZ+RmqhuDmT4nRd40leEZ2G8bxvCZ7xbiqnWaUuJ4CYldNtKz/c7wMSUUYCCnQ81aoQlMody8QE0nWmX5BDSKCa0JxgGrYRzCXK/fq+rgz7G3/ByCMaHCJI0/lOTp12aZI1b3H7zwcfx8fW+eeDszyRSspMuw==
- Authentication-results: eu.smtp.expurgate.cloud; dkim=pass header.s=selector1 header.d=epam.com header.i="@epam.com" header.h="From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck"
- Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=epam.com;
- Cc: Stefano Stabellini <sstabellini@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Bertrand Marquis <bertrand.marquis@xxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Anthony PERARD <anthony.perard@xxxxxxxxxx>, Roger Pau Monné <roger@xxxxxxxxxxxxxx>, Jens Wiklander <jenswi@xxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx
- Delivery-date: Tue, 18 Aug 2026 09:51:51 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
- Mail-followup-to: Jan Beulich <jbeulich@xxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Bertrand Marquis <bertrand.marquis@xxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Anthony PERARD <anthony.perard@xxxxxxxxxx>, Roger Pau Monné <roger@xxxxxxxxxxxxxx>, Jens Wiklander <jenswi@xxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx
Hi Jan,
Thank you for the review.
On Wed, Aug 12, 2026 at 09:39:55AM +0200, Jan Beulich wrote:
> On 10.08.2026 20:38, Mykola Kvach wrote:
> > --- a/xen/drivers/char/ns16550.c
> > +++ b/xen/drivers/char/ns16550.c
> > @@ -1928,6 +1928,7 @@ static int __init ns16550_acpi_uart_init(const void
> > *data)
> > struct acpi_table_header *table;
> > struct acpi_table_spcr *spcr;
> > acpi_status status;
> > + int rc;
> > /*
> > * Same as the DT part.
> > * Only support one UART on ARM which happen to be ns16550_com[0].
> > @@ -1976,7 +1977,9 @@ static int __init ns16550_acpi_uart_init(const void
> > *data)
> > uart->reg_width = spcr->serial_port.access_width;
> >
> > /* The trigger/polarity information is not available in spcr. */
> > - irq_set_type(spcr->interrupt, IRQ_TYPE_LEVEL_HIGH);
> > + rc = irq_set_type(spcr->interrupt, IRQ_TYPE_LEVEL_HIGH);
> > + if ( rc )
> > + return rc;
>
> Is erroring out still appropriate when part of ns16550_com[] was already
> modified? I.e. doesn't the call need to move up then?
Good point. Returning there can leave ns16550_com[0] partially
initialized. I'll move irq_set_type() before ns16550_init_common()
and before modifying the UART state.
Best regards,
Mykola
|