All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: [ammarfaizi2-block:google/android/kernel/common/android12-5.4 3638/9999] kernel/seccomp.c:2041:41: sparse: sparse: incorrect type in argument 3 (different address spaces)
Date: Tue, 25 Jan 2022 19:24:11 +0800	[thread overview]
Message-ID: <202201251943.TPk8Y7Ob-lkp@intel.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 9786 bytes --]

tree:   https://github.com/ammarfaizi2/linux-block google/android/kernel/common/android12-5.4
head:   3307e1a058380163f1a11c8f7632706168f9fcb1
commit: 5444477e8a4d31f6e6ff720c2d018d06e405bcc1 [3638/9999] UPSTREAM: seccomp: Remove bogus __user annotations
config: x86_64-randconfig-s022 (https://download.01.org/0day-ci/archive/20220125/202201251943.TPk8Y7Ob-lkp(a)intel.com/config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.4-dirty
        # https://github.com/ammarfaizi2/linux-block/commit/5444477e8a4d31f6e6ff720c2d018d06e405bcc1
        git remote add ammarfaizi2-block https://github.com/ammarfaizi2/linux-block
        git fetch --no-tags ammarfaizi2-block google/android/kernel/common/android12-5.4
        git checkout 5444477e8a4d31f6e6ff720c2d018d06e405bcc1
        # save the config file to linux build tree
        mkdir build_dir
        make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=x86_64 SHELL=/bin/bash

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>


sparse warnings: (new ones prefixed by >>)
>> kernel/seccomp.c:2041:41: sparse: sparse: incorrect type in argument 3 (different address spaces) @@     expected void [noderef] <asn:1> * @@     got void *buffer @@
   kernel/seccomp.c:2041:41: sparse:     expected void [noderef] <asn:1> *
   kernel/seccomp.c:2041:41: sparse:     got void *buffer
   kernel/seccomp.c:2059:40: sparse: sparse: incorrect type in argument 3 (different address spaces) @@     expected void [noderef] <asn:1> * @@     got void *buffer @@
   kernel/seccomp.c:2059:40: sparse:     expected void [noderef] <asn:1> *
   kernel/seccomp.c:2059:40: sparse:     got void *buffer
>> kernel/seccomp.c:2115:54: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void *buffer @@     got void [noderef] <asn:1> *buffer @@
   kernel/seccomp.c:2115:54: sparse:     expected void *buffer
   kernel/seccomp.c:2115:54: sparse:     got void [noderef] <asn:1> *buffer
   kernel/seccomp.c:2119:53: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void *buffer @@     got void [noderef] <asn:1> *buffer @@
   kernel/seccomp.c:2119:53: sparse:     expected void *buffer
   kernel/seccomp.c:2119:53: sparse:     got void [noderef] <asn:1> *buffer

vim +2041 kernel/seccomp.c

0ddec0fc890020 Tyler Hicks 2017-08-11  2025  
5444477e8a4d31 Jann Horn   2020-11-20  2026  static int read_actions_logged(struct ctl_table *ro_table, void *buffer,
d013db029491b4 Tyler Hicks 2018-05-04  2027  			       size_t *lenp, loff_t *ppos)
0ddec0fc890020 Tyler Hicks 2017-08-11  2028  {
0ddec0fc890020 Tyler Hicks 2017-08-11  2029  	char names[sizeof(seccomp_actions_avail)];
0ddec0fc890020 Tyler Hicks 2017-08-11  2030  	struct ctl_table table;
0ddec0fc890020 Tyler Hicks 2017-08-11  2031  
0ddec0fc890020 Tyler Hicks 2017-08-11  2032  	memset(names, 0, sizeof(names));
0ddec0fc890020 Tyler Hicks 2017-08-11  2033  
0ddec0fc890020 Tyler Hicks 2017-08-11  2034  	if (!seccomp_names_from_actions_logged(names, sizeof(names),
beb44acaf000c9 Tyler Hicks 2018-05-04  2035  					       seccomp_actions_logged, " "))
0ddec0fc890020 Tyler Hicks 2017-08-11  2036  		return -EINVAL;
d013db029491b4 Tyler Hicks 2018-05-04  2037  
d013db029491b4 Tyler Hicks 2018-05-04  2038  	table = *ro_table;
d013db029491b4 Tyler Hicks 2018-05-04  2039  	table.data = names;
d013db029491b4 Tyler Hicks 2018-05-04  2040  	table.maxlen = sizeof(names);
d013db029491b4 Tyler Hicks 2018-05-04 @2041  	return proc_dostring(&table, 0, buffer, lenp, ppos);
0ddec0fc890020 Tyler Hicks 2017-08-11  2042  }
0ddec0fc890020 Tyler Hicks 2017-08-11  2043  
5444477e8a4d31 Jann Horn   2020-11-20  2044  static int write_actions_logged(struct ctl_table *ro_table, void *buffer,
ea6eca778500b0 Tyler Hicks 2018-05-04  2045  				size_t *lenp, loff_t *ppos, u32 *actions_logged)
d013db029491b4 Tyler Hicks 2018-05-04  2046  {
d013db029491b4 Tyler Hicks 2018-05-04  2047  	char names[sizeof(seccomp_actions_avail)];
d013db029491b4 Tyler Hicks 2018-05-04  2048  	struct ctl_table table;
d013db029491b4 Tyler Hicks 2018-05-04  2049  	int ret;
d013db029491b4 Tyler Hicks 2018-05-04  2050  
d013db029491b4 Tyler Hicks 2018-05-04  2051  	if (!capable(CAP_SYS_ADMIN))
d013db029491b4 Tyler Hicks 2018-05-04  2052  		return -EPERM;
d013db029491b4 Tyler Hicks 2018-05-04  2053  
d013db029491b4 Tyler Hicks 2018-05-04  2054  	memset(names, 0, sizeof(names));
d013db029491b4 Tyler Hicks 2018-05-04  2055  
0ddec0fc890020 Tyler Hicks 2017-08-11  2056  	table = *ro_table;
0ddec0fc890020 Tyler Hicks 2017-08-11  2057  	table.data = names;
0ddec0fc890020 Tyler Hicks 2017-08-11  2058  	table.maxlen = sizeof(names);
d013db029491b4 Tyler Hicks 2018-05-04  2059  	ret = proc_dostring(&table, 1, buffer, lenp, ppos);
0ddec0fc890020 Tyler Hicks 2017-08-11  2060  	if (ret)
0ddec0fc890020 Tyler Hicks 2017-08-11  2061  		return ret;
0ddec0fc890020 Tyler Hicks 2017-08-11  2062  
ea6eca778500b0 Tyler Hicks 2018-05-04  2063  	if (!seccomp_actions_logged_from_names(actions_logged, table.data))
0ddec0fc890020 Tyler Hicks 2017-08-11  2064  		return -EINVAL;
0ddec0fc890020 Tyler Hicks 2017-08-11  2065  
ea6eca778500b0 Tyler Hicks 2018-05-04  2066  	if (*actions_logged & SECCOMP_LOG_ALLOW)
0ddec0fc890020 Tyler Hicks 2017-08-11  2067  		return -EINVAL;
0ddec0fc890020 Tyler Hicks 2017-08-11  2068  
ea6eca778500b0 Tyler Hicks 2018-05-04  2069  	seccomp_actions_logged = *actions_logged;
d013db029491b4 Tyler Hicks 2018-05-04  2070  	return 0;
0ddec0fc890020 Tyler Hicks 2017-08-11  2071  }
0ddec0fc890020 Tyler Hicks 2017-08-11  2072  
ea6eca778500b0 Tyler Hicks 2018-05-04  2073  static void audit_actions_logged(u32 actions_logged, u32 old_actions_logged,
ea6eca778500b0 Tyler Hicks 2018-05-04  2074  				 int ret)
ea6eca778500b0 Tyler Hicks 2018-05-04  2075  {
ea6eca778500b0 Tyler Hicks 2018-05-04  2076  	char names[sizeof(seccomp_actions_avail)];
ea6eca778500b0 Tyler Hicks 2018-05-04  2077  	char old_names[sizeof(seccomp_actions_avail)];
ea6eca778500b0 Tyler Hicks 2018-05-04  2078  	const char *new = names;
ea6eca778500b0 Tyler Hicks 2018-05-04  2079  	const char *old = old_names;
ea6eca778500b0 Tyler Hicks 2018-05-04  2080  
ea6eca778500b0 Tyler Hicks 2018-05-04  2081  	if (!audit_enabled)
ea6eca778500b0 Tyler Hicks 2018-05-04  2082  		return;
ea6eca778500b0 Tyler Hicks 2018-05-04  2083  
ea6eca778500b0 Tyler Hicks 2018-05-04  2084  	memset(names, 0, sizeof(names));
ea6eca778500b0 Tyler Hicks 2018-05-04  2085  	memset(old_names, 0, sizeof(old_names));
ea6eca778500b0 Tyler Hicks 2018-05-04  2086  
ea6eca778500b0 Tyler Hicks 2018-05-04  2087  	if (ret)
ea6eca778500b0 Tyler Hicks 2018-05-04  2088  		new = "?";
ea6eca778500b0 Tyler Hicks 2018-05-04  2089  	else if (!actions_logged)
ea6eca778500b0 Tyler Hicks 2018-05-04  2090  		new = "(none)";
ea6eca778500b0 Tyler Hicks 2018-05-04  2091  	else if (!seccomp_names_from_actions_logged(names, sizeof(names),
ea6eca778500b0 Tyler Hicks 2018-05-04  2092  						    actions_logged, ","))
ea6eca778500b0 Tyler Hicks 2018-05-04  2093  		new = "?";
ea6eca778500b0 Tyler Hicks 2018-05-04  2094  
ea6eca778500b0 Tyler Hicks 2018-05-04  2095  	if (!old_actions_logged)
ea6eca778500b0 Tyler Hicks 2018-05-04  2096  		old = "(none)";
ea6eca778500b0 Tyler Hicks 2018-05-04  2097  	else if (!seccomp_names_from_actions_logged(old_names,
ea6eca778500b0 Tyler Hicks 2018-05-04  2098  						    sizeof(old_names),
ea6eca778500b0 Tyler Hicks 2018-05-04  2099  						    old_actions_logged, ","))
ea6eca778500b0 Tyler Hicks 2018-05-04  2100  		old = "?";
ea6eca778500b0 Tyler Hicks 2018-05-04  2101  
ea6eca778500b0 Tyler Hicks 2018-05-04  2102  	return audit_seccomp_actions_logged(new, old, !ret);
ea6eca778500b0 Tyler Hicks 2018-05-04  2103  }
ea6eca778500b0 Tyler Hicks 2018-05-04  2104  
d013db029491b4 Tyler Hicks 2018-05-04  2105  static int seccomp_actions_logged_handler(struct ctl_table *ro_table, int write,
d013db029491b4 Tyler Hicks 2018-05-04  2106  					  void __user *buffer, size_t *lenp,
d013db029491b4 Tyler Hicks 2018-05-04  2107  					  loff_t *ppos)
d013db029491b4 Tyler Hicks 2018-05-04  2108  {
ea6eca778500b0 Tyler Hicks 2018-05-04  2109  	int ret;
ea6eca778500b0 Tyler Hicks 2018-05-04  2110  
ea6eca778500b0 Tyler Hicks 2018-05-04  2111  	if (write) {
ea6eca778500b0 Tyler Hicks 2018-05-04  2112  		u32 actions_logged = 0;
ea6eca778500b0 Tyler Hicks 2018-05-04  2113  		u32 old_actions_logged = seccomp_actions_logged;
ea6eca778500b0 Tyler Hicks 2018-05-04  2114  
ea6eca778500b0 Tyler Hicks 2018-05-04 @2115  		ret = write_actions_logged(ro_table, buffer, lenp, ppos,
ea6eca778500b0 Tyler Hicks 2018-05-04  2116  					   &actions_logged);
ea6eca778500b0 Tyler Hicks 2018-05-04  2117  		audit_actions_logged(actions_logged, old_actions_logged, ret);
ea6eca778500b0 Tyler Hicks 2018-05-04  2118  	} else
ea6eca778500b0 Tyler Hicks 2018-05-04  2119  		ret = read_actions_logged(ro_table, buffer, lenp, ppos);
ea6eca778500b0 Tyler Hicks 2018-05-04  2120  
ea6eca778500b0 Tyler Hicks 2018-05-04  2121  	return ret;
0ddec0fc890020 Tyler Hicks 2017-08-11  2122  }
0ddec0fc890020 Tyler Hicks 2017-08-11  2123  

:::::: The code at line 2041 was first introduced by commit
:::::: d013db029491b49e1459d5a55ecd9ec1be1447ca seccomp: Separate read and write code for actions_logged sysctl

:::::: TO: Tyler Hicks <tyhicks@canonical.com>
:::::: CC: Paul Moore <paul@paul-moore.com>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: Jann Horn <jannh@google.com>
Cc: kbuild-all@lists.01.org, GNU/Weeb Mailing List <gwml@gnuweeb.org>,
	linux-kernel@vger.kernel.org, Todd Kjos <tkjos@google.com>,
	Tyler Hicks <code@tyhicks.com>, Kees Cook <keescook@chromium.org>,
	Jeff Vander Stoep <jeffv@google.com>
Subject: [ammarfaizi2-block:google/android/kernel/common/android12-5.4 3638/9999] kernel/seccomp.c:2041:41: sparse: sparse: incorrect type in argument 3 (different address spaces)
Date: Tue, 25 Jan 2022 19:24:11 +0800	[thread overview]
Message-ID: <202201251943.TPk8Y7Ob-lkp@intel.com> (raw)

tree:   https://github.com/ammarfaizi2/linux-block google/android/kernel/common/android12-5.4
head:   3307e1a058380163f1a11c8f7632706168f9fcb1
commit: 5444477e8a4d31f6e6ff720c2d018d06e405bcc1 [3638/9999] UPSTREAM: seccomp: Remove bogus __user annotations
config: x86_64-randconfig-s022 (https://download.01.org/0day-ci/archive/20220125/202201251943.TPk8Y7Ob-lkp@intel.com/config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.4-dirty
        # https://github.com/ammarfaizi2/linux-block/commit/5444477e8a4d31f6e6ff720c2d018d06e405bcc1
        git remote add ammarfaizi2-block https://github.com/ammarfaizi2/linux-block
        git fetch --no-tags ammarfaizi2-block google/android/kernel/common/android12-5.4
        git checkout 5444477e8a4d31f6e6ff720c2d018d06e405bcc1
        # save the config file to linux build tree
        mkdir build_dir
        make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=x86_64 SHELL=/bin/bash

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>


sparse warnings: (new ones prefixed by >>)
>> kernel/seccomp.c:2041:41: sparse: sparse: incorrect type in argument 3 (different address spaces) @@     expected void [noderef] <asn:1> * @@     got void *buffer @@
   kernel/seccomp.c:2041:41: sparse:     expected void [noderef] <asn:1> *
   kernel/seccomp.c:2041:41: sparse:     got void *buffer
   kernel/seccomp.c:2059:40: sparse: sparse: incorrect type in argument 3 (different address spaces) @@     expected void [noderef] <asn:1> * @@     got void *buffer @@
   kernel/seccomp.c:2059:40: sparse:     expected void [noderef] <asn:1> *
   kernel/seccomp.c:2059:40: sparse:     got void *buffer
>> kernel/seccomp.c:2115:54: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void *buffer @@     got void [noderef] <asn:1> *buffer @@
   kernel/seccomp.c:2115:54: sparse:     expected void *buffer
   kernel/seccomp.c:2115:54: sparse:     got void [noderef] <asn:1> *buffer
   kernel/seccomp.c:2119:53: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void *buffer @@     got void [noderef] <asn:1> *buffer @@
   kernel/seccomp.c:2119:53: sparse:     expected void *buffer
   kernel/seccomp.c:2119:53: sparse:     got void [noderef] <asn:1> *buffer

vim +2041 kernel/seccomp.c

0ddec0fc890020 Tyler Hicks 2017-08-11  2025  
5444477e8a4d31 Jann Horn   2020-11-20  2026  static int read_actions_logged(struct ctl_table *ro_table, void *buffer,
d013db029491b4 Tyler Hicks 2018-05-04  2027  			       size_t *lenp, loff_t *ppos)
0ddec0fc890020 Tyler Hicks 2017-08-11  2028  {
0ddec0fc890020 Tyler Hicks 2017-08-11  2029  	char names[sizeof(seccomp_actions_avail)];
0ddec0fc890020 Tyler Hicks 2017-08-11  2030  	struct ctl_table table;
0ddec0fc890020 Tyler Hicks 2017-08-11  2031  
0ddec0fc890020 Tyler Hicks 2017-08-11  2032  	memset(names, 0, sizeof(names));
0ddec0fc890020 Tyler Hicks 2017-08-11  2033  
0ddec0fc890020 Tyler Hicks 2017-08-11  2034  	if (!seccomp_names_from_actions_logged(names, sizeof(names),
beb44acaf000c9 Tyler Hicks 2018-05-04  2035  					       seccomp_actions_logged, " "))
0ddec0fc890020 Tyler Hicks 2017-08-11  2036  		return -EINVAL;
d013db029491b4 Tyler Hicks 2018-05-04  2037  
d013db029491b4 Tyler Hicks 2018-05-04  2038  	table = *ro_table;
d013db029491b4 Tyler Hicks 2018-05-04  2039  	table.data = names;
d013db029491b4 Tyler Hicks 2018-05-04  2040  	table.maxlen = sizeof(names);
d013db029491b4 Tyler Hicks 2018-05-04 @2041  	return proc_dostring(&table, 0, buffer, lenp, ppos);
0ddec0fc890020 Tyler Hicks 2017-08-11  2042  }
0ddec0fc890020 Tyler Hicks 2017-08-11  2043  
5444477e8a4d31 Jann Horn   2020-11-20  2044  static int write_actions_logged(struct ctl_table *ro_table, void *buffer,
ea6eca778500b0 Tyler Hicks 2018-05-04  2045  				size_t *lenp, loff_t *ppos, u32 *actions_logged)
d013db029491b4 Tyler Hicks 2018-05-04  2046  {
d013db029491b4 Tyler Hicks 2018-05-04  2047  	char names[sizeof(seccomp_actions_avail)];
d013db029491b4 Tyler Hicks 2018-05-04  2048  	struct ctl_table table;
d013db029491b4 Tyler Hicks 2018-05-04  2049  	int ret;
d013db029491b4 Tyler Hicks 2018-05-04  2050  
d013db029491b4 Tyler Hicks 2018-05-04  2051  	if (!capable(CAP_SYS_ADMIN))
d013db029491b4 Tyler Hicks 2018-05-04  2052  		return -EPERM;
d013db029491b4 Tyler Hicks 2018-05-04  2053  
d013db029491b4 Tyler Hicks 2018-05-04  2054  	memset(names, 0, sizeof(names));
d013db029491b4 Tyler Hicks 2018-05-04  2055  
0ddec0fc890020 Tyler Hicks 2017-08-11  2056  	table = *ro_table;
0ddec0fc890020 Tyler Hicks 2017-08-11  2057  	table.data = names;
0ddec0fc890020 Tyler Hicks 2017-08-11  2058  	table.maxlen = sizeof(names);
d013db029491b4 Tyler Hicks 2018-05-04  2059  	ret = proc_dostring(&table, 1, buffer, lenp, ppos);
0ddec0fc890020 Tyler Hicks 2017-08-11  2060  	if (ret)
0ddec0fc890020 Tyler Hicks 2017-08-11  2061  		return ret;
0ddec0fc890020 Tyler Hicks 2017-08-11  2062  
ea6eca778500b0 Tyler Hicks 2018-05-04  2063  	if (!seccomp_actions_logged_from_names(actions_logged, table.data))
0ddec0fc890020 Tyler Hicks 2017-08-11  2064  		return -EINVAL;
0ddec0fc890020 Tyler Hicks 2017-08-11  2065  
ea6eca778500b0 Tyler Hicks 2018-05-04  2066  	if (*actions_logged & SECCOMP_LOG_ALLOW)
0ddec0fc890020 Tyler Hicks 2017-08-11  2067  		return -EINVAL;
0ddec0fc890020 Tyler Hicks 2017-08-11  2068  
ea6eca778500b0 Tyler Hicks 2018-05-04  2069  	seccomp_actions_logged = *actions_logged;
d013db029491b4 Tyler Hicks 2018-05-04  2070  	return 0;
0ddec0fc890020 Tyler Hicks 2017-08-11  2071  }
0ddec0fc890020 Tyler Hicks 2017-08-11  2072  
ea6eca778500b0 Tyler Hicks 2018-05-04  2073  static void audit_actions_logged(u32 actions_logged, u32 old_actions_logged,
ea6eca778500b0 Tyler Hicks 2018-05-04  2074  				 int ret)
ea6eca778500b0 Tyler Hicks 2018-05-04  2075  {
ea6eca778500b0 Tyler Hicks 2018-05-04  2076  	char names[sizeof(seccomp_actions_avail)];
ea6eca778500b0 Tyler Hicks 2018-05-04  2077  	char old_names[sizeof(seccomp_actions_avail)];
ea6eca778500b0 Tyler Hicks 2018-05-04  2078  	const char *new = names;
ea6eca778500b0 Tyler Hicks 2018-05-04  2079  	const char *old = old_names;
ea6eca778500b0 Tyler Hicks 2018-05-04  2080  
ea6eca778500b0 Tyler Hicks 2018-05-04  2081  	if (!audit_enabled)
ea6eca778500b0 Tyler Hicks 2018-05-04  2082  		return;
ea6eca778500b0 Tyler Hicks 2018-05-04  2083  
ea6eca778500b0 Tyler Hicks 2018-05-04  2084  	memset(names, 0, sizeof(names));
ea6eca778500b0 Tyler Hicks 2018-05-04  2085  	memset(old_names, 0, sizeof(old_names));
ea6eca778500b0 Tyler Hicks 2018-05-04  2086  
ea6eca778500b0 Tyler Hicks 2018-05-04  2087  	if (ret)
ea6eca778500b0 Tyler Hicks 2018-05-04  2088  		new = "?";
ea6eca778500b0 Tyler Hicks 2018-05-04  2089  	else if (!actions_logged)
ea6eca778500b0 Tyler Hicks 2018-05-04  2090  		new = "(none)";
ea6eca778500b0 Tyler Hicks 2018-05-04  2091  	else if (!seccomp_names_from_actions_logged(names, sizeof(names),
ea6eca778500b0 Tyler Hicks 2018-05-04  2092  						    actions_logged, ","))
ea6eca778500b0 Tyler Hicks 2018-05-04  2093  		new = "?";
ea6eca778500b0 Tyler Hicks 2018-05-04  2094  
ea6eca778500b0 Tyler Hicks 2018-05-04  2095  	if (!old_actions_logged)
ea6eca778500b0 Tyler Hicks 2018-05-04  2096  		old = "(none)";
ea6eca778500b0 Tyler Hicks 2018-05-04  2097  	else if (!seccomp_names_from_actions_logged(old_names,
ea6eca778500b0 Tyler Hicks 2018-05-04  2098  						    sizeof(old_names),
ea6eca778500b0 Tyler Hicks 2018-05-04  2099  						    old_actions_logged, ","))
ea6eca778500b0 Tyler Hicks 2018-05-04  2100  		old = "?";
ea6eca778500b0 Tyler Hicks 2018-05-04  2101  
ea6eca778500b0 Tyler Hicks 2018-05-04  2102  	return audit_seccomp_actions_logged(new, old, !ret);
ea6eca778500b0 Tyler Hicks 2018-05-04  2103  }
ea6eca778500b0 Tyler Hicks 2018-05-04  2104  
d013db029491b4 Tyler Hicks 2018-05-04  2105  static int seccomp_actions_logged_handler(struct ctl_table *ro_table, int write,
d013db029491b4 Tyler Hicks 2018-05-04  2106  					  void __user *buffer, size_t *lenp,
d013db029491b4 Tyler Hicks 2018-05-04  2107  					  loff_t *ppos)
d013db029491b4 Tyler Hicks 2018-05-04  2108  {
ea6eca778500b0 Tyler Hicks 2018-05-04  2109  	int ret;
ea6eca778500b0 Tyler Hicks 2018-05-04  2110  
ea6eca778500b0 Tyler Hicks 2018-05-04  2111  	if (write) {
ea6eca778500b0 Tyler Hicks 2018-05-04  2112  		u32 actions_logged = 0;
ea6eca778500b0 Tyler Hicks 2018-05-04  2113  		u32 old_actions_logged = seccomp_actions_logged;
ea6eca778500b0 Tyler Hicks 2018-05-04  2114  
ea6eca778500b0 Tyler Hicks 2018-05-04 @2115  		ret = write_actions_logged(ro_table, buffer, lenp, ppos,
ea6eca778500b0 Tyler Hicks 2018-05-04  2116  					   &actions_logged);
ea6eca778500b0 Tyler Hicks 2018-05-04  2117  		audit_actions_logged(actions_logged, old_actions_logged, ret);
ea6eca778500b0 Tyler Hicks 2018-05-04  2118  	} else
ea6eca778500b0 Tyler Hicks 2018-05-04  2119  		ret = read_actions_logged(ro_table, buffer, lenp, ppos);
ea6eca778500b0 Tyler Hicks 2018-05-04  2120  
ea6eca778500b0 Tyler Hicks 2018-05-04  2121  	return ret;
0ddec0fc890020 Tyler Hicks 2017-08-11  2122  }
0ddec0fc890020 Tyler Hicks 2017-08-11  2123  

:::::: The code at line 2041 was first introduced by commit
:::::: d013db029491b49e1459d5a55ecd9ec1be1447ca seccomp: Separate read and write code for actions_logged sysctl

:::::: TO: Tyler Hicks <tyhicks@canonical.com>
:::::: CC: Paul Moore <paul@paul-moore.com>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

             reply	other threads:[~2022-01-25 11:24 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-25 11:24 kernel test robot [this message]
2022-01-25 11:24 ` [ammarfaizi2-block:google/android/kernel/common/android12-5.4 3638/9999] kernel/seccomp.c:2041:41: sparse: sparse: incorrect type in argument 3 (different address spaces) kernel test robot
2022-01-25 11:43 ` seccomp __user annotation fix backported too far in Android [was: Re: [ammarfaizi2-block:google/android/kernel/common/android12-5.4 3638/9999] kernel/seccomp.c:2041:41: sparse: sparse: incorrect type in argument 3 (different address spaces)] Jann Horn
2022-01-25 11:43   ` Jann Horn

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202201251943.TPk8Y7Ob-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=kbuild-all@lists.01.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.