1
0
Fork 0
mirror of synced 2025-03-06 20:59:54 +01:00
linux/drivers
Damien Le Moal ffa3556763 nvmet: pci-epf: Do not uselessly write the CSTS register
The function nvmet_pci_epf_poll_cc_work() will do nothing if there are
no changes to the controller configuration (CC) register. However, even
for such case, this function still calls nvmet_update_cc() and uselessly
writes the CSTS register. Avoid this by simply rescheduling the poll_cc
work if the CC register has not changed.

Also reschedule the poll_cc work if the function
nvmet_pci_epf_enable_ctrl() fails to allow the host the chance to try
again enabling the controller.

While at it, since there is no point in trying to handle the CC register
as quickly as possible, change the poll_cc work scheduling interval to
10 ms (from 5ms), to avoid excessive read accesses to that register.

Fixes: 0faa0fe6f9 ("nvmet: New NVMe PCI endpoint function target driver")
Signed-off-by: Damien Le Moal <dlemoal@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Keith Busch <kbusch@kernel.org>
2025-02-18 07:25:15 -08:00
..
accel Linux 6.13-rc6 2025-01-10 14:24:17 +10:00
accessibility speakup: use SPKDIR=$(src) to specify the source directory 2024-11-04 17:53:09 +09:00
acpi Thermal control updates for 6.14-rc1 2025-01-22 11:37:33 -08:00
amba ARM: 9415/1: amba: Add dev_is_amba() function and export it for modules 2024-11-12 16:41:45 +00:00
android binder: initialize lsm_context structure 2024-12-15 23:18:04 -05:00
ata block: simplify tag allocation policy selection 2025-01-06 07:37:41 -07:00
atm Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
auxdisplay Merge tag 'drm-misc-fixes-2024-12-19' of https://gitlab.freedesktop.org/drm/misc/kernel into drm-fixes 2024-12-20 07:13:45 +10:00
base ACPI updates for 6.14-rc1 2025-01-22 11:28:39 -08:00
bcma Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
block drivers/block/sunvdc.c: update the correct AIP call 2025-02-02 19:56:04 -07:00
bluetooth Bluetooth: qca: Fix poor RF performance for WCN6855 2025-01-15 10:37:23 -05:00
bus bus: mhi: host: pci_generic: fix MHI BAR mapping 2024-12-02 15:14:33 +05:30
cache
cdrom for-6.14/block-20250118 2025-01-20 19:38:46 -08:00
cdx module: Convert default symbol namespace to string literal 2024-12-03 08:22:25 -08:00
char ipmi: Minor fixes and update my email address 2025-01-22 10:57:57 -08:00
clk A pretty quiet cycle this time around. We have a bunch of new Qualcomm clk 2025-01-22 10:54:18 -08:00
clocksource x86/hyperv: Fix hv tsc page based sched_clock for hibernation 2024-12-09 18:42:42 +00:00
comedi comedi: Flush partial mappings in error case 2024-11-05 14:01:07 +01:00
connector
counter module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
cpufreq Power management updates for 6.14-rc1 2025-01-22 11:16:14 -08:00
cpuidle cpuidle: teo: Update documentation after previous changes 2025-01-13 20:46:27 +01:00
crypto kernel-6.14-rc1.cred 2025-01-20 10:13:06 -08:00
cxl cxl/region: Fix region creation for greater than x2 switches 2024-12-10 14:50:34 -07:00
dax module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
dca
devfreq Update devfreq next for v6.14 2025-01-13 20:48:34 +01:00
dio
dma - Remove the less generic CPU matching infra around struct x86_cpu_desc and 2025-01-21 09:30:59 -08:00
dma-buf Merge tag 'drm-misc-fixes-2024-12-19' of https://gitlab.freedesktop.org/drm/misc/kernel into drm-fixes 2024-12-20 07:13:45 +10:00
dpll dpll: add clock quality level attribute and op 2024-11-03 08:39:07 -08:00
edac - The first part of a restructuring of AMD's representation of a northbridge 2025-01-21 09:38:52 -08:00
eisa
extcon Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
firewire firewire updates for v6.13 2024-11-25 17:12:54 -08:00
firmware chrome-platform-firmware: Updates for v6.14 2025-01-21 19:51:28 -08:00
fpga module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
fsi Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
gnss
gpio gpio updates for v6.14-rc1 2025-01-22 08:47:54 -08:00
gpu Rust changes for v6.14 2025-01-21 17:48:03 -08:00
greybus greybus: Fix a typo 2024-11-05 05:33:46 +01:00
hid hid-for-linus-2025012001 2025-01-22 11:56:39 -08:00
hsi Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
hte Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
hv Drivers: hv: util: Avoid accessing a ringbuffer not initialized yet 2024-12-09 18:44:15 +00:00
hwmon hwmon updates for v6.14-rc1 2025-01-22 10:16:48 -08:00
hwspinlock Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
hwtracing Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
i2c i2c-for-6.14-rc1 2025-01-22 10:47:46 -08:00
i3c Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
idle Power management updates for 6.14-rc1 2025-01-22 11:16:14 -08:00
iio IIO: 1st set of fixes for 6.13 cycle. 2024-12-16 16:29:55 +01:00
infiniband Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2025-01-03 16:29:29 -08:00
input Input updates for v6.14-rc0 2025-01-22 12:12:42 -08:00
interconnect interconnect: icc-clk: check return values of devm_kasprintf() 2024-12-17 14:03:34 +02:00
iommu Updates for the interrupt subsystem: 2025-01-21 13:51:07 -08:00
ipack
irqchip Updates for the interrupt subsystem: 2025-01-21 13:51:07 -08:00
isdn isdn: Remove unused get_Bprotocol4id() 2024-12-11 20:12:27 -08:00
leds - Allow struct bin_attribute instances to be placed in read-only memory for enhanced protection. 2025-01-22 09:19:36 -08:00
macintosh powerpc updates for 6.14 2025-01-20 21:40:19 -08:00
mailbox TTY / Serial driver updates for 6.13-rc1 2024-11-30 09:03:16 -08:00
mcb module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
md md: Fix linear_set_limits() 2025-01-31 10:18:50 -08:00
media ACPI updates for 6.14-rc1 2025-01-22 11:28:39 -08:00
memory Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
memstick block: remove BLK_MQ_F_SHOULD_MERGE 2024-12-23 08:17:23 -07:00
message scsi: message: fusion: Constify struct pci_device_id 2024-11-20 21:38:24 -05:00
mfd - Fix race in device_node_get_regmap() using more extensive locking. 2025-01-22 09:16:02 -08:00
misc powerpc updates for 6.14 2025-01-20 21:40:19 -08:00
mmc MMC core: 2025-01-22 10:39:17 -08:00
most
mtd block: force noio scope in blk_mq_freeze_queue 2025-01-31 07:20:08 -07:00
mux
net Networking changes for 6.14. 2025-01-22 08:28:57 -08:00
nfc nfc: mrvl: Don't use "proxy" headers 2025-01-18 17:10:05 -08:00
ntb ntb: idt: Replace deprecated PCI functions 2024-10-30 16:07:38 -05:00
nubus
nvdimm module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
nvme nvmet: pci-epf: Do not uselessly write the CSTS register 2025-02-18 07:25:15 -08:00
nvmem Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
of Devicetree fixes for 6.13, part 2: 2025-01-17 15:01:24 -08:00
opp PM / OPP: Add reference counting helpers for Rust implementation 2025-01-20 09:05:51 +05:30
parisc Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
parport Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
pci A pretty quiet cycle this time around. We have a bunch of new Qualcomm clk 2025-01-22 10:54:18 -08:00
pcmcia Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
peci module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
perf arm64 updates for 6.14 2025-01-20 21:21:49 -08:00
phy phy: mediatek: phy-mtk-hdmi: add regulator dependency 2024-12-24 20:38:53 +05:30
pinctrl Pin control fixes for the v6.13 series: 2025-01-03 10:57:57 -08:00
platform - Allow struct bin_attribute instances to be placed in read-only memory for enhanced protection. 2025-01-22 09:19:36 -08:00
pmdomain pmdomain: imx8mp-blk-ctrl: add missing loop break condition 2025-01-16 16:10:32 +01:00
pnp
power pwrseq updates for v6.14-rc1 2025-01-22 08:52:26 -08:00
powercap powercap: intel_rapl: Add support for Panther Lake platform 2024-12-10 20:01:38 +01:00
pps Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
ps3 ps3: Correct some typos in comments 2024-11-15 00:32:29 +11:00
ptp Networking changes for 6.14. 2025-01-22 08:28:57 -08:00
pwm pwm: Changes for v6.14-rc1 2025-01-22 10:43:09 -08:00
rapidio
ras x86/amd_nb: Move SMN access code to a new amd_node driver 2025-01-08 10:59:44 +01:00
regulator regulator: Updates for v6.14 2025-01-22 09:03:41 -08:00
remoteproc remoteproc: qcom: wcss: Remove double assignment in q6v5_wcss_probe() 2024-11-15 20:36:27 -08:00
reset Reset controller fixes for v6.13 2025-01-15 14:58:22 +01:00
rpmsg Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
rtc module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
s390 s390 updates for 6.14 merge window 2025-01-20 21:14:49 -08:00
sbus Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
scsi block: force noio scope in blk_mq_freeze_queue 2025-01-31 07:20:08 -07:00
sh sh updates for v6.13 2024-11-30 14:45:29 -08:00
siox
slimbus Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
soc A pretty quiet cycle this time around. We have a bunch of new Qualcomm clk 2025-01-22 10:54:18 -08:00
soundwire module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
spi spi: Updates for v6.14 2025-01-22 09:08:18 -08:00
spmi Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
ssb
staging Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2025-01-16 10:34:59 -08:00
target block: remove bio_add_pc_page 2025-01-04 15:27:35 -07:00
tc TC: Fix the wrong format specifier 2024-11-12 15:48:08 +01:00
tee Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
thermal Merge branch 'thermal-intel' 2025-01-20 13:10:15 +01:00
thunderbolt thunderbolt: Improve redrive mode handling 2024-12-16 09:59:38 +02:00
tty serial: stm32: use port lock wrappers for break control 2024-12-23 19:01:54 +01:00
ufs block: force noio scope in blk_mq_freeze_queue 2025-01-31 07:20:08 -07:00
uio Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
usb ACPI updates for 6.14-rc1 2025-01-22 11:28:39 -08:00
vdpa Networking changes for 6.14. 2025-01-22 08:28:57 -08:00
vfio vfio/pci: Fallback huge faults for unaligned pfn 2025-01-03 08:49:05 -07:00
vhost mm: page_frag: avoid caller accessing 'page_frag_cache' directly 2024-11-11 10:56:27 -08:00
video Merge tag 'drm-misc-fixes-2024-12-19' of https://gitlab.freedesktop.org/drm/misc/kernel into drm-fixes 2024-12-20 07:13:45 +10:00
virt - A segmented Reverse Map table (RMP) is a across-nodes distributed 2025-01-21 09:00:31 -08:00
virtio virtio: hookup irq_get_affinity callback 2024-12-23 08:17:23 -07:00
w1 Get rid of 'remove_new' relic from platform driver struct 2024-12-01 15:12:43 -08:00
watchdog Kthreads affinity follow either of 4 existing different patterns: 2025-01-21 17:10:05 -08:00
xen Updates for the interrupt subsystem: 2025-01-21 13:51:07 -08:00
zorro zorro: Constify 'struct bin_attribute' 2025-01-08 18:04:36 +01:00
Kconfig
Makefile