From mboxrd@z Thu Jan 1 00:00:00 1970 From: Pavel Tatashin Subject: Re: [PATCH v3 0/1] multi-threading device shutdown Date: Mon, 14 May 2018 12:54:37 -0400 Message-ID: References: <20180507155402.10086-1-pasha.tatashin@oracle.com> <20180514150336.GA18769@kroah.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Cc: steven.sistare@oracle.com, daniel.m.jordan@oracle.com, linux-kernel@vger.kernel.org, jeffrey.t.kirsher@intel.com, intel-wired-lan@lists.osuosl.org, netdev@vger.kernel.org, alexander.duyck@gmail.com, tobin@apporbit.com To: Greg KH Return-path: In-Reply-To: <20180514150336.GA18769@kroah.com> Content-Language: en-US Sender: linux-kernel-owner@vger.kernel.org List-Id: netdev.vger.kernel.org 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 >