All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: David Anderson <dvander@google.com>
Cc: kbuild-all@lists.01.org, David Anderson <dvander@google.com>,
	Mark Salyzyn <salyzyn@android.com>, Jan Kara <jack@suse.cz>,
	Jeff Layton <jlayton@kernel.org>, David Sterba <dsterba@suse.com>,
	"Darrick J . Wong" <darrick.wong@oracle.com>,
	Mike Marshall <hubcap@omnibond.com>,
	linux-fsdevel@vger.kernel.org, linux-unionfs@vger.kernel.org,
	Stephen Smalley <sds@tycho.nsa.gov>
Subject: Re: [PATCH v19 1/4] Add flags option to get xattr method paired to __vfs_getxattr
Date: Thu, 18 Nov 2021 00:13:11 +0800	[thread overview]
Message-ID: <202111180001.PFHtV7zw-lkp@intel.com> (raw)
In-Reply-To: <20211117015806.2192263-2-dvander@google.com>

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

Hi David,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on linus/master]
[also build test ERROR on v5.16-rc1 next-20211117]
[cannot apply to mszeredi-vfs/overlayfs-next tytso-ext4/dev jmorris-security/next-testing]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/David-Anderson/overlayfs-override_creds-off-nested-get-xattr-fix/20211117-100030
base:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 8ab774587903771821b59471cc723bba6d893942
config: arm-randconfig-c002-20211116 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://github.com/0day-ci/linux/commit/73277167dc9cad1e636a76e9f993d8f30b289d02
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review David-Anderson/overlayfs-override_creds-off-nested-get-xattr-fix/20211117-100030
        git checkout 73277167dc9cad1e636a76e9f993d8f30b289d02
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross ARCH=arm 

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

All errors (new ones prefixed by >>):

   In file included from fs/open.c:19:
   include/linux/security.h: In function 'security_inode_need_killpriv':
>> include/linux/security.h:901:40: error: passing argument 1 of 'cap_inode_need_killpriv' from incompatible pointer type [-Werror=incompatible-pointer-types]
     901 |         return cap_inode_need_killpriv(dentry);
         |                                        ^~~~~~
         |                                        |
         |                                        struct dentry *
   include/linux/security.h:153:52: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |                             ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
>> include/linux/security.h:901:16: error: too few arguments to function 'cap_inode_need_killpriv'
     901 |         return cap_inode_need_killpriv(dentry);
         |                ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/security.h:153:5: note: declared here
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |     ^~~~~~~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors
--
   In file included from include/linux/fs_context.h:14,
                    from include/linux/pseudo_fs.h:4,
                    from fs/pipe.c:17:
   include/linux/security.h: In function 'security_inode_need_killpriv':
>> include/linux/security.h:901:40: error: passing argument 1 of 'cap_inode_need_killpriv' from incompatible pointer type [-Werror=incompatible-pointer-types]
     901 |         return cap_inode_need_killpriv(dentry);
         |                                        ^~~~~~
         |                                        |
         |                                        struct dentry *
   include/linux/security.h:153:52: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |                             ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
>> include/linux/security.h:901:16: error: too few arguments to function 'cap_inode_need_killpriv'
     901 |         return cap_inode_need_killpriv(dentry);
         |                ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/security.h:153:5: note: declared here
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |     ^~~~~~~~~~~~~~~~~~~~~~~
   fs/pipe.c: At top level:
   fs/pipe.c:755:15: warning: no previous prototype for 'account_pipe_buffers' [-Wmissing-prototypes]
     755 | unsigned long account_pipe_buffers(struct user_struct *user,
         |               ^~~~~~~~~~~~~~~~~~~~
   fs/pipe.c:761:6: warning: no previous prototype for 'too_many_pipe_buffers_soft' [-Wmissing-prototypes]
     761 | bool too_many_pipe_buffers_soft(unsigned long user_bufs)
         |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
   fs/pipe.c:768:6: warning: no previous prototype for 'too_many_pipe_buffers_hard' [-Wmissing-prototypes]
     768 | bool too_many_pipe_buffers_hard(unsigned long user_bufs)
         |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
   fs/pipe.c:775:6: warning: no previous prototype for 'pipe_is_unprivileged_user' [-Wmissing-prototypes]
     775 | bool pipe_is_unprivileged_user(void)
         |      ^~~~~~~~~~~~~~~~~~~~~~~~~
   fs/pipe.c:1245:5: warning: no previous prototype for 'pipe_resize_ring' [-Wmissing-prototypes]
    1245 | int pipe_resize_ring(struct pipe_inode_info *pipe, unsigned int nr_slots)
         |     ^~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors
--
   In file included from fs/inode.c:12:
   include/linux/security.h: In function 'security_inode_need_killpriv':
>> include/linux/security.h:901:40: error: passing argument 1 of 'cap_inode_need_killpriv' from incompatible pointer type [-Werror=incompatible-pointer-types]
     901 |         return cap_inode_need_killpriv(dentry);
         |                                        ^~~~~~
         |                                        |
         |                                        struct dentry *
   include/linux/security.h:153:52: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |                             ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
>> include/linux/security.h:901:16: error: too few arguments to function 'cap_inode_need_killpriv'
     901 |         return cap_inode_need_killpriv(dentry);
         |                ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/security.h:153:5: note: declared here
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |     ^~~~~~~~~~~~~~~~~~~~~~~
   fs/inode.c: In function 'dentry_needs_remove_privs':
>> fs/inode.c:1921:44: error: passing argument 1 of 'security_inode_need_killpriv' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1921 |         ret = security_inode_need_killpriv(mnt_userns, dentry);
         |                                            ^~~~~~~~~~
         |                                            |
         |                                            struct user_namespace *
   In file included from fs/inode.c:12:
   include/linux/security.h:899:63: note: expected 'struct dentry *' but argument is of type 'struct user_namespace *'
     899 | static inline int security_inode_need_killpriv(struct dentry *dentry)
         |                                                ~~~~~~~~~~~~~~~^~~~~~
>> fs/inode.c:1921:15: error: too many arguments to function 'security_inode_need_killpriv'
    1921 |         ret = security_inode_need_killpriv(mnt_userns, dentry);
         |               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from fs/inode.c:12:
   include/linux/security.h:899:19: note: declared here
     899 | static inline int security_inode_need_killpriv(struct dentry *dentry)
         |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/security.h: In function 'security_inode_need_killpriv':
   include/linux/security.h:902:1: error: control reaches end of non-void function [-Werror=return-type]
     902 | }
         | ^
   cc1: some warnings being treated as errors
--
   In file included from fs/attr.c:17:
   include/linux/security.h: In function 'security_inode_need_killpriv':
>> include/linux/security.h:901:40: error: passing argument 1 of 'cap_inode_need_killpriv' from incompatible pointer type [-Werror=incompatible-pointer-types]
     901 |         return cap_inode_need_killpriv(dentry);
         |                                        ^~~~~~
         |                                        |
         |                                        struct dentry *
   include/linux/security.h:153:52: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |                             ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
>> include/linux/security.h:901:16: error: too few arguments to function 'cap_inode_need_killpriv'
     901 |         return cap_inode_need_killpriv(dentry);
         |                ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/security.h:153:5: note: declared here
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |     ^~~~~~~~~~~~~~~~~~~~~~~
   fs/attr.c: In function 'notify_change':
>> fs/attr.c:345:54: error: passing argument 1 of 'security_inode_need_killpriv' from incompatible pointer type [-Werror=incompatible-pointer-types]
     345 |                 error = security_inode_need_killpriv(mnt_userns, dentry);
         |                                                      ^~~~~~~~~~
         |                                                      |
         |                                                      struct user_namespace *
   In file included from fs/attr.c:17:
   include/linux/security.h:899:63: note: expected 'struct dentry *' but argument is of type 'struct user_namespace *'
     899 | static inline int security_inode_need_killpriv(struct dentry *dentry)
         |                                                ~~~~~~~~~~~~~~~^~~~~~
>> fs/attr.c:345:25: error: too many arguments to function 'security_inode_need_killpriv'
     345 |                 error = security_inode_need_killpriv(mnt_userns, dentry);
         |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from fs/attr.c:17:
   include/linux/security.h:899:19: note: declared here
     899 | static inline int security_inode_need_killpriv(struct dentry *dentry)
         |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/security.h: In function 'security_inode_need_killpriv':
   include/linux/security.h:902:1: error: control reaches end of non-void function [-Werror=return-type]
     902 | }
         | ^
   cc1: some warnings being treated as errors
--
   In file included from include/linux/perf_event.h:59,
                    from include/linux/trace_events.h:10,
                    from include/trace/syscall.h:7,
                    from include/linux/syscalls.h:88,
                    from fs/d_path.c:2:
   include/linux/security.h: In function 'security_inode_need_killpriv':
>> include/linux/security.h:901:40: error: passing argument 1 of 'cap_inode_need_killpriv' from incompatible pointer type [-Werror=incompatible-pointer-types]
     901 |         return cap_inode_need_killpriv(dentry);
         |                                        ^~~~~~
         |                                        |
         |                                        struct dentry *
   include/linux/security.h:153:52: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |                             ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
>> include/linux/security.h:901:16: error: too few arguments to function 'cap_inode_need_killpriv'
     901 |         return cap_inode_need_killpriv(dentry);
         |                ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/security.h:153:5: note: declared here
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |     ^~~~~~~~~~~~~~~~~~~~~~~
   fs/d_path.c: At top level:
   fs/d_path.c:318:7: warning: no previous prototype for 'simple_dname' [-Wmissing-prototypes]
     318 | char *simple_dname(struct dentry *dentry, char *buffer, int buflen)
         |       ^~~~~~~~~~~~
   cc1: some warnings being treated as errors
--
   In file included from kernel/trace/trace.c:20:
   include/linux/security.h: In function 'security_inode_need_killpriv':
>> include/linux/security.h:901:40: error: passing argument 1 of 'cap_inode_need_killpriv' from incompatible pointer type [-Werror=incompatible-pointer-types]
     901 |         return cap_inode_need_killpriv(dentry);
         |                                        ^~~~~~
         |                                        |
         |                                        struct dentry *
   include/linux/security.h:153:52: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |                             ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
>> include/linux/security.h:901:16: error: too few arguments to function 'cap_inode_need_killpriv'
     901 |         return cap_inode_need_killpriv(dentry);
         |                ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/security.h:153:5: note: declared here
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |     ^~~~~~~~~~~~~~~~~~~~~~~
   kernel/trace/trace.c: In function 'trace_check_vprintf':
   kernel/trace/trace.c:3813:17: warning: function 'trace_check_vprintf' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
    3813 |                 trace_seq_vprintf(&iter->seq, iter->fmt, ap);
         |                 ^~~~~~~~~~~~~~~~~
   kernel/trace/trace.c:3868:17: warning: function 'trace_check_vprintf' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
    3868 |                 trace_seq_vprintf(&iter->seq, p, ap);
         |                 ^~~~~~~~~~~~~~~~~
   At top level:
   kernel/trace/trace.c:1668:37: warning: 'tracing_max_lat_fops' defined but not used [-Wunused-const-variable=]
    1668 | static const struct file_operations tracing_max_lat_fops;
         |                                     ^~~~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors
--
   In file included from include/linux/perf_event.h:59,
                    from include/linux/hw_breakpoint.h:5,
                    from kernel/trace/trace.h:15,
                    from kernel/trace/trace_output.h:6,
                    from kernel/trace/trace_output.c:15:
   include/linux/security.h: In function 'security_inode_need_killpriv':
>> include/linux/security.h:901:40: error: passing argument 1 of 'cap_inode_need_killpriv' from incompatible pointer type [-Werror=incompatible-pointer-types]
     901 |         return cap_inode_need_killpriv(dentry);
         |                                        ^~~~~~
         |                                        |
         |                                        struct dentry *
   include/linux/security.h:153:52: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |                             ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
>> include/linux/security.h:901:16: error: too few arguments to function 'cap_inode_need_killpriv'
     901 |         return cap_inode_need_killpriv(dentry);
         |                ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/security.h:153:5: note: declared here
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |     ^~~~~~~~~~~~~~~~~~~~~~~
   kernel/trace/trace_output.c: In function 'trace_output_raw':
   kernel/trace/trace_output.c:332:9: warning: function 'trace_output_raw' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
     332 |         trace_seq_vprintf(s, trace_event_format(iter, fmt), ap);
         |         ^~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors
--
   In file included from include/linux/perf_event.h:59,
                    from include/linux/hw_breakpoint.h:5,
                    from kernel/trace/trace.h:15,
                    from kernel/trace/trace_preemptirq.c:13:
   include/linux/security.h: In function 'security_inode_need_killpriv':
>> include/linux/security.h:901:40: error: passing argument 1 of 'cap_inode_need_killpriv' from incompatible pointer type [-Werror=incompatible-pointer-types]
     901 |         return cap_inode_need_killpriv(dentry);
         |                                        ^~~~~~
         |                                        |
         |                                        struct dentry *
   include/linux/security.h:153:52: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |                             ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
>> include/linux/security.h:901:16: error: too few arguments to function 'cap_inode_need_killpriv'
     901 |         return cap_inode_need_killpriv(dentry);
         |                ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/security.h:153:5: note: declared here
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |     ^~~~~~~~~~~~~~~~~~~~~~~
   kernel/trace/trace_preemptirq.c: At top level:
   kernel/trace/trace_preemptirq.c:88:16: warning: no previous prototype for 'trace_hardirqs_on_caller' [-Wmissing-prototypes]
      88 | __visible void trace_hardirqs_on_caller(unsigned long caller_addr)
         |                ^~~~~~~~~~~~~~~~~~~~~~~~
   kernel/trace/trace_preemptirq.c:103:16: warning: no previous prototype for 'trace_hardirqs_off_caller' [-Wmissing-prototypes]
     103 | __visible void trace_hardirqs_off_caller(unsigned long caller_addr)
         |                ^~~~~~~~~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors


vim +/cap_inode_need_killpriv +901 include/linux/security.h

^1da177e4c3f415 Linus Torvalds  2005-04-16  898  
b53767719b6cd87 Serge E. Hallyn 2007-10-16  899  static inline int security_inode_need_killpriv(struct dentry *dentry)
b53767719b6cd87 Serge E. Hallyn 2007-10-16  900  {
b53767719b6cd87 Serge E. Hallyn 2007-10-16 @901  	return cap_inode_need_killpriv(dentry);
b53767719b6cd87 Serge E. Hallyn 2007-10-16  902  }
b53767719b6cd87 Serge E. Hallyn 2007-10-16  903  

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

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 38968 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: Re: [PATCH v19 1/4] Add flags option to get xattr method paired to __vfs_getxattr
Date: Thu, 18 Nov 2021 00:13:11 +0800	[thread overview]
Message-ID: <202111180001.PFHtV7zw-lkp@intel.com> (raw)
In-Reply-To: <20211117015806.2192263-2-dvander@google.com>

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

Hi David,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on linus/master]
[also build test ERROR on v5.16-rc1 next-20211117]
[cannot apply to mszeredi-vfs/overlayfs-next tytso-ext4/dev jmorris-security/next-testing]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/David-Anderson/overlayfs-override_creds-off-nested-get-xattr-fix/20211117-100030
base:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 8ab774587903771821b59471cc723bba6d893942
config: arm-randconfig-c002-20211116 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://github.com/0day-ci/linux/commit/73277167dc9cad1e636a76e9f993d8f30b289d02
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review David-Anderson/overlayfs-override_creds-off-nested-get-xattr-fix/20211117-100030
        git checkout 73277167dc9cad1e636a76e9f993d8f30b289d02
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross ARCH=arm 

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

All errors (new ones prefixed by >>):

   In file included from fs/open.c:19:
   include/linux/security.h: In function 'security_inode_need_killpriv':
>> include/linux/security.h:901:40: error: passing argument 1 of 'cap_inode_need_killpriv' from incompatible pointer type [-Werror=incompatible-pointer-types]
     901 |         return cap_inode_need_killpriv(dentry);
         |                                        ^~~~~~
         |                                        |
         |                                        struct dentry *
   include/linux/security.h:153:52: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |                             ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
>> include/linux/security.h:901:16: error: too few arguments to function 'cap_inode_need_killpriv'
     901 |         return cap_inode_need_killpriv(dentry);
         |                ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/security.h:153:5: note: declared here
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |     ^~~~~~~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors
--
   In file included from include/linux/fs_context.h:14,
                    from include/linux/pseudo_fs.h:4,
                    from fs/pipe.c:17:
   include/linux/security.h: In function 'security_inode_need_killpriv':
>> include/linux/security.h:901:40: error: passing argument 1 of 'cap_inode_need_killpriv' from incompatible pointer type [-Werror=incompatible-pointer-types]
     901 |         return cap_inode_need_killpriv(dentry);
         |                                        ^~~~~~
         |                                        |
         |                                        struct dentry *
   include/linux/security.h:153:52: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |                             ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
>> include/linux/security.h:901:16: error: too few arguments to function 'cap_inode_need_killpriv'
     901 |         return cap_inode_need_killpriv(dentry);
         |                ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/security.h:153:5: note: declared here
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |     ^~~~~~~~~~~~~~~~~~~~~~~
   fs/pipe.c: At top level:
   fs/pipe.c:755:15: warning: no previous prototype for 'account_pipe_buffers' [-Wmissing-prototypes]
     755 | unsigned long account_pipe_buffers(struct user_struct *user,
         |               ^~~~~~~~~~~~~~~~~~~~
   fs/pipe.c:761:6: warning: no previous prototype for 'too_many_pipe_buffers_soft' [-Wmissing-prototypes]
     761 | bool too_many_pipe_buffers_soft(unsigned long user_bufs)
         |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
   fs/pipe.c:768:6: warning: no previous prototype for 'too_many_pipe_buffers_hard' [-Wmissing-prototypes]
     768 | bool too_many_pipe_buffers_hard(unsigned long user_bufs)
         |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
   fs/pipe.c:775:6: warning: no previous prototype for 'pipe_is_unprivileged_user' [-Wmissing-prototypes]
     775 | bool pipe_is_unprivileged_user(void)
         |      ^~~~~~~~~~~~~~~~~~~~~~~~~
   fs/pipe.c:1245:5: warning: no previous prototype for 'pipe_resize_ring' [-Wmissing-prototypes]
    1245 | int pipe_resize_ring(struct pipe_inode_info *pipe, unsigned int nr_slots)
         |     ^~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors
--
   In file included from fs/inode.c:12:
   include/linux/security.h: In function 'security_inode_need_killpriv':
>> include/linux/security.h:901:40: error: passing argument 1 of 'cap_inode_need_killpriv' from incompatible pointer type [-Werror=incompatible-pointer-types]
     901 |         return cap_inode_need_killpriv(dentry);
         |                                        ^~~~~~
         |                                        |
         |                                        struct dentry *
   include/linux/security.h:153:52: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |                             ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
>> include/linux/security.h:901:16: error: too few arguments to function 'cap_inode_need_killpriv'
     901 |         return cap_inode_need_killpriv(dentry);
         |                ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/security.h:153:5: note: declared here
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |     ^~~~~~~~~~~~~~~~~~~~~~~
   fs/inode.c: In function 'dentry_needs_remove_privs':
>> fs/inode.c:1921:44: error: passing argument 1 of 'security_inode_need_killpriv' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1921 |         ret = security_inode_need_killpriv(mnt_userns, dentry);
         |                                            ^~~~~~~~~~
         |                                            |
         |                                            struct user_namespace *
   In file included from fs/inode.c:12:
   include/linux/security.h:899:63: note: expected 'struct dentry *' but argument is of type 'struct user_namespace *'
     899 | static inline int security_inode_need_killpriv(struct dentry *dentry)
         |                                                ~~~~~~~~~~~~~~~^~~~~~
>> fs/inode.c:1921:15: error: too many arguments to function 'security_inode_need_killpriv'
    1921 |         ret = security_inode_need_killpriv(mnt_userns, dentry);
         |               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from fs/inode.c:12:
   include/linux/security.h:899:19: note: declared here
     899 | static inline int security_inode_need_killpriv(struct dentry *dentry)
         |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/security.h: In function 'security_inode_need_killpriv':
   include/linux/security.h:902:1: error: control reaches end of non-void function [-Werror=return-type]
     902 | }
         | ^
   cc1: some warnings being treated as errors
--
   In file included from fs/attr.c:17:
   include/linux/security.h: In function 'security_inode_need_killpriv':
>> include/linux/security.h:901:40: error: passing argument 1 of 'cap_inode_need_killpriv' from incompatible pointer type [-Werror=incompatible-pointer-types]
     901 |         return cap_inode_need_killpriv(dentry);
         |                                        ^~~~~~
         |                                        |
         |                                        struct dentry *
   include/linux/security.h:153:52: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |                             ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
>> include/linux/security.h:901:16: error: too few arguments to function 'cap_inode_need_killpriv'
     901 |         return cap_inode_need_killpriv(dentry);
         |                ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/security.h:153:5: note: declared here
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |     ^~~~~~~~~~~~~~~~~~~~~~~
   fs/attr.c: In function 'notify_change':
>> fs/attr.c:345:54: error: passing argument 1 of 'security_inode_need_killpriv' from incompatible pointer type [-Werror=incompatible-pointer-types]
     345 |                 error = security_inode_need_killpriv(mnt_userns, dentry);
         |                                                      ^~~~~~~~~~
         |                                                      |
         |                                                      struct user_namespace *
   In file included from fs/attr.c:17:
   include/linux/security.h:899:63: note: expected 'struct dentry *' but argument is of type 'struct user_namespace *'
     899 | static inline int security_inode_need_killpriv(struct dentry *dentry)
         |                                                ~~~~~~~~~~~~~~~^~~~~~
>> fs/attr.c:345:25: error: too many arguments to function 'security_inode_need_killpriv'
     345 |                 error = security_inode_need_killpriv(mnt_userns, dentry);
         |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from fs/attr.c:17:
   include/linux/security.h:899:19: note: declared here
     899 | static inline int security_inode_need_killpriv(struct dentry *dentry)
         |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/security.h: In function 'security_inode_need_killpriv':
   include/linux/security.h:902:1: error: control reaches end of non-void function [-Werror=return-type]
     902 | }
         | ^
   cc1: some warnings being treated as errors
--
   In file included from include/linux/perf_event.h:59,
                    from include/linux/trace_events.h:10,
                    from include/trace/syscall.h:7,
                    from include/linux/syscalls.h:88,
                    from fs/d_path.c:2:
   include/linux/security.h: In function 'security_inode_need_killpriv':
>> include/linux/security.h:901:40: error: passing argument 1 of 'cap_inode_need_killpriv' from incompatible pointer type [-Werror=incompatible-pointer-types]
     901 |         return cap_inode_need_killpriv(dentry);
         |                                        ^~~~~~
         |                                        |
         |                                        struct dentry *
   include/linux/security.h:153:52: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |                             ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
>> include/linux/security.h:901:16: error: too few arguments to function 'cap_inode_need_killpriv'
     901 |         return cap_inode_need_killpriv(dentry);
         |                ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/security.h:153:5: note: declared here
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |     ^~~~~~~~~~~~~~~~~~~~~~~
   fs/d_path.c: At top level:
   fs/d_path.c:318:7: warning: no previous prototype for 'simple_dname' [-Wmissing-prototypes]
     318 | char *simple_dname(struct dentry *dentry, char *buffer, int buflen)
         |       ^~~~~~~~~~~~
   cc1: some warnings being treated as errors
--
   In file included from kernel/trace/trace.c:20:
   include/linux/security.h: In function 'security_inode_need_killpriv':
>> include/linux/security.h:901:40: error: passing argument 1 of 'cap_inode_need_killpriv' from incompatible pointer type [-Werror=incompatible-pointer-types]
     901 |         return cap_inode_need_killpriv(dentry);
         |                                        ^~~~~~
         |                                        |
         |                                        struct dentry *
   include/linux/security.h:153:52: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |                             ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
>> include/linux/security.h:901:16: error: too few arguments to function 'cap_inode_need_killpriv'
     901 |         return cap_inode_need_killpriv(dentry);
         |                ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/security.h:153:5: note: declared here
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |     ^~~~~~~~~~~~~~~~~~~~~~~
   kernel/trace/trace.c: In function 'trace_check_vprintf':
   kernel/trace/trace.c:3813:17: warning: function 'trace_check_vprintf' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
    3813 |                 trace_seq_vprintf(&iter->seq, iter->fmt, ap);
         |                 ^~~~~~~~~~~~~~~~~
   kernel/trace/trace.c:3868:17: warning: function 'trace_check_vprintf' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
    3868 |                 trace_seq_vprintf(&iter->seq, p, ap);
         |                 ^~~~~~~~~~~~~~~~~
   At top level:
   kernel/trace/trace.c:1668:37: warning: 'tracing_max_lat_fops' defined but not used [-Wunused-const-variable=]
    1668 | static const struct file_operations tracing_max_lat_fops;
         |                                     ^~~~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors
--
   In file included from include/linux/perf_event.h:59,
                    from include/linux/hw_breakpoint.h:5,
                    from kernel/trace/trace.h:15,
                    from kernel/trace/trace_output.h:6,
                    from kernel/trace/trace_output.c:15:
   include/linux/security.h: In function 'security_inode_need_killpriv':
>> include/linux/security.h:901:40: error: passing argument 1 of 'cap_inode_need_killpriv' from incompatible pointer type [-Werror=incompatible-pointer-types]
     901 |         return cap_inode_need_killpriv(dentry);
         |                                        ^~~~~~
         |                                        |
         |                                        struct dentry *
   include/linux/security.h:153:52: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |                             ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
>> include/linux/security.h:901:16: error: too few arguments to function 'cap_inode_need_killpriv'
     901 |         return cap_inode_need_killpriv(dentry);
         |                ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/security.h:153:5: note: declared here
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |     ^~~~~~~~~~~~~~~~~~~~~~~
   kernel/trace/trace_output.c: In function 'trace_output_raw':
   kernel/trace/trace_output.c:332:9: warning: function 'trace_output_raw' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
     332 |         trace_seq_vprintf(s, trace_event_format(iter, fmt), ap);
         |         ^~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors
--
   In file included from include/linux/perf_event.h:59,
                    from include/linux/hw_breakpoint.h:5,
                    from kernel/trace/trace.h:15,
                    from kernel/trace/trace_preemptirq.c:13:
   include/linux/security.h: In function 'security_inode_need_killpriv':
>> include/linux/security.h:901:40: error: passing argument 1 of 'cap_inode_need_killpriv' from incompatible pointer type [-Werror=incompatible-pointer-types]
     901 |         return cap_inode_need_killpriv(dentry);
         |                                        ^~~~~~
         |                                        |
         |                                        struct dentry *
   include/linux/security.h:153:52: note: expected 'struct user_namespace *' but argument is of type 'struct dentry *'
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |                             ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
>> include/linux/security.h:901:16: error: too few arguments to function 'cap_inode_need_killpriv'
     901 |         return cap_inode_need_killpriv(dentry);
         |                ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/security.h:153:5: note: declared here
     153 | int cap_inode_need_killpriv(struct user_namespace *mnt_userns,
         |     ^~~~~~~~~~~~~~~~~~~~~~~
   kernel/trace/trace_preemptirq.c: At top level:
   kernel/trace/trace_preemptirq.c:88:16: warning: no previous prototype for 'trace_hardirqs_on_caller' [-Wmissing-prototypes]
      88 | __visible void trace_hardirqs_on_caller(unsigned long caller_addr)
         |                ^~~~~~~~~~~~~~~~~~~~~~~~
   kernel/trace/trace_preemptirq.c:103:16: warning: no previous prototype for 'trace_hardirqs_off_caller' [-Wmissing-prototypes]
     103 | __visible void trace_hardirqs_off_caller(unsigned long caller_addr)
         |                ^~~~~~~~~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors


vim +/cap_inode_need_killpriv +901 include/linux/security.h

^1da177e4c3f415 Linus Torvalds  2005-04-16  898  
b53767719b6cd87 Serge E. Hallyn 2007-10-16  899  static inline int security_inode_need_killpriv(struct dentry *dentry)
b53767719b6cd87 Serge E. Hallyn 2007-10-16  900  {
b53767719b6cd87 Serge E. Hallyn 2007-10-16 @901  	return cap_inode_need_killpriv(dentry);
b53767719b6cd87 Serge E. Hallyn 2007-10-16  902  }
b53767719b6cd87 Serge E. Hallyn 2007-10-16  903  

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

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 38968 bytes --]

  reply	other threads:[~2021-11-17 16:14 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-17  1:58 [PATCH v19 0/4] overlayfs override_creds=off & nested get xattr fix David Anderson
2021-11-17  1:58 ` [PATCH v19 1/4] Add flags option to get xattr method paired to __vfs_getxattr David Anderson
2021-11-17 16:13   ` kernel test robot [this message]
2021-11-17 16:13     ` kernel test robot
2022-03-25 11:02   ` Luca Weiss
2022-03-25 14:44     ` Paul Moore
2021-11-17  1:58 ` [PATCH v19 2/4] overlayfs: handle XATTR_NOSECURITY flag for get xattr method David Anderson
2021-11-17  1:58 ` [PATCH v19 3/4] overlayfs: override_creds=off option bypass creator_cred David Anderson
2021-11-17  1:58 ` [PATCH v19 4/4] overlayfs: inode_owner_or_capable called during execv David Anderson
2021-11-17  2:18 ` [PATCH v19 0/4] overlayfs override_creds=off & nested get xattr fix Casey Schaufler
2021-11-18  7:59   ` David Anderson
2021-11-17  7:36 ` Amir Goldstein
2021-11-18  9:53   ` David Anderson
2021-11-18 10:20     ` Amir Goldstein
2021-11-18 20:15       ` David Anderson
2021-11-18 20:32         ` Amir Goldstein
2021-12-03 15:37   ` Vivek Goyal
2021-12-03 16:04     ` Paul Moore
2021-12-03 16:31     ` Amir Goldstein
2021-12-03 18:34       ` Vivek Goyal
2022-03-01  1:09         ` Paul Moore
     [not found]           ` <CA+FmFJA-r+JgMqObNCvE_X+L6jxWtDrczM9Jh0L38Fq-6mnbbA@mail.gmail.com>
2022-03-09 21:13             ` Paul Moore
2022-03-10 22:11               ` Paul Moore
2022-03-11  4:09                 ` Amir Goldstein
2022-03-11 14:01                   ` Vivek Goyal
2022-03-11 20:52                     ` Paul Moore
2023-03-22  7:28                       ` Johannes Segitz
2023-03-22 12:48                         ` Amir Goldstein
2023-03-22 14:07                           ` Paul Moore
2023-03-22 14:05                         ` Paul Moore

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=202111180001.PFHtV7zw-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=darrick.wong@oracle.com \
    --cc=dsterba@suse.com \
    --cc=dvander@google.com \
    --cc=hubcap@omnibond.com \
    --cc=jack@suse.cz \
    --cc=jlayton@kernel.org \
    --cc=kbuild-all@lists.01.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-unionfs@vger.kernel.org \
    --cc=salyzyn@android.com \
    --cc=sds@tycho.nsa.gov \
    /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.