[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH v2 0/4] xen/drivers/char: fix IRQ registration failure propagation


  • To: "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Oleksii Moisieiev <Oleksii_Moisieiev@xxxxxxxx>
  • Date: Thu, 9 Apr 2026 13:50:25 +0000
  • Accept-language: en-US
  • 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=MWk0b/gbdHiEsL9b29E7NaM7gms/+2H6hdGEui5llV0=; b=ybZSH84jRfcKqBvwct1euR/yKPP2FxzgdPlNuHKiSnY+V2ayu6kbrKQtZ3CKcq+j1grjFD9KJCx8+6pnGe/QCtpnhRhvJsn9BJKbcUzgLLwyzXPbD5/mIDLS6sc1BmuuziJDqaj0wfns75VqNduv09+AVUGb06uCMuRKw/aQL0DwgBYK2I+1mwl4FVLJIpkTmYhNv2oynWJIKdAv+jnSF5TNXrCJNhpJQ0E22vxZ99xRuG0mSTu+BLijtIutqpg499z4fEnO2p+7UqeZhoX4dLLLGjN1UYA3tuwOFOVFppeABwSXIz3kTivWVGdiJl9noR5Ch1z5sIt1VFNiN997Sw==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=clixax+jzXYK0s3DnxNYxlgNBMewUnIhN4A1TlCXgH9/9znWRI2kGU//Nnu8j08SrxRwn7pufiXUq7pyH04OJe/UmFsAQJ2uT2Ntk/KCRFoq8L8RoJAdKtRgShbJE8iq/buLsFIuGyCci33udaPJURP+IoJlL7OOvVLih+3fZlKeLxmAagnSwqUsYTA4YiOgXwKk8NxXZ5iMm6k0EBowUjE3BSoSFp8wh1JhEwraXFWnzeA7TQyIzg5c0IxDW9hoCOgLlwePdKza38LDKAZFto5W00vNi7fEl8vNuoAsmHXUyh0Dl//Z9dLhoNmpbHsa4jKEVbyjnZA9wZdl7qPGlQ==
  • 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: Bertrand Marquis <bertrand.marquis@xxxxxxx>, Julien Grall <julien@xxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, Oleksii Moisieiev <Oleksii_Moisieiev@xxxxxxxx>
  • Delivery-date: Thu, 09 Apr 2026 13:50:41 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Thread-index: AQHcyCfR2w68ukca0EGyU3O5OTVPxA==
  • Thread-topic: [PATCH v2 0/4] xen/drivers/char: fix IRQ registration failure propagation

This series fixes a common bug pattern found in several Xen UART drivers:
when setup_irq() fails during post-IRQ initialization, drivers log the
error but continue executing and unconditionally unmask hardware
interrupt lines with no handler registered. On platforms where the GIC
receives these asserted lines, the result is either repeated
spurious-interrupt warnings or an unhandled interrupt fault.

Patch 1, originally submitted as a standalone fix in v1, addresses
the issue in the SCIF driver and moves the hardware error-flag clearing
sequence to before the setup_irq() call so that stale error bits are
cleared unconditionally. Patches 2-4 apply the same early-return fix to
the pl011, cadence-uart, and exynos4210-uart drivers.

The pl011 and cadence-uart drivers additionally had a positive-condition
IRQ guard (if uart->irq > 0) that could fall through to the interrupt
unmask even when no valid IRQ was provided. Both are restructured to
use the early-return idiom.

Changes in v2:
- Extend fix to pl011, cadence-uart and exynos4210
- fix typo in patch 1 description

Oleksii Moisieiev (4):
  xen/drivers/char: fix SCIF IRQ registration failure propagation
  xen/drivers/char/pl011: fix IRQ registration failure propagation
  xen/drivers/char/cadence-uart: fix IRQ registration failure
    propagation
  xen/drivers/char: fix exynos4210 IRQ registration failure propagation

 xen/drivers/char/cadence-uart.c    | 17 +++++++++++------
 xen/drivers/char/exynos4210-uart.c |  4 ++++
 xen/drivers/char/pl011.c           | 17 +++++++++++------
 xen/drivers/char/scif-uart.c       | 16 ++++++++++++----
 4 files changed, 38 insertions(+), 16 deletions(-)

-- 
2.43.0

base-commit: 2ca756d39f59f834160263fd142ef91c6ca3dd90
branch: amoi_dfmea_scif


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.