From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.linuxfoundation.org ([140.211.169.12]:56706 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754882AbdIRPwR (ORCPT ); Mon, 18 Sep 2017 11:52:17 -0400 Date: Mon, 18 Sep 2017 17:52:27 +0200 From: Greg KH To: Jan Hudoba Cc: stable@vger.kernel.org Subject: Re: kernel stable 4.9 - NFSv4 callback processes fills process table Message-ID: <20170918155227.GA19150@kroah.com> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Sender: stable-owner@vger.kernel.org List-ID: On Mon, Sep 18, 2017 at 05:27:00PM +0200, Jan Hudoba wrote: > hello, > when using nfs with automount (umount every N secs), every mount creates > "NFSv4 callback" process. after while these fills process table. > > https://lists.debian.org/debian-kernel/2017/05/msg00193.html > > https://bugzilla.redhat.com/show_bug.cgi?id=1427493 > > i have same problems. listed commits solved them. > thanks for including patches. > > "Aurelien Jarno:" > > It seems the issues is fixed since 4.12-rc1 by the following set of > commts: > > > > | commit ed6473ddc704a2005b9900ca08e236ebb2d8540a > | Author: Trond Myklebust > | Date: Wed Apr 26 11:55:27 2017 -0400 > | > | NFSv4: Fix callback server shutdown > | > | We want to use kthread_stop() in order to ensure the threads are > | shut down before we tear down the nfs_callback_info in > nfs_callback_down. > | > | Tested-and-reviewed-by: Kinglong Mee > | Reported-by: Kinglong Mee > | Fixes: bb6aeba736ba9 ("NFSv4.x: Switch to using > svc_set_num_threads()...") > | Signed-off-by: Trond Myklebust > | Signed-off-by: J. Bruce Fields > | > | commit 9e0d87680d689f1758185851c3da6eafb16e71e1 > | Author: Trond Myklebust > | Date: Wed Apr 26 11:55:26 2017 -0400 > | > | SUNRPC: Refactor svc_set_num_threads() > | > | Refactor to separate out the functions of starting and stopping > threads > | so that they can be used in other helpers. > | > | Signed-off-by: Trond Myklebust > | Tested-and-reviewed-by: Kinglong Mee > | Signed-off-by: J. Bruce Fields > | > | commit df807fffaabde625fa9adb82e3e5b88cdaa5709a > | Author: Kinglong Mee > | Date: Thu Apr 27 11:13:38 2017 +0800 > | > | NFSv4.x/callback: Create the callback service through > svc_create_pooled > | > | As the comments for svc_set_num_threads() said, > | " Destroying threads relies on the service threads filling in > | rqstp->rq_task, which only the nfs ones do. Assumes the serv > | has been created using svc_create_pooled()." > | > | If creating service through svc_create(), the svc_pool_map_put() > | will be called in svc_destroy(), but the pool map isn't used. > | So that, the reference of pool map will be drop, the next using > | of pool map will get a zero npools. Care to cc: the authors/maintainers of these patches to see if they agree it should be backported? thanks, greg k-h