This work is inspired by the report on linux-nvme mailing list.
disk-activity trigger not working for nvme disk:
http://lists.infradead.org/pipermail/linux-nvme/2019-July/025253.html
This LED block device activity trigger works with any block devices.
* v4
- Squash patch 'add interface to stop and restart polling disk stats' into
the ledtrig-blk introduction patch
- Rename 'led' to 'led_trig' in struct ledtrig_blk
* v3
- Avoid the name collision with LED_OFF and LED_ON
- Add ABI documentation
- Add more detail to Kconfig help text
* v2
- Remove "move declaration of led_stop_software_blink() to linux/leds.h" patch
- Move the trigger implementation to drivers/leds/trigger
- s/blk_ledtrig/ledtrig_blk/
- Add CONFIG_LEDS_TRIGGER_BLOCK
- Fix wrong bitops usages
- Add interface to stop and restart polling disk stats
- Stop polling disk stats for scsi disk during runtime suspend
Akinobu Mita (5):
block: umem: rename LED_* macros to MEMCTRL_LED_*
scsi: mvsas: rename LED_* enums to SGPIO_LED_*
scsi: nsp32: rename LED_* macros to EXT_PORT_LED_*
block: introduce LED block device activity trigger
scsi: sd: stop polling disk stats by ledtrig-blk during runtime
suspend
.../ABI/testing/sysfs-class-led-trigger-blk | 37 +++
block/genhd.c | 2 +
drivers/block/umem.c | 20 +-
drivers/block/umem.h | 20 +-
drivers/leds/trigger/Kconfig | 9 +
drivers/leds/trigger/Makefile | 1 +
drivers/leds/trigger/ledtrig-blk.c | 259 +++++++++++++++++++++
drivers/scsi/mvsas/mv_94xx.c | 2 +-
drivers/scsi/mvsas/mv_94xx.h | 24 +-
drivers/scsi/nsp32.c | 7 +-
drivers/scsi/nsp32.h | 4 +-
drivers/scsi/sd.c | 40 ++--
include/linux/genhd.h | 3 +
include/linux/leds.h | 38 +++
14 files changed, 411 insertions(+), 55 deletions(-)
create mode 100644 Documentation/ABI/testing/sysfs-class-led-trigger-blk
create mode 100644 drivers/leds/trigger/ledtrig-blk.c
Cc: Frank Steiner <[email protected]>
Cc: Jacek Anaszewski <[email protected]>
Cc: Pavel Machek <[email protected]>
Cc: Dan Murphy <[email protected]>
Cc: Jens Axboe <[email protected]>
Cc: "James E.J. Bottomley" <[email protected]>
Cc: "Martin K. Petersen" <[email protected]>
Cc: GOTO Masanori <[email protected]>
Cc: YOKOTA Hiroshi <[email protected]>
Cc: Hannes Reinecke <[email protected]>
--
2.7.4