From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751206AbdANOO7 (ORCPT ); Sat, 14 Jan 2017 09:14:59 -0500 Received: from mail-eopbgr20117.outbound.protection.outlook.com ([40.107.2.117]:45367 "EHLO EUR02-VE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750782AbdANOO4 (ORCPT ); Sat, 14 Jan 2017 09:14:56 -0500 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=ktkhai@virtuozzo.com; Subject: [PATCH 1/2] ns: Allow ns_entries to have custom symlink content From: Kirill Tkhai To: , , , , , , Date: Sat, 14 Jan 2017 17:14:48 +0300 Message-ID: <148440326011.30622.12833059348082223242.stgit@localhost.localdomain> User-Agent: StGit/0.17.1-dirty MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-Originating-IP: [195.214.232.6] X-ClientProxiedBy: DB6PR0802CA0035.eurprd08.prod.outlook.com (10.172.252.149) To DB6PR0802MB2277.eurprd08.prod.outlook.com (10.172.227.150) X-MS-Office365-Filtering-Correlation-Id: eca9d5a5-35b5-4c82-3fb2-08d43c87b4e1 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001);SRVR:DB6PR0802MB2277; X-Microsoft-Exchange-Diagnostics: 1;DB6PR0802MB2277;3:5AZoStoRRMQyuNSIMnuKBGJlVWHaZiz9OyPkLxFU7Ktq0d+QHFHKR+PdiAO2FLmQPEOnnp1EqDJlntXBuaIvI30GRHf6SuCuGwlM8uWV4+Dwh9oJeMoc65BZW7yvGq5zYui6uqM7hG5bwl0mkZkVakYY+iPufCJsk8/YmuZ+nOTW+ZBTXzs9LawCIXVjqvwspqqxRSMj6gS7Agh6sCx2xq8J+UQdmiC8VmOp2qyKVJItPbW9j7U+aEEsJOI62nXIzlFDsvkf3jjd85N3e+IdFA==;25:6PS2Nunf+B6DqDijGehrdyAZGUaIN1A6nBMstSRnW6IIBUv72j6HxCbm2wKYH61YjJDPXhy8ASHHGCfJjM28abgbFNHHfbd6Gu9UiJpGOcGxH88lVo9AObWQKENnyBg8cYBJ6ZtZoz8aOrTqYj33i+uM3Je7u4h7nvTsQdehLd+A1hP+HBBGtDbtHtyWiXNSnBOwyBzynUfU8ljUKf7Y//ECUQhRA10vsXcUlLzVDvykAbem1gl3uqVHL+KeaKeWrk6HMulPTDr7pjGTHKmbIe0avHIBsgxHRdSV2XRDJqrQlOzLEMdIggjcc0DCyMhXUUnLlfgWg5UEp5yVyyZHKqsszbWLYq+2O9jKj2j1aCxA6fURetWoL/pPKR7Oqql5E58nWmn7BCM6oIVDc08kxbuzahph+cHAsj82mVBkoPS/cluKVUMoCdiXio0FypNLNEIvt/29AbHOGDUJvIkO0A== X-Microsoft-Exchange-Diagnostics: 1;DB6PR0802MB2277;31:HUNHo6bygN0B0PG/SXD6SVfXLS6ygvkvQdAFcSuUoZm3z1hcLQG6iszFCr/MHzXpfLW1CPVy6pwrQm011z12fNPDx1GjGY8Ofo8eo/n+z+L2bXFuaVX4RKMAN1CQeADUZcezAfh+Yg6deCEm6yBcRiQ41/NlNR498FywmaXLJJ2+GkPqaLG2iKFhDT4NkEQdgDod5B7Bgw0Vh7OpWHAj6cmVnJ0348K+SODlvcLIh338AGYWZefz7zHxuf+AEde7YZ+MM4cwis6VLLyTq3+0Sw==;20:ic/pl6+2+zvGRLAy7M+IrhJT4qGrbBSZyDIo5A/DvPgggk3URx4v3YLIrRr87aAV9YXDtkfRpaLYuakrgEbOFjhrYs48WGIKee33i3Jvcn9hfyziYHnCYYWPK3T/Cvp6IJ0+ZRjslxyvM8UHF18KrerXo9xGK1dn2aXAtEWjJeXvQKb8MtusTWFQ06bHtxEAMei5w7ZeZNnVQ79spCWmvXxwh6qY46LVPQE9g1mXdyOar0LZ80d9F5PmQZJwfd3x X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040375)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(6041248)(20161123562025)(20161123555025)(20161123564025)(20161123560025)(6072148);SRVR:DB6PR0802MB2277;BCL:0;PCL:0;RULEID:;SRVR:DB6PR0802MB2277; X-Microsoft-Exchange-Diagnostics: 1;DB6PR0802MB2277;4:ieQyYvLqj1r2gDcVUcyhNKlAHBMZ1YionrRcL9Di+mw1yk0m9JeAeCFtTT/xzoKKVPgoVusTnyRLDVXo8fIIs+wWK9GRLQB1V6kkrdIwE1knxz2FRg9qkkxuSGrOlsgi7R6UUihZCu1vpyNNFTxpkozJcF6iVWHScmPo2casvP9F/W7halLtQIiTRanfy8WJ0wyRJhM0NE+vjnNU/25UxCF6m8A+Y+4ayv6cQdODqD95SNInGSQSAjp4Zdz2KLiwdQZ/nLTztYzrqD7dQhzRaF7zQqXKhFoH/fztUVTPTKXPD+f5Y199IuQT7YApzn5+p1q8CTblpc0esZ3aPvrgkGeiV/Ea8UuKURiR4X4GHhtuBlEhyQoSutcSb1Awx7sspo5rhByGFKyN4iuqkwy/sdESCSvEm2vx+yV3JuivDyKEeXz4XdHLIoovZ1Vt2C8+PWeubzqQwePBJmYf3fo29SB+OX8aMPGwcomXCAD+mgTYbgRC+NoypRYClAMgrhh21VwATQe/Y71cEHI+sitzVtOPMfu/QOyWZKrghCLIFu9SlwfguN8Ww9giOR1YCP5NstMH/Hq8FHaTQBc+F7XzHw== X-Forefront-PRVS: 0187F3EA14 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6009001)(6069001)(7916002)(39450400003)(189002)(199003)(5660300001)(8676002)(81166006)(105586002)(106356001)(81156014)(3846002)(83506001)(4001350100001)(5001770100001)(230700001)(97736004)(6116002)(68736007)(54356999)(50986999)(6666003)(103116003)(33646002)(50466002)(9686003)(101416001)(92566002)(107886002)(189998001)(42186005)(27001)(2906002)(23676002)(66066001)(55016002)(47776003)(6506006)(38730400001)(25786008)(305945005)(7736002)(2201001)(61506002)(86362001)(21314002);DIR:OUT;SFP:1102;SCL:1;SRVR:DB6PR0802MB2277;H:localhost.localdomain;FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtEQjZQUjA4MDJNQjIyNzc7MjM6bjcyR0JWNHFwbFNpV0lsbFIwWEtGaWxk?= =?utf-8?B?a2haeTMzVFRPbUIrRlp3L1B4VURWdHBBbWJheVAxdXliZXcyMDB4djNqQmdZ?= =?utf-8?B?dzNRMDFkQlR6MElZVDBvZE85YUVYcWdMbmFnTmpHVEhUY1JPcjExZXZjQ0JM?= =?utf-8?B?eTk4OUJBU2dXcnpabW5wRFducS90Mmg3N0NtRytiOCtpRjVNdVdGWWVjc1lw?= =?utf-8?B?VVdHeU5CenYxV3JUSXVRTEtVUWpKNEZjV2NaeWF1ODA2U3JTaHBBOWNKMnFl?= =?utf-8?B?MVZGYjQxZ0hIT2QzU0MrdnFybTM5SGhJS1dwUThjOUJXOHVETkQvaWNTTHhl?= =?utf-8?B?TDN3Sk5XTk04WFFXT2xkcENkZkpLZ0lRUFlEajFBYzVqWmFobmhaNm1QUURE?= =?utf-8?B?amNrRXowUld5aGx4bnZxbEZHb2h6dFp5L3dkZUF0T3Z5Mk53SzFVaFBScm1y?= =?utf-8?B?QTc2b1d3VXpPem1GSzllQVFqcFZJMnJyWDlMZDh2dUtRbitiOTRQVG9lc0xw?= =?utf-8?B?YlBjUUxPVFRuY3U5UHllMHVTQjdBa2pKU1Z0REVpVk12bXVPaGpKdisvdXcr?= =?utf-8?B?b2lGOHVVdFdmSXBDK2pvbFczSkxPRk5zYlBPVTFIdndXRnNGZ2xHMG85NFQ2?= =?utf-8?B?RjZnQ1N1a3lCdUNtNzl3YWh1T0hnNUFwUFF2Zm5HeFZpeWtCeTI0MXh6cElz?= =?utf-8?B?Yk1jRVBTaWorS1hFbDRSaHp0dFQxcnE3Q2p5NStaWnU0NHcrd3RTQ1R4dGMv?= =?utf-8?B?Um9SbDZaMkg5ZFVhMUpvYVNKdElFcVYrVGkycGp5eTJPQkRXRGFuK3E0UXhh?= =?utf-8?B?VjlTWkVIaElVNEgvN01VUXVJbFUrVGVQakUvdEVmbnQ5NkNCeHhEZ21pcVU0?= =?utf-8?B?SHc2bU1FZE4xQldiTGYzYmJFcGFuS0FCcE1VWHJoTGYwUGp0UmI5bk5nNi9p?= =?utf-8?B?RVRwL2Vxc3ZFa0hyTXc4cmNuMEtyMEpNV3p2Y2JaOSttMllVZ2ptMkVlMXZL?= =?utf-8?B?NkFFOE9pckRSa1RrZXZDYXFzb2ZNQ2UrRFcvOVZSZUpJUS9MT05UbWh2NTNv?= =?utf-8?B?RlM4UW5JbER6emZCaXhxQm1QRE1TNm5FL3ZlZUw2V1FBenFtdkVOMkpzZFI4?= =?utf-8?B?aHFhQXlTTW9SRG81eU1mREJJdTQwZHVtaDFOZHZZNnRrbDBicmxaRzYyc1BW?= =?utf-8?B?Z1MzMGU3bEJwOGdOSDRUOFJWWEUwa3lVUjRnclllZENkOUx6cERlUk9EV3NZ?= =?utf-8?B?Lzh5ZFR6OTM0VTV4UHA3bVV3ODFxZ1I0SkE5WlJYdkZ6YkZTbStDdGlmZHFI?= =?utf-8?B?a2dSdFZVcXgxWmtLbFNFN1paRGpZZkpRU2NMNkFqV3NmcVhPblFKZFk3OUFV?= =?utf-8?B?dCtIT3ZTaVZYNTVuWVFtWFNqcnA2dzZUaVk5d3RwQ1kyaUdZNmUzQ0xjYmsz?= =?utf-8?B?RVBkYTd3UTRTOWRBc0JnUGd3MTFkZWxCMFN2V0gzdEhWVmNVYUdtbTBxUC91?= =?utf-8?B?NytYMmtnZTRSbmtGTTE0RERxVnI2b2JCd09Yc1JxY2R6Y1hLdWd2cHVTWlJ4?= =?utf-8?B?SkVocExIY3NINkJ6K0MvNGNhR3crMXZtZz09?= X-Microsoft-Exchange-Diagnostics: 1;DB6PR0802MB2277;6:s9VvgSTX5ZcNmLSAMqjvsLZcPjV+RZKLCdMY7vTuuiTFqKr2zVysrhIHtGayLIc/LDdDz6ZBs0CtDhvW1LoGCmYz43CCNJzu0WMD8PUo5sr+tn9ExuJ7yDzN0pWUh4BJj5Xwmg9j+GZKd3xhIZbF27cOldMavTsQtlo10iHobXYyP5lKJC2SWOzo9opXg5hRPNyfJKa/BTph35rSgwgA1CvO7T0HM/cBAAwXCRDGqOXzVCI4nw2oVtI+JwYcQOA2btZ2i2VMGcfQaBOBfpKYl0bL2tX1bcYqtBaEDNfncKQjLoTEBiX98GhJ5QTUk4/TSKrF8clQf2OH9wjAgE+/CDp0JOG0TzT2hQ6haQOgl51PRZNNCyDS0rtcRbkiSpNQo6qTpVzsmn/RwZupWkdf2p1SXDcW/pp+p+5gXNaSVig=;5:h/LwDgkQDBuZVhDG0Mef5Wi530F02F6o2NCRpYv0dlh4wClZpXs0iK/8XmSZkGkC1909cP2TI6qNwF+TuJoORQALRpuQ7K38eat7PgdCJVoLSPScApxBalu5DVEXr3TTN8JOUxwzPxbh4sXrdMUn/oNAGce6uchw00P4uzuqpkI=;24:UqQnqa0UOrQH8KbSx8CaRE5u9lIDHwZ47XEAdxEXkx8Og5Cg4LcmC3UNo/Qqm4yhQRGl5cAosutnWKsK78FwCV2rVjYUJiNcGp/DY2Z0dDg= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;DB6PR0802MB2277;7:HQAPXe0y+TeB8c1mNVCXufRhnpfnxeWbgLIFunJdFdEQ02Ri1+d7LvXZEG5AWnpJnbYD9Gam1DFV139JUX8lEzYHFQ3PgHkdOALtAfarNXjM/zuY4agV8ppofyLbam1jlNvUP52F3rw1Hqad7+75bwwv+WeqOW/AXEudEKnEdFMrOksM9+PA0LrOGmEETLVx/yz0r7lQhohJrq2Lmy6GlHEbn3rwkgclRB9+mhyX2lLSSCM39yt13HjAQOxUj2JUz6q/ZZjBF5VtTcb26NoZ84PAR8Tstt3UiGDgt6MuZGkBt8AeViHpmbd9Mu/l6c9X6Tr/GmVaL+aysyw0m/ohXheREeOI36d94PmQhGoJb77icZXcpbUp/1SR/ZeJvgi+0iG98PIAY83aNZLtZu4wc26NChijBrTx9PWjRSfARo0RqmZ4TtNLU2Y2A3UO05vyFJoN7hKCFIz4Hmfx2emT0g==;20:j1jTNuQbs2VaE73kBOQxAYd88UL0ztQid7riqKz7Wc1JTZbWIUhfd/rfOpb1LiKFzioy++9PF6GaLknw6KE8a3TC1llW1Y+RHloVjB5pQWY7wUfqvGUU3tpg7VL0/u92agpVysDZAel2qqIrK4A1sELC+RihTmxVJCymMiIB4gE= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jan 2017 14:14:51.3220 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0802MB2277 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Make possible to have link content prefix yyy different from the link name xxx: $ readlink /proc/[pid]/ns/xxx yyy:[4026531838] This will be used in next patch. Signed-off-by: Kirill Tkhai --- fs/nsfs.c | 4 +++- include/linux/proc_ns.h | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/fs/nsfs.c b/fs/nsfs.c index 8c9fb29c6673..c2499c59bf51 100644 --- a/fs/nsfs.c +++ b/fs/nsfs.c @@ -182,9 +182,11 @@ int ns_get_name(char *buf, size_t size, struct task_struct *task, { struct ns_common *ns; int res = -ENOENT; + const char *name; ns = ns_ops->get(task); if (ns) { - res = snprintf(buf, size, "%s:[%u]", ns_ops->name, ns->inum); + name = ns_ops->real_ns_name ? : ns_ops->name; + res = snprintf(buf, size, "%s:[%u]", name, ns->inum); ns_ops->put(ns); } return res; diff --git a/include/linux/proc_ns.h b/include/linux/proc_ns.h index 12cb8bd81d2d..88dba3b53375 100644 --- a/include/linux/proc_ns.h +++ b/include/linux/proc_ns.h @@ -14,6 +14,7 @@ struct inode; struct proc_ns_operations { const char *name; + const char *real_ns_name; int type; struct ns_common *(*get)(struct task_struct *task); void (*put)(struct ns_common *ns);