[PATCH v3] NVMe: Add controller state for scheduling resets
Guilherme G. Piccoli
gpiccoli at linux.vnet.ibm.com
Tue May 31 16:23:36 PDT 2016
On 05/31/2016 08:05 PM, Keith Busch wrote:
> On Tue, May 31, 2016 at 07:24:48PM -0300, Guilherme G. Piccoli wrote:
>> But imagine a scenario I have multiple nvme devices and want to upgrade the
>> firmware for only one. In this case, the procedure is to reset_controller
>> only the specific device after the fw activation.
>> modprobe the driver in this case it too much.
>
> I agree module reload would be heavy handed in your scenario, but just
> trying to establish what conditions you really need the quirk to work.
Only in reset_controller after a firmware activation. The quirk
implementation was delaying all reset_controller calls though.
>> Now, the quirk needs 2 sec delay, not so big, but not so small value either.
>> Would be _desirable_ to have such distinguishing, although we can live
>> without it I guess.
>
> The module is typically only loaded once on boot. The driver probes all
> controllers in a background task, so it shouldn't be blocking anything
> that doesn't need to run IO to the drive. Is the added 2 seconds there
> really harming the experience?
Heheh, not that harmful.
>> But since you just sent the patch unifying the resets, I thought worth
>> asking you if it's possible to include some kind of differentiation, or if
>> such feature already exists (and I wasn't able to find heheh)
>
> You can know if the controller was initialized once before if it has an
> allocated admin tag set.
Thanks very much for the good hint, I might use this or leave the delay
in every reset, since 2 sec is not that much.
Thanks for the the quick responses,
Guilherme
More information about the Linux-nvme
mailing list