Hi Casey,
I love your patch! Yet something to improve:
[auto build test ERROR on pcmoore-audit/next]
[also build test ERROR on nf/master linus/master v5.14-rc2]
[cannot apply to nf-next/master next-20210722]
[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/Casey-Schaufler/LSM-Infrastructu...
base:
https://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit.git next
config: openrisc-randconfig-r025-20210722 (attached as .config)
compiler: or1k-linux-gcc (GCC) 10.3.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/63ea5078624b9ff368f945d654ace5f79...
git remote add linux-review
https://github.com/0day-ci/linux
git fetch --no-tags linux-review
Casey-Schaufler/LSM-Infrastructure-management-of-the-sock-security/20210722-094735
git checkout 63ea5078624b9ff368f945d654ace5f79160fb6a
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-10.3.0 make.cross O=build_dir
ARCH=openrisc SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from init/init_task.c:12:
> include/linux/audit.h:557:1: error: expected identifier or
'(' before '+' token
557 | +static inline struct audit_context
*audit_alloc_local(gfp_t gfpflags)
| ^
--
In file included from arch/openrisc/kernel/ptrace.c:23:
> include/linux/audit.h:557:1: error: expected identifier or
'(' before '+' token
557 | +static inline struct audit_context
*audit_alloc_local(gfp_t gfpflags)
| ^
arch/openrisc/kernel/ptrace.c:157:17: warning: no previous prototype for
'do_syscall_trace_enter' [-Wmissing-prototypes]
157 | asmlinkage long do_syscall_trace_enter(struct pt_regs *regs)
| ^~~~~~~~~~~~~~~~~~~~~~
arch/openrisc/kernel/ptrace.c:176:17: warning: no previous prototype for
'do_syscall_trace_leave' [-Wmissing-prototypes]
176 | asmlinkage void do_syscall_trace_leave(struct pt_regs *regs)
| ^~~~~~~~~~~~~~~~~~~~~~
--
In file included from kernel/fork.c:63:
> include/linux/audit.h:557:1: error: expected identifier or
'(' before '+' token
557 | +static inline struct audit_context
*audit_alloc_local(gfp_t gfpflags)
| ^
kernel/fork.c:162:13: warning: no previous prototype for
'arch_release_task_struct' [-Wmissing-prototypes]
162 | void __weak arch_release_task_struct(struct task_struct *tsk)
| ^~~~~~~~~~~~~~~~~~~~~~~~
kernel/fork.c:752:20: warning: no previous prototype for 'arch_task_cache_init'
[-Wmissing-prototypes]
752 | void __init __weak arch_task_cache_init(void) { }
| ^~~~~~~~~~~~~~~~~~~~
kernel/fork.c:847:12: warning: no previous prototype for 'arch_dup_task_struct'
[-Wmissing-prototypes]
847 | int __weak arch_dup_task_struct(struct task_struct *dst,
| ^~~~~~~~~~~~~~~~~~~~
--
In file included from kernel/exit.c:49:
> include/linux/audit.h:557:1: error: expected identifier or
'(' before '+' token
557 | +static inline struct audit_context
*audit_alloc_local(gfp_t gfpflags)
| ^
kernel/exit.c:1810:13: warning: no previous prototype for 'abort'
[-Wmissing-prototypes]
1810 | __weak void abort(void)
| ^~~~~
--
In file included from kernel/audit.c:51:
> include/linux/audit.h:557:1: error: expected identifier or
'(' before '+' token
557 | +static inline struct audit_context
*audit_alloc_local(gfp_t gfpflags)
| ^
kernel/audit.c:1781:14: warning: no previous prototype for 'audit_serial'
[-Wmissing-prototypes]
1781 | unsigned int audit_serial(void)
| ^~~~~~~~~~~~
kernel/audit.c: In function 'audit_log_vformat':
kernel/audit.c:1929:2: warning: function 'audit_log_vformat' might be a
candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
1929 | len = vsnprintf(skb_tail_pointer(skb), avail, fmt, args);
| ^~~
kernel/audit.c:1938:3: warning: function 'audit_log_vformat' might be a
candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
1938 | len = vsnprintf(skb_tail_pointer(skb), avail, fmt, args2);
| ^~~
--
In file included from fs/pipe.c:23:
> include/linux/audit.h:557:1: error: expected identifier or
'(' before '+' token
557 | +static inline struct audit_context
*audit_alloc_local(gfp_t gfpflags)
| ^
fs/pipe.c:741:15: warning: no previous prototype for 'account_pipe_buffers'
[-Wmissing-prototypes]
741 | unsigned long account_pipe_buffers(struct user_struct *user,
| ^~~~~~~~~~~~~~~~~~~~
fs/pipe.c:747:6: warning: no previous prototype for
'too_many_pipe_buffers_soft' [-Wmissing-prototypes]
747 | bool too_many_pipe_buffers_soft(unsigned long user_bufs)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
fs/pipe.c:754:6: warning: no previous prototype for
'too_many_pipe_buffers_hard' [-Wmissing-prototypes]
754 | bool too_many_pipe_buffers_hard(unsigned long user_bufs)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
fs/pipe.c:761:6: warning: no previous prototype for 'pipe_is_unprivileged_user'
[-Wmissing-prototypes]
761 | bool pipe_is_unprivileged_user(void)
| ^~~~~~~~~~~~~~~~~~~~~~~~~
fs/pipe.c:1231:5: warning: no previous prototype for 'pipe_resize_ring'
[-Wmissing-prototypes]
1231 | int pipe_resize_ring(struct pipe_inode_info *pipe, unsigned int nr_slots)
| ^~~~~~~~~~~~~~~~
--
In file included from include/linux/fsnotify.h:16,
from kernel/trace/trace.c:49:
> include/linux/audit.h:557:1: error: expected identifier or
'(' before '+' token
557 | +static inline struct audit_context
*audit_alloc_local(gfp_t gfpflags)
| ^
kernel/trace/trace.c: In function 'trace_check_vprintf':
kernel/trace/trace.c:3815:3: warning: function 'trace_check_vprintf' might be a
candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
3815 | trace_seq_vprintf(&iter->seq, iter->fmt, ap);
| ^~~~~~~~~~~~~~~~~
kernel/trace/trace.c:3870:3: warning: function 'trace_check_vprintf' might be a
candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
3870 | trace_seq_vprintf(&iter->seq, p, ap);
| ^~~~~~~~~~~~~~~~~
At top level:
kernel/trace/trace.c:1692:37: warning: 'tracing_max_lat_fops' defined but not
used [-Wunused-const-variable=]
1692 | static const struct file_operations tracing_max_lat_fops;
| ^~~~~~~~~~~~~~~~~~~~
--
In file included from net/socket.c:81:
> include/linux/audit.h:557:1: error: expected identifier or
'(' before '+' token
557 | +static inline struct audit_context
*audit_alloc_local(gfp_t gfpflags)
| ^
net/socket.c: In function '__sys_getsockopt':
net/socket.c:2178:6: warning: variable 'max_optlen' set but not used
[-Wunused-but-set-variable]
2178 | int max_optlen;
| ^~~~~~~~~~
vim +557 include/linux/audit.h
553
554 extern int audit_n_rules;
555 extern int audit_signals;
556 #else /* CONFIG_AUDITSYSCALL */
557 +static inline struct audit_context *audit_alloc_local(gfp_t
gfpflags)
558 {
559 return NULL;
560 }
561 static inline void audit_free_context(struct audit_context *context)
562 { }
563 static inline int audit_alloc(struct task_struct *task)
564 {
565 return 0;
566 }
567 static inline void audit_free(struct task_struct *task)
568 { }
569 static inline void audit_syscall_entry(int major, unsigned long a0,
570 unsigned long a1, unsigned long a2,
571 unsigned long a3)
572 { }
573 static inline void audit_syscall_exit(void *pt_regs)
574 { }
575 static inline bool audit_dummy_context(void)
576 {
577 return true;
578 }
579 static inline void audit_set_context(struct task_struct *task, struct audit_context
*ctx)
580 { }
581 static inline struct audit_context *audit_context(void)
582 {
583 return NULL;
584 }
585 static inline struct filename *audit_reusename(const __user char *name)
586 {
587 return NULL;
588 }
589 static inline void audit_getname(struct filename *name)
590 { }
591 static inline void audit_inode(struct filename *name,
592 const struct dentry *dentry,
593 unsigned int aflags)
594 { }
595 static inline void audit_file(struct file *file)
596 {
597 }
598 static inline void audit_inode_parent_hidden(struct filename *name,
599 const struct dentry *dentry)
600 { }
601 static inline void audit_inode_child(struct inode *parent,
602 const struct dentry *dentry,
603 const unsigned char type)
604 { }
605 static inline void audit_core_dumps(long signr)
606 { }
607 static inline void audit_seccomp(unsigned long syscall, long signr, int code)
608 { }
609 static inline void audit_seccomp_actions_logged(const char *names,
610 const char *old_names, int res)
611 { }
612 static inline void audit_ipc_obj(struct kern_ipc_perm *ipcp)
613 { }
614 static inline void audit_ipc_set_perm(unsigned long qbytes, uid_t uid,
615 gid_t gid, umode_t mode)
616 { }
617 static inline void audit_bprm(struct linux_binprm *bprm)
618 { }
619 static inline int audit_socketcall(int nargs, unsigned long *args)
620 {
621 return 0;
622 }
623
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org