Hello! Marc pointed during review of pci-aardvark patches one issue which I see that is available also in the current pcie-uniphier.c driver. When masking or unmasking interrupts there is read-modify-write sequence for PCL_RCV_INTX_MASK_SHIFT register without any locking: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/pci/controller/dwc/pcie-uniphier.c?h=v5.13#n171 So when trying to mask/unmask two interrupts at the same time there is race condition as updating that PCL_RCV_INTX_MASK_SHIFT register is not atomic. Could you look at it?