Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp3039676pxu; Mon, 14 Dec 2020 18:52:50 -0800 (PST) X-Google-Smtp-Source: ABdhPJxEXMzP/74fmaVsFig6au2H6ZvSzPvNqQc+lFvMvLu5vn5R6yA4Qibqsr3dVNDTaFI+wl/q X-Received: by 2002:a50:8e0e:: with SMTP id 14mr11957824edw.171.1608000770323; Mon, 14 Dec 2020 18:52:50 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1608000770; cv=none; d=google.com; s=arc-20160816; b=lekZFl4BpN5Z+/A27Q5bAzJYzZ7rgRpK8ZAcS75pJAy2MwXhHAbXGrFh84BMOVPVPZ jqbJgo3qJtRG20agQZoSznkAe9yFeKYnEzfv+h0R7ZvwiocdJvpQY14GTi5YKxuiNMQc 5ihVku4GQCItV96qoH0Mjl1+JEYAh6i3Qt4FtW5aM40JkVc7MAjXdNE31h+5dK3aQv3P MlsoMfKPkFNOB5mrmo4cV3yEyrLGMrX1aWKSqyILUTszcHf/8qEIpx1czXFFgOMJrdVo QwOvzisj2cozUvW45aB8kvoWRcsdF0TJDqCXdr95Td8bg1+l+dpyWBTuJtklnJlfzee1 jI3w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=SDS1IoTT9e9jG5qNkQs06xUgvZJCIKhgAel2bPuApCE=; b=K2a8yQGUwrQuyG55079bL4Yv/fKrToo8kmzCgqmzfRGOWPOz1eEOd9MoGGckWIY1XA RbreqaEm/bmaHkcYK9zEr4uZsbTzk2KkD883OWwYxqJGAUokSv3U5CpP2b+Xe50LVmvF wipgjVHrshSswk//VigmuBzC6O5tus4rCNqxbdagZDlnQd03x+5xDl+AQOmWmpjYfoHr z/DEyUVGTbmV5sAk0H18xc3B9D5Uhjf2Ang7yrgTXL2Xp/RE25M4ePKsJSpza4HL2q6y N+403DHHr4MgTcAu6gzarkEU2Zao+S4Hmp5D+PTJH+re4G2oDGR5o2xLvgUVa055oC+w cylw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@paul-moore-com.20150623.gappssmtp.com header.s=20150623 header.b=YVwepcNa; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id cb26si210353ejb.487.2020.12.14.18.52.27; Mon, 14 Dec 2020 18:52:50 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@paul-moore-com.20150623.gappssmtp.com header.s=20150623 header.b=YVwepcNa; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726272AbgLOCfU (ORCPT + 99 others); Mon, 14 Dec 2020 21:35:20 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45320 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727535AbgLOCfM (ORCPT ); Mon, 14 Dec 2020 21:35:12 -0500 Received: from mail-ed1-x542.google.com (mail-ed1-x542.google.com [IPv6:2a00:1450:4864:20::542]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 24BA3C061793 for ; Mon, 14 Dec 2020 18:34:32 -0800 (PST) Received: by mail-ed1-x542.google.com with SMTP id r5so19346901eda.12 for ; Mon, 14 Dec 2020 18:34:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=paul-moore-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=SDS1IoTT9e9jG5qNkQs06xUgvZJCIKhgAel2bPuApCE=; b=YVwepcNaKWGBwLyybWAs/z4598H4hyPpUJJz2SiNQXol5N1OYOpE7/Pt+SvK/DdeBa /S3pfhRqEySC+QQPncFSEzKbDGVtC8qJPw5kRntKdmOI/4y32a7vE+CfKIqk6vWaJNq9 krUDUbllzMiLAf97Fhs9TsLAgwCzbq4a24WY1VPLJtz7eFC5BGkBX9RYjITlIpHBy3kn y50RbWt0ES+Lo47mewF0R5hk+JZnq6DiPqZ6POCMI9zPkSGul/djbLWaKijdILR0u4A3 iETMSY4KdSupIz7MUuI+6WbynJhi6Wi3gR0CIgDISvQOKzqD3VMy91QWH8jeY4a6jqCE 0v4g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=SDS1IoTT9e9jG5qNkQs06xUgvZJCIKhgAel2bPuApCE=; b=Qmc6PZwqfvoSK7s1v7+mADHVzklBhaiUuGH3XxKIgK0yN+bTfqYUl1bP+MM47R9VLq Qvf075z8jJEvxymNcJ+X/GluXSJUL/xfe0i8OHrGY3UkGih3jnDbFjsurSNR3h3gcU/1 5vjHwtf/AMHQuYEj/KnJJoY5r0arhIGafpvaY6K/dPvZUGQOl7HfMd5j3BICmtSnxF4p dTbSHfEAmQu9k/bzUejsrl6GzYHYYzb+0GnuopOCx+uVzdHXrAZu6pjTl3Yta6INFW6Z Tuk5vsQLzACYlRs7mUQ76qiljeuUpPhAkDoyvJ/LzjT9IROsG00LJl7zRFG37/1wdhYz emRw== X-Gm-Message-State: AOAM530IElE4MdFs4W2qFkiYxb3wCkiwaCla5SAcpCctwbIfDqn67MN2 4RoTUZ3wjikNaRHCMp9Dyp4Xjc21Uo26eKXMXgkU X-Received: by 2002:a05:6402:44b:: with SMTP id p11mr27550671edw.164.1607999670809; Mon, 14 Dec 2020 18:34:30 -0800 (PST) MIME-Version: 1.0 References: <20201211084254.2038-1-zhengyongjun3@huawei.com> <20201211153321.GF2015948@madcap2.tricolour.ca> In-Reply-To: <20201211153321.GF2015948@madcap2.tricolour.ca> From: Paul Moore Date: Mon, 14 Dec 2020 21:34:19 -0500 Message-ID: Subject: Re: [PATCH -next] kernel/audit: convert comma to semicolon To: Zheng Yongjun , Richard Guy Briggs Cc: linux-audit@redhat.com, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Dec 11, 2020 at 10:33 AM Richard Guy Briggs wrote: > On 2020-12-11 16:42, Zheng Yongjun wrote: > > Replace a comma between expression statements by a semicolon. > > > > Signed-off-by: Zheng Yongjun > > --- > > kernel/audit.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/kernel/audit.c b/kernel/audit.c > > index 68cee3bc8cfe..c8497115be35 100644 > > --- a/kernel/audit.c > > +++ b/kernel/audit.c > > @@ -2282,7 +2282,7 @@ static void audit_log_set_loginuid(kuid_t koldloginuid, kuid_t kloginuid, > > > > uid = from_kuid(&init_user_ns, task_uid(current)); > > oldloginuid = from_kuid(&init_user_ns, koldloginuid); > > - loginuid = from_kuid(&init_user_ns, kloginuid), > > + loginuid = from_kuid(&init_user_ns, kloginuid); > > Nice catch. That went unnoticed through 3 patches, the last two mine... Yes, thanks for catching this and submitting a patch. However, as it came very late in the v5.10-rcX release cycle I'm going to wait until after this merge window to merge it into audit/next. > Not quite sure why no compiler complained about it... Because it is legal; odd, but legal. :) The comma operator allows multiple expressions to be executed with only the last expression returned. Take the example below: % cat test.c #include #include int main(int argc, char *argv[]) { int a, b, c; a = (b = 1, c = 2); printf("a = %d, b = %d, c = %d\n", a, b, c); return 0; } % gcc -o test test.c % ./test a = 2, b = 1, c = 2 ... we see both "b=1" and "c=2" are executed, and the last statement in the comma separated list of expressions is used as the right-hand value in the "a" assignment. In the case of this patch, the existing code is actually okay: both expressions are executed and we don't assign either expression's value to a variable so it doesn't matter. However, it definitely looks odd and is something we should fix. -- paul moore www.paul-moore.com