From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1760791AbdKQS3P (ORCPT ); Fri, 17 Nov 2017 13:29:15 -0500 Received: from mail-ve1eur01on0129.outbound.protection.outlook.com ([104.47.1.129]:2529 "EHLO EUR01-VE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S966221AbdKQS2m (ORCPT ); Fri, 17 Nov 2017 13:28:42 -0500 Subject: [PATCH RFC 08/25] net: Move proc_net_ns_ops to pernet_sys list From: Kirill Tkhai To: davem@davemloft.net, vyasevic@redhat.com, kstewart@linuxfoundation.org, pombredanne@nexb.com, vyasevich@gmail.com, mark.rutland@arm.com, gregkh@linuxfoundation.org, adobriyan@gmail.com, fw@strlen.de, nicolas.dichtel@6wind.com, xiyou.wangcong@gmail.com, roman.kapl@sysgo.com, paul@paul-moore.com, dsahern@gmail.com, daniel@iogearbox.net, lucien.xin@gmail.com, mschiffer@universe-factory.net, rshearma@brocade.com, linux-kernel@vger.kernel.org, netdev@vger.kernel.org, ktkhai@virtuozzo.com, ebiederm@xmission.com, avagin@virtuozzo.com, gorcunov@virtuozzo.com, eric.dumazet@gmail.com, stephen@networkplumber.org, ktkhai@virtuozzo.com Date: Fri, 17 Nov 2017 21:28:31 +0300 Message-ID: <151094331141.20009.618108555770576501.stgit@localhost.localdomain> In-Reply-To: <151094119999.20009.6955267140148739392.stgit@localhost.localdomain> References: <151094119999.20009.6955267140148739392.stgit@localhost.localdomain> User-Agent: StGit/0.18 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-Originating-IP: [195.214.232.6] X-ClientProxiedBy: HE1PR0301CA0023.eurprd03.prod.outlook.com (2603:10a6:3:76::33) To DB6PR0801MB1334.eurprd08.prod.outlook.com (2603:10a6:4:a::28) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 4ea78001-b9dd-4b8d-f74c-08d52de904b8 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(4534020)(4602075)(7168020)(4627115)(201703031133081)(201702281549075)(2017052603258);SRVR:DB6PR0801MB1334; X-Microsoft-Exchange-Diagnostics: 1;DB6PR0801MB1334;3:Vp+X5C4zloOyyhXO5BOD23gVI0zy59nrQAyzDJMPOI1RskHcud6qJtY0OLq8/E3aTggXUTde+SBr/fP27AXuTZ1vcqpEpxJxs69GVUlrLUwWmyD6mhKzod7dx9U2xTjCuVt3HTINseV3ePBTHaCasSbypU5o6/8eNztUavzDGC+UlpmZrmm1WEnfdewD3zVXCuUopjiHnQ8KNfAxnhDGp7NVRKLj7M2uQnJUNaiR0grSQcj9LfJexHE0LtuNODlg;25:GAgwGnogQjGCsE/Ir/FEj2PTkIMEZuoUJ5erCbjzHAwqAYxvWVGMRBObGm4c+x+0Xg6vQdJ2PzgdhUw7LNVeggAd9p+D1XP/CGs7Eph7eiRO+Cdo7YRCScqOZ2hoKc3O73qHxz3+maiDPDR1DBNqxaffgb85M8EMuPYI2Q9f/IA/xZnG34zrIhG/zY7cZPouwwXYVFpmtyAGWjVI98AwR5/1hK+xbLledDKIoIFIcubhmNay2it5PvmSC8oYBTuGABLl6GY6JFIHYrrYKmyGqPcSO3HLjFnipYOZftUMd9jG6/JBShQ9VR7mvn6pD/qnbz2204/AueDhnz6uTsezPg==;31:pvYyLPvWIhPTk+4703RNnAoha78VJ1lO0Db4ljwFa6OVDJH5KX5XT0yO5tZI/exdZt6gEuqGwDnC85Lk07yJJ1wxoPTr7GwrIexYYIU0awP37hAnKooRHNAQBMPQb5L7joVm5EhZjyxRR/qpZipi3Z5OD1qsNwTELB1k40TguDtq4WSzVbVcAq//7uQ2D+dHS0JWxzNLwY6+YRgOX1eAcXRfSfuL5eeZsI1GEPwbHDA= X-MS-TrafficTypeDiagnostic: DB6PR0801MB1334: X-Microsoft-Exchange-Diagnostics: 1;DB6PR0801MB1334;20:yMiXcxm8Eu0OV5ynKk3C6x38tvQY/iD4oLHvPgA+gxQBPISPxD4B2pFqlkFU+Ze0+0eJqvMhh5qOFgQh3uZp1VuDgKl6ZbGS63v6daLS/33vY6v1U63UH5XQNU/VZ7uzASPMq9xcSKNNK7t2nxByUL1N90m31vXqJxiLwxN5qEb4zFEff6Em7wx/fvsFqL1rJ2l4w3f+O4y74ZkQZTHaC8X08PDI6GZTfRqD2dO6Q2KMaN44JyQnhJHUe8R7Jw6mbwHJfsdu0QQ9wN/y9oruDO9SQgzLIyzBhOpnbqYshmThE4PXcu/DZwm8icpzO0opLrGOBeSpQtnNkyDpEIH6k2CvfA87D0C1poIpABJQKKWNGO9MFOFl7ZtS28BpZaRY3Ykj2JDHAjK+nF+QydXhR6N2EYL89MflqiPl/CZ/Jk8=;4:AVLuAlssUZnq2JgpyqfBdwnB14iAnIIBPzrm4r8siEIQZNxtHKElyRym8hitV3qvZoOOZDqPU8tL36oDiyG44VHKpVwCA/HmgRrGdbf/eZXuyEZDuimBDaBiS/UkggXR86DYLGfN1E58ZgV4GFsnrjxxjese6NSkSztpqgISfbeUqivahtED58KdKANO61jRPlXe9doNgq6KjIsmvhBkpDVKXJOcxkz1MT6EKDjRDeSkTWcsPxmSh/KpyIqGqlemwG0iFsXDhspm38w2OnratQ== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(8121501046)(5005006)(3002001)(10201501046)(3231022)(100000703101)(100105400095)(93006095)(93001095)(6041248)(20161123555025)(20161123560025)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123558100)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:DB6PR0801MB1334;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:DB6PR0801MB1334; X-Forefront-PRVS: 049486C505 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(979002)(6069001)(6009001)(376002)(346002)(199003)(189002)(23676003)(39060400002)(76176999)(8676002)(50986999)(54356999)(81156014)(478600001)(83506002)(7416002)(103116003)(81166006)(5660300001)(101416001)(6506006)(7736002)(55016002)(53936002)(189998001)(9686003)(305945005)(50466002)(316002)(66066001)(47776003)(55236003)(97736004)(25786009)(2906002)(16526018)(58126008)(61506002)(2950100002)(106356001)(105586002)(6666003)(68736007)(86362001)(230700001)(8936002)(33646002)(6116002)(3846002)(921003)(1121003)(217873001)(969003)(989001)(999001)(1009001)(1019001);DIR:OUT;SFP:1102;SCL:1;SRVR:DB6PR0801MB1334;H:localhost.localdomain;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=ktkhai@virtuozzo.com; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtEQjZQUjA4MDFNQjEzMzQ7MjM6eWxzb0paRUQxU0l4UnVKaFVLR3Q0R0di?= =?utf-8?B?eWpramV3UzlQaUJITUJBbGNpcnp3R0pTKzVBME5aQzllOWtEMmZQVGZtNEQx?= =?utf-8?B?ZVJRL1BtNVRwMDVKblFvbm9mdmVxYlRHUmh1YU9pallLRWhTOU5kdXc0VW55?= =?utf-8?B?Z3FRODFRckR1ZjJUdVZpMmhoTG9aamR5aU1KaTBaaTlPOW5Cd2VNKzFCN2k4?= =?utf-8?B?K2VwbWVKUjdJWUNLR3pidjJSQWlqVG1zWGZNeWhDNVVYd3N6Rk1VQWcrR3h2?= =?utf-8?B?UHBTYlRLbk5ZRGJmekx5ZTdERTFuTThmYUVaVERITHljalppQi9BcjBTMS9O?= =?utf-8?B?Z3lUaW5LTVBDOEJZUExSVmlUd3B1U3VmL05GQU9PakZ4K2crUGRMU1FLK1Bi?= =?utf-8?B?RlZxQk5CYmk0cEpHRjdNbVMzQUlmdG5raHNhdFBoWUtxSnpOalFpZEQydlV6?= =?utf-8?B?cjVWdk9QZFFsOEg3bEVQWTA1YmRSRGhSMnVyYzNjMW4wNDBGSUZCRFBRcXMz?= =?utf-8?B?NjRad3N2K1lrbTJ2eFh5eUJLRXF2OXdRU3JwbGIzZTJlbnU2bklxeGE2R2xS?= =?utf-8?B?WmNUei8wSmQvRVNJaW1wbnMvMVJtbDVPYktaTVlkOGxhUXVKR3lPZXlhb2Rr?= =?utf-8?B?UWxMK2ZkQWVBajhhK1BVVDRhVmluY3pGeFZPQW15ekJiK0ZucUZFb0h3bDNO?= =?utf-8?B?c3dHRVBOS25LZkxGNHZVTWE3Sk53ai9RcDdaZ0x4cWRRcjAxd2UzeXVEcURE?= =?utf-8?B?QmpBdW1KazFUWDFId09TbFlQcmxvR0ZjMzcvamdiS0pzaTcrUGxkbEQ0TnNS?= =?utf-8?B?dlFhQllKWTRZWlJNZ3MzWmRHdDViMXUyWVE4ZGRON1Y4b0p5dGNSeUpsUTlo?= =?utf-8?B?WGx6bXhpd2c1Y1JBTUlOcFlaREwxSEpObHEzTWVMajhrOHN0VnArRzh5U0Zr?= =?utf-8?B?YnNFenBTcjh6K0FUbDJDeE10bFZ1cnhocnZTL2ZMcERTK0N6U29FdlQySDAr?= =?utf-8?B?dHFSK01pNm5KeFhmaXNoMVRKK3owUlRKM0FYQlpVVHk4R2JEM2ZGUTZSREZ3?= =?utf-8?B?QWcvMTNtVXhNME1sc3JOd3kzYnZ4M2VQaTZFSjN0WFFjaklxUWVyejdQTE9R?= =?utf-8?B?UmFVT2ZvUjZOdkFJM2VRNmx0Z3VjUjB1RnUxN1dobHlELzdGRHhkNXhmODFE?= =?utf-8?B?RkovYjVuLzFzdlIzUnlrYU1CYVZ3LzNZTW04MzJqMVZYY0tHQmQvaVBuQ2h2?= =?utf-8?B?MlU4S1BqNnlnUUZPYllKcUUzaUpuVGVtdjE5dmdOSWs5QXRSUEFDdG50ZTU0?= =?utf-8?B?WTNSeHhQNjNtV0JiZ1ZTcVlKU2dpTUVkYzkxSUJiTU1Xdnl1cXJTM0xkUkdq?= =?utf-8?B?a3NheHhLd1FXREcxM0RPM25XL2hGWDdYSFpJaXh6T3RQUWE3SDRHTHdqeFBv?= =?utf-8?B?WXVaQXQxMnpmWVJ6bzUxcGZpZjVuRUZwV21zZFZwYnRRVlBxTDIxS0Vsc3ls?= =?utf-8?B?aFhYT2RJVk5hZDRqMmhydEYycWxZd3JJQ2NXOXBRYTZ4SFFpKy9vdHk5TXZx?= =?utf-8?B?OWR5WFN5L21lQWc5RFpjQTJwRzFIblNOYzlIRXNtS202SmpWT2dYSlV1dk0x?= =?utf-8?B?Z1k3RDVFN1BQRGF1dTM5bzJRSXhHajZUNFpIUzUrWXRVNERHOXd0OENnMnBy?= =?utf-8?B?cGZNTmNFOVFyZHNlcjdZamZNc0xZL3N3UWRkNDUwOUVVUk5jZHNCUlgxclRF?= =?utf-8?B?SlphUHAzNXFRVU5NeHU0QVRRPT0=?= X-Microsoft-Exchange-Diagnostics: 1;DB6PR0801MB1334;6:ok4c2EptpYLccE2ToaNnyFFEorKRdnfepvADUTAIuICfwR77zggpNQeCPnRirGDzlc6+uED3FZO3qydO5ualbe1j2nom9qtZuKKJ7XrN0ZDxzKdoWQyAMnQOpewXLAUUs61y5nsiVMcUaSsdb7jUi+EaXzqos62b0ru7sXWuhFWW1Abf+6qyeeUqopLZO+rVmlwi69e33Ar1vtllNlp0y/6hr8gC/OF8oV0K+17HBzTbcn2Pl+Uypgh/M/oE+ZZEbdV0gIY5B5YNvvMmUApkfO3nsAvZtAz8w7EAz1F0d8jxeyoZlU+u04n2hOE+7DNqMetXGBEHUivoi7yK4VMPYtTUG7H9ByHJRmfuJkbwwRk=;5:qCZQPmmQooTWrUPs+3hamBOP3Cm2TzOZoilIJYqI+H2miRthdZqlCUUlFWz1WRqD13ocXa/KGg3J9OfzAOxXj7/zQ8uRBRdEisI7do6slzStnHLrG5xBt5Er1t+XyMqV2Hj89dHzNEjW8cGZEyFHzyBo1vydwwGBuaELkc7MCCE=;24:ZgPT1CQlImqT5C67zMjd5vkgAncY6PszWigADe9kZVz1g2kIeMM/wv/OaJzAu2HjTtOyRH6FkPgKtPP9awvqZK7wTMb2FBww1FU3qrLjnGo=;7:tUodYWW6EQp/Bh/9mmQmm8dMlarj7cZA90pajHhcS2wfTr0bovpYAzK9SrIVN019KhrycGqHpNmkQ9V/wnkLNASx/UzrtUp0of6gt/Ry1iaaArzay0duLac6XaAPWg7qJJ3EYEu4bEFEM0Z6K1WVXQhVwHeEgVhrLusym1lwFzRbm/O6uBSxAnVmUmVv4lHL8uZMTy1uQAeBw043pCOdMgjmzlZOvApq2KuQHjnE7NxZHlEPU+2bl5bYb4GB8UhR SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;DB6PR0801MB1334;20:EYjF+06TRKPugJjuzmhr7mKcSL1AEYj0i0Ca4pJrHL89ax1tmDCKSqcbEOlY76uBZSuWA/6iA8oslnsaHLO3WnYof+OCvQ+EqYO/1sRCk/IL70FalrR01cRTH3+MPM8gPLd9ekmUtM/li6Y8fFr6r2r/SvCWrSp+7QIHNw2ai3Y= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Nov 2017 18:28:34.7652 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4ea78001-b9dd-4b8d-f74c-08d52de904b8 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0801MB1334 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patch starts to convert pernet_subsys, registered from before initcalls. Since proc_net_ns_ops is registered pernet_subsys, made from: start_kernel()->proc_root_init()->proc_net_init(), and there is no a pernet_subsys, which is registered earlier, we start from it. proc_net_ns_ops::proc_net_ns_init()/proc_net_ns_exit() register pernet net->proc_net and ->proc_net_stat, and constructors and destructors of another pernet_operations are not interested in foreign net's proc_net and proc_net_stat. Proc filesystem privitives are synchronized on proc_subdir_lock. So, it's safe to move proc_net_ns_ops to pernet_sys list and execute its methods in parallel with another pernet operations. Signed-off-by: Kirill Tkhai --- fs/proc/proc_net.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/proc/proc_net.c b/fs/proc/proc_net.c index a2bf369c923d..5eb52765eeab 100644 --- a/fs/proc/proc_net.c +++ b/fs/proc/proc_net.c @@ -243,5 +243,5 @@ int __init proc_net_init(void) { proc_symlink("net", NULL, "self/net"); - return register_pernet_subsys(&proc_net_ns_ops); + return register_pernet_sys(&proc_net_ns_ops); }