Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1759418AbdLRPcE (ORCPT ); Mon, 18 Dec 2017 10:32:04 -0500 Received: from mout.gmx.net ([212.227.15.18]:51875 "EHLO mout.gmx.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758627AbdLRPcA (ORCPT ); Mon, 18 Dec 2017 10:32:00 -0500 Message-ID: <1513611112.7113.1.camel@gmx.de> Subject: Re: NFS: 82ms wakeup latency 4.14-rc4 From: Mike Galbraith To: lkml Cc: "J. Bruce Fields" , Jeff Layton , linux-nfs@vger.kernel.org Date: Mon, 18 Dec 2017 16:31:52 +0100 In-Reply-To: <1513610231.7998.13.camel@gmx.de> References: <1513610231.7998.13.camel@gmx.de> Content-Type: text/plain; charset="ISO-8859-15" X-Mailer: Evolution 3.20.5 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K0:Mmcsh+t0rl/mbZvqN3KTESUEK1MisYBqLRFuK6QhAx8TblIeXkg pujnxcHUAEPnOVCAnK18UR9pga8NkL3qPbyCHuBdjbssNWmvcJf9BvZNRc8jFoBCC2qXVua AyCjbefhKCPS2nr/wOYZaRLDyuZmsBPNfsd/wIFE4t27fuj8aBQ+0kBMMYDP6aITceMkbYn 5eUjcL4JbQrq1da/h3gHQ== X-UI-Out-Filterresults: notjunk:1;V01:K0:ZfGPZhARylI=:LzfmYhnP3aMo0XXViHFFy9 7FK/LGfLuYQ2HPm9B/7hMdRdCCfU1KXgWRQP/a7YThWGhetCmIJFSa9byMxu8pZKSk66Jawwe v6Dn8LWmFci3s/ifnPZ5MO2c8mFo4dZphIvsCPvn4CH+AFwWWWuEf1054EdInsLaLx7/igJeW v2AVFMt0zpISMKBDMLvS7/d5cPXHpUq72x8h5B4Jdd057QeeQAqXV98nLqF751Kx4RVQOfKep cH06hS+wG/k2pWFspfVMnl0Ecb9JQNTW09sXHJF9l9xyPKc3wsSXFNsDbCe6ssd63KxbylJcJ VCP6wGIHLCLX7pUG2sPungTM0fnRG95259icYzgiL/ZwEpD0PfhyHxvQCDsmPKbo+dseXvd3x py0g8uhPeql6Jr/QwgUYCBwfOsjpE94ejcNTWZ2oHt1RxDESK9aT1veIT9iiOIFhlfmh1rG4m DYWs2pwfh/yr0vdko/ndt/Xo6YRWAUVICC22T5h9sWOK2xv4itQ9wPezdTZ4HOZPaFbARCosP tDblbTiyO5hILy9jPDScNazsqnBP8xH4ul0eYmJtN/6gV+t4Eo1FZfZRduke0fxsC6UUw/ZUl 9nMVbWG+apZj3nxfshT4IJwK5KAEO4ZL3im7ge1SNDR+o1p+hX+/3n1Q1nD8Rj4fkpk3bZmFQ RAq8OJd74RE+fhe86dqJVjpJnBn5FOD67nrfYMSrc5rozkFv2eYQ8qehuHKdKzyoNSGS1B+zK WlUJa00zZWKptS3JuMqfcTQ1ks1Ul4I9y0V9NZ+I+imRoP8Oyi4Fjq7CJIJjzY71LCZGKtuks FmVDHUyfihnRON/HHPSyHQewn6XA2xgIRDAYtqoUc4A+LsU34A= Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2454 Lines: 42 On Mon, 2017-12-18 at 16:17 +0100, Mike Galbraith wrote: > > .... > kworker/-7421 0.N.. 82893us : nfs_release_request <-nfs_commit_release_pages > kworker/-7421 0.N.. 82893us : nfs_unlock_and_release_request <-nfs_commit_release_pages > kworker/-7421 0.N.. 82893us : nfs_unlock_request <-nfs_unlock_and_release_request > kworker/-7421 0.N.. 82893us : nfs_page_group_destroy <-nfs_commit_release_pages > kworker/-7421 0.N.. 82893us : nfs_page_group_sync_on_bit <-nfs_page_group_destroy > kworker/-7421 0.N.. 82893us : nfs_page_group_lock <-nfs_page_group_sync_on_bit > kworker/-7421 0.N.. 82893us : nfs_page_group_unlock <-nfs_page_group_sync_on_bit > kworker/-7421 0.N.. 82893us : nfs_free_request <-nfs_page_group_destroy > kworker/-7421 0.N.. 82893us : nfs_put_lock_context <-nfs_free_request > kworker/-7421 0.N.. 82893us : put_nfs_open_context <-nfs_free_request > kworker/-7421 0.N.. 82893us : __put_nfs_open_context <-nfs_free_request > kworker/-7421 0.N.. 82894us : kmem_cache_free <-nfs_page_group_destroy > kworker/-7421 0.N.. 82894us : __slab_free <-kmem_cache_free > kworker/-7421 0.N.. 82894us : clear_wb_congested <-nfs_commit_release_pages > kworker/-7421 0.N.. 82894us : nfs_init_cinfo <-nfs_commit_release_pages > kworker/-7421 0.N.. 82894us : nfs_init_cinfo_from_inode <-nfs_commit_release_pages > kworker/-7421 0.N.. 82894us : nfs_commit_end <-nfs_commit_release_pages > kworker/-7421 0.N.. 82894us : nfs_commitdata_release <-rpc_free_task > kworker/-7421 0.N.. 82894us : put_nfs_open_context <-nfs_commitdata_release > kworker/-7421 0.N.. 82894us : __put_nfs_open_context <-nfs_commitdata_release > kworker/-7421 0.N.. 82895us : mempool_free <-rpc_free_task > kworker/-7421 0.N.. 82895us : mempool_free_slab <-rpc_free_task > kworker/-7421 0.N.. 82895us : kmem_cache_free <-rpc_free_task > kworker/-7421 0.N.. 82895us : ___might_sleep <-process_one_work > kworker/-7421 0.N.. 82895us : _cond_resched <-process_one_work > kworker/-7421 0dN.1 82895us : rcu_note_context_switch <-__schedule diff --git a/fs/nfs/pagelist.c b/fs/nfs/pagelist.c index d0543e19098a..b42bf3b21e05 100644 --- a/fs/nfs/pagelist.c +++ b/fs/nfs/pagelist.c @@ -428,6 +428,7 @@ void nfs_free_request(struct nfs_page *req) /* Release struct file and open context */ nfs_clear_request(req); nfs_page_free(req); + cond_resched(); } void nfs_release_request(struct nfs_page *req)