linux/drivers/uio
Long Li df92165dd0 uio_hv_generic: Set event for all channels on the device
commit d062463edf upstream.

Hyper-V may offer a non latency sensitive device with subchannels without
monitor bit enabled. The decision is entirely on the Hyper-V host not
configurable within guest.

When a device has subchannels, also signal events for the subchannel
if its monitor bit is disabled.

This patch also removes the memory barrier when monitor bit is enabled
as it is not necessary. The memory barrier is only needed between
setting up interrupt mask and calling vmbus_set_event() when monitor
bit is disabled.

Signed-off-by: Long Li <longli@microsoft.com>
Reviewed-by: Michael Kelley <mhklinux@outlook.com>
Reviewed-by: Saurabh Sengar <ssengar@linux.microsoft.com>
Link: https://lore.kernel.org/r/1741644721-20389-1-git-send-email-longli@linuxonhyperv.com
Fixes: 37bd91f227 ("uio_hv_generic: Let userspace take care of interrupt mask")
Cc: <stable@vger.kernel.org> # 6.12.x
Signed-off-by: Naman Jain <namjain@linux.microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2025-11-24 10:36:07 +01:00
..
Kconfig uio: pruss: Remove this driver 2024-04-11 14:39:56 +02:00
Makefile uio: pruss: Remove this driver 2024-04-11 14:39:56 +02:00
uio.c uio: Constify struct kobj_type 2024-09-11 16:02:54 +02:00
uio_aec.c uio: add missing MODULE_DESCRIPTION() macros 2024-06-04 17:39:12 +02:00
uio_cif.c uio: add missing MODULE_DESCRIPTION() macros 2024-06-04 17:39:12 +02:00
uio_dfl.c uio: dfl: add vendor-specific feature id 2023-05-31 19:00:37 +01:00
uio_dmem_genirq.c Fix build errors due to new UIO_MEM_DMA_COHERENT mess 2024-03-27 09:48:47 -07:00
uio_fsl_elbc_gpcm.c uio: fsl_elbc_gpcm: Convert to platform remove callback returning void 2024-04-11 14:38:59 +02:00
uio_hv_generic.c uio_hv_generic: Set event for all channels on the device 2025-11-24 10:36:07 +01:00
uio_mf624.c uio: add missing MODULE_DESCRIPTION() macros 2024-06-04 17:39:12 +02:00
uio_netx.c uio: add missing MODULE_DESCRIPTION() macros 2024-06-04 17:39:12 +02:00
uio_pci_generic.c Merge 50f09a3dd5 ("Merge tag 'char-misc-5.13-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc") into char-misc-next 2021-05-21 09:48:31 +02:00
uio_pdrv_genirq.c uio_pdrv_genirq: convert to use device_property APIs 2024-04-11 14:40:29 +02:00
uio_sercos3.c uio: uio_sercos3: use device-managed functions for simple allocs 2020-12-09 19:58:54 +01:00