Use ns_capable to check capability in user ns, instead of capable function. The user ns is the owner of current syslog ns.
Signed-off-by: Rui Xiang <rui.xi...@huawei.com> --- kernel/printk.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel/printk.c b/kernel/printk.c index 846fef5..c5c65a8 100644 --- a/kernel/printk.c +++ b/kernel/printk.c @@ -380,13 +380,13 @@ static int check_syslog_permissions(int type, bool from_file, return 0; if (syslog_action_restricted(type, ns)) { - if (capable(CAP_SYSLOG)) + if (ns_capable(ns->owner, CAP_SYSLOG)) return 0; /* * For historical reasons, accept CAP_SYS_ADMIN too, with * a warning. */ - if (capable(CAP_SYS_ADMIN)) { + if (ns_capable(ns->owner, CAP_SYS_ADMIN)) { pr_warn_once("%s (%d): Attempt to access syslog with " "CAP_SYS_ADMIN but no CAP_SYSLOG " "(deprecated).\n", -- 1.8.2.2 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/