Re: [PATCH v3 5/9] block, scsi: Rework runtime power management

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 2018-08-03 at 07:50 +-0800, Ming Lei wrote:
+AD4- I am not sure if using PREEMPT+AF8-ONLY can work well for runtime PM, there
+AD4- are lots of users which depends on blk+AF8-freeze+AF8-queue() for making sure
+AD4- there isn't any in-flight requests.

Please elaborate +ACI-lots of other users+ACI-. The only use I have found in the
kernel tree of that flag of which I think that it is not related to power
management is in ide+AF8-prep+AF8-sense(). All other uses of the RQF+AF8-PREEMPT /
BLK+AF8-MQ+AF8-REQ+AF8-PREEMPT / QUEUE+AF8-FLAG+AF8-PREEMPT+AF8-ONLY flags I found are IMHO related
to power management:
+ACo- generic+AF8-ide+AF8-resume()
+ACo- +AF8AXw-scsi+AF8-execute()
+ACo- scsi+AF8-device+AF8-quiesce() / scsi+AF8-device+AF8-resume()

However, we may have to modify +AF8AXw-scsi+AF8-execute() such that only requests
that are related to power management are submitted with the
BLK+AF8-MQ+AF8-REQ+AF8-PREEMPT flag set. I don't think that all +AF8AXw-scsi+AF8-execute() callers
need that flag.

+AD4- But now PREEMPT+AF8-ONLY opens one door for preempt-req during the big
+AD4- window, so this way may break current uses of blk+AF8-freeze+AF8-queue().

The power management core serializes runtime power management against suspend,
resume and hibernation so I think it is safe to use the PREEMPT+AF8-ONLY flag for
runtime power management although it is already used for suspend, resume and
hibernation.

Bart.





[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux