Re: [PATCH v3 0/1] multi-threading device shutdown

From: Pavel Tatashin
Date: Mon May 14 2018 - 12:54:54 EST


On 05/14/2018 11:03 AM, Greg KH wrote:
> On Mon, May 07, 2018 at 11:54:01AM -0400, Pavel Tatashin wrote:
>> Changelog
>> v2 - v3
>> - Fixed warning from kbuild test.
>> - Moved device_lock/device_unlock inside device_shutdown_tree().
>>
>> v1 - v2
>> - It turns out we cannot lock more than MAX_LOCK_DEPTH by a single
>> thread. (By default this value is 48), and is used to detect
>> deadlocks. So, I re-wrote the code to only lock one devices per
>> thread instead of pre-locking all devices by the main thread.
>> - Addressed comments from Tobin C. Harding.
>> - As suggested by Alexander Duyck removed ixgbe changes. It can be
>> done as a separate work scaling RTNL mutex.
>>
>> Do a faster shutdown by calling dev->*->shutdown(dev) in parallel.
>> device_shutdown() calls these functions for every single device but
>> only using one thread.
>>
>> Since, nothing else is running on the machine by the device_shutdown()
>> s called, there is no reason not to utilize all the available CPU
>> resources.
>
> Ah, we can hope so. I bet this is going to break something, so can we
> have some way of turning it on/off dynamically for when it does?

Hi Greg,

Sure, I will add a kernel parameter to optionally disable this feature in the next patch revision.

Thank you,
Pavel

>
> thanks,
>
> greg k-h
>