scsi: sr: Return appropriate error code when disk is ejected
Subsystems (3)
Sasha Levin
maintainerPATCH 1/4 scsi: sr: Return appropriate error code when disk is ejected
From: ManYi Li <[email protected]>
[ Upstream commit 7dd753ca59d6c8cc09aa1ed24f7657524803c7f3 ]
Handle a reported media event code of 3. This indicates that the media has been removed from the drive and user intervention is required to proceed. Return DISK_EVENT_EJECT_REQUEST in that case.
--- drivers/scsi/sr.c | 2 ++ 1 file changed, 2 insertions(+)
drivers/scsi/sr.c +2 -0
@@ -220,6 +220,8 @@ static unsigned int sr_get_events(struct scsi_device *sdev)return DISK_EVENT_EJECT_REQUEST ; else if (med->media_event_code == 2) return DISK_EVENT_MEDIA_CHANGE; + else if (med->media_event_code == 3) + return DISK_EVENT_EJECT_REQUEST;return 0 ; }
Signature · 1 line
2.30.2
Sasha Levin
maintainerPATCH 2/4 gpio: mxc: Fix disabled interrupt wake-up support
From: Loic Poulain <[email protected]>
[ Upstream commit 3093e6cca3ba7d47848068cb256c489675125181 ]
A disabled/masked interrupt marked as wakeup source must be re-enable and unmasked in order to be able to wake-up the host. That can be done by flaging the irqchip with IRQCHIP_ENABLE_WAKEUP_ON_SUSPEND.
Note: It 'sometimes' works without that change, but only thanks to the lazy generic interrupt disabling (keeping interrupt unmasked).
--- drivers/gpio/gpio-mxc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/gpio/gpio-mxc.c +1 -1
@@ -361,7 +361,7 @@ static int mxc_gpio_init_gc(struct mxc_gpio_port *port, int irq_base) ct->chip.irq_unmask = irq_gc_mask_set_bit; ct->chip.irq_set_type = gpio_set_irq_type; ct->chip.irq_set_wake = gpio_set_wake_irq; - ct->chip.flags =IRQCHIP_MASK_ON_SUSPEND ; + ct->chip.flags =IRQCHIP_MASK_ON_SUSPEND |IRQCHIP_ENABLE_WAKEUP_ON_SUSPEND ; ct->regs.ack =GPIO_ISR ; ct->regs.mask =GPIO_IMR ;
Signature · 1 line
2.30.2
Sasha Levin
maintainerPATCH 3/4 drm/nouveau: fix dma_address check for CPU/GPU sync
In reply to Sasha LevinFrom: Christian König <[email protected]>
[ Upstream commit d330099115597bbc238d6758a4930e72b49ea9ba ]
AGP for example doesn't have a dma_address array.
--- drivers/gpu/drm/nouveau/nouveau_bo.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
drivers/gpu/drm/nouveau/nouveau_bo.c +2 -2
@@ -590,7 +590,7 @@ nouveau_bo_sync_for_device(struct nouveau_bo *nvbo)struct ttm_dma_tt *ttm_dma = (struct ttm_dma_tt *)nvbo->bo.ttm;int i; -if (!ttm_dma) +if (!ttm_dma || !ttm_dma->dma_address)return ;/* Don't waste time looping if the object is coherent */
@@ -610,7 +610,7 @@ nouveau_bo_sync_for_cpu(struct nouveau_bo *nvbo)struct ttm_dma_tt *ttm_dma = (struct ttm_dma_tt *)nvbo->bo.ttm;int i; -if (!ttm_dma) +if (!ttm_dma || !ttm_dma->dma_address)return ;/* Don't waste time looping if the object is coherent */
Signature · 6 lines
2.30.2 _______________________________________________ Nouveau mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/nouveau
Sasha Levin
maintainerPATCH 4/4 gpio: AMD8111 and TQMX86 require HAS_IOPORT_MAP
In reply to Sasha LevinFrom: Johannes Berg <[email protected]>
[ Upstream commit c6414e1a2bd26b0071e2b9d6034621f705dfd4c0 ]
Both of these drivers use ioport_map(), so they need to depend on HAS_IOPORT_MAP. Otherwise, they cannot be built even with COMPILE_TEST on architectures without an ioport implementation, such as ARCH=um.
--- drivers/gpio/Kconfig | 2 ++ 1 file changed, 2 insertions(+)
drivers/gpio/Kconfig +2 -0
@@ -1337,6 +1337,7 @@ config GPIO_TPS68470 config GPIO_TQMX86 tristate "TQ-Systems QTMX86 GPIO" depends on MFD_TQMX86 || COMPILE_TEST + depends on HAS_IOPORT_MAP select GPIOLIB_IRQCHIP help This driver supports GPIO on the TQMX86 IO controller.
@@ -1404,6 +1405,7 @@ menu "PCI GPIO expanders" config GPIO_AMD8111 tristate "AMD 8111 GPIO driver" depends on X86 || COMPILE_TEST + depends on HAS_IOPORT_MAP help The AMD 8111 south bridge contains 32 GPIO pins which can be used.
Signature · 1 line
2.30.2