Hi Casey,
I love your patch! Yet something to improve:
[auto build test ERROR on nf/master]
[also build test ERROR on linus/master v5.10-rc4 next-20201120]
[cannot apply to nf-next/master 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/Casey-Schaufler/LSM-Module-stack...
base:
https://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf.git master
config: x86_64-randconfig-a015-20201120 (attached as .config)
compiler: clang version 12.0.0 (
https://github.com/llvm/llvm-project
3ded927cf80ac519f9f9c4664fef08787f7c537d)
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
# install x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
#
https://github.com/0day-ci/linux/commit/3b464b0251cffe5ac73c81b701fd8d146...
git remote add linux-review
https://github.com/0day-ci/linux
git fetch --no-tags linux-review
Casey-Schaufler/LSM-Module-stacking-for-AppArmor/20201121-044616
git checkout 3b464b0251cffe5ac73c81b701fd8d146664a7a3
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
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 drivers/net/gtp.c:30:
In file included from include/net/xfrm.h:15:
> include/linux/audit.h:563:1: error: expected external declaration
+static inline struct audit_context *audit_alloc_local(gfp_t gfpflags)
^
1 error generated.
--
In file included from drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:40:
In file included from include/net/xfrm.h:15:
> include/linux/audit.h:563:1: error: expected external declaration
+static inline struct audit_context *audit_alloc_local(gfp_t gfpflags)
^
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8108:14: warning: division by zero is
undefined [-Wdivision-by-zero]
cmd_type |= IXGBE_SET_FLAG(tx_flags, IXGBE_TX_FLAGS_HW_VLAN,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8098:26: note: expanded from macro
'IXGBE_SET_FLAG'
((u32)(_input & _flag) / (_flag / _result)))
^ ~~~~~~~~~~~~~~~~~
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8112:14: warning: division by zero is
undefined [-Wdivision-by-zero]
cmd_type |= IXGBE_SET_FLAG(tx_flags, IXGBE_TX_FLAGS_TSO,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8098:26: note: expanded from macro
'IXGBE_SET_FLAG'
((u32)(_input & _flag) / (_flag / _result)))
^ ~~~~~~~~~~~~~~~~~
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8116:14: warning: division by zero is
undefined [-Wdivision-by-zero]
cmd_type |= IXGBE_SET_FLAG(tx_flags, IXGBE_TX_FLAGS_TSTAMP,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8098:26: note: expanded from macro
'IXGBE_SET_FLAG'
((u32)(_input & _flag) / (_flag / _result)))
^ ~~~~~~~~~~~~~~~~~
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8120:14: warning: division by zero is
undefined [-Wdivision-by-zero]
cmd_type ^= IXGBE_SET_FLAG(skb->no_fcs, 1, IXGBE_ADVTXD_DCMD_IFCS);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8098:26: note: expanded from macro
'IXGBE_SET_FLAG'
((u32)(_input & _flag) / (_flag / _result)))
^ ~~~~~~~~~~~~~~~~~
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8131:19: warning: division by zero is
undefined [-Wdivision-by-zero]
olinfo_status |= IXGBE_SET_FLAG(tx_flags,
^~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8098:26: note: expanded from macro
'IXGBE_SET_FLAG'
((u32)(_input & _flag) / (_flag / _result)))
^ ~~~~~~~~~~~~~~~~~
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8136:19: warning: division by zero is
undefined [-Wdivision-by-zero]
olinfo_status |= IXGBE_SET_FLAG(tx_flags,
^~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8098:26: note: expanded from macro
'IXGBE_SET_FLAG'
((u32)(_input & _flag) / (_flag / _result)))
^ ~~~~~~~~~~~~~~~~~
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8141:19: warning: division by zero is
undefined [-Wdivision-by-zero]
olinfo_status |= IXGBE_SET_FLAG(tx_flags,
^~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8098:26: note: expanded from macro
'IXGBE_SET_FLAG'
((u32)(_input & _flag) / (_flag / _result)))
^ ~~~~~~~~~~~~~~~~~
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8149:19: warning: division by zero is
undefined [-Wdivision-by-zero]
olinfo_status |= IXGBE_SET_FLAG(tx_flags,
^~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8098:26: note: expanded from macro
'IXGBE_SET_FLAG'
((u32)(_input & _flag) / (_flag / _result)))
^ ~~~~~~~~~~~~~~~~~
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:10621:45: warning: shift count >=
width of type [-Wshift-count-overflow]
if (!dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64))) {
^~~~~~~~~~~~~~~~
include/linux/dma-mapping.h:76:54: note: expanded from macro 'DMA_BIT_MASK'
#define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1))
^ ~~~
9 warnings and 1 error generated.
--
In file included from drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c:33:
In file included from include/net/xfrm.h:15:
> include/linux/audit.h:563:1: error: expected external declaration
+static inline struct audit_context *audit_alloc_local(gfp_t gfpflags)
^
drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c:4529:45: warning: shift count >=
width of type [-Wshift-count-overflow]
if (!dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64))) {
^~~~~~~~~~~~~~~~
include/linux/dma-mapping.h:76:54: note: expanded from macro 'DMA_BIT_MASK'
#define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1))
^ ~~~
1 warning and 1 error generated.
vim +563 include/linux/audit.h
559
560 extern int audit_n_rules;
561 extern int audit_signals;
562 #else /* CONFIG_AUDITSYSCALL */
563 +static inline struct audit_context *audit_alloc_local(gfp_t
gfpflags)
564 {
565 return NULL;
566 }
567 static inline void audit_free_context(struct audit_context *context)
568 { }
569 static inline int audit_alloc(struct task_struct *task)
570 {
571 return 0;
572 }
573 static inline void audit_free(struct task_struct *task)
574 { }
575 static inline void audit_syscall_entry(int major, unsigned long a0,
576 unsigned long a1, unsigned long a2,
577 unsigned long a3)
578 { }
579 static inline void audit_syscall_exit(void *pt_regs)
580 { }
581 static inline bool audit_dummy_context(void)
582 {
583 return true;
584 }
585 static inline void audit_set_context(struct task_struct *task, struct audit_context
*ctx)
586 { }
587 static inline struct audit_context *audit_context(void)
588 {
589 return NULL;
590 }
591 static inline struct filename *audit_reusename(const __user char *name)
592 {
593 return NULL;
594 }
595 static inline void audit_getname(struct filename *name)
596 { }
597 static inline void audit_getcwd(void)
598 { }
599 static inline void audit_inode(struct filename *name,
600 const struct dentry *dentry,
601 unsigned int aflags)
602 { }
603 static inline void audit_file(struct file *file)
604 {
605 }
606 static inline void audit_inode_parent_hidden(struct filename *name,
607 const struct dentry *dentry)
608 { }
609 static inline void audit_inode_child(struct inode *parent,
610 const struct dentry *dentry,
611 const unsigned char type)
612 { }
613 static inline void audit_core_dumps(long signr)
614 { }
615 static inline void audit_seccomp(unsigned long syscall, long signr, int code)
616 { }
617 static inline void audit_seccomp_actions_logged(const char *names,
618 const char *old_names, int res)
619 { }
620 static inline void audit_ipc_obj(struct kern_ipc_perm *ipcp)
621 { }
622 static inline void audit_ipc_set_perm(unsigned long qbytes, uid_t uid,
623 gid_t gid, umode_t mode)
624 { }
625 static inline void audit_bprm(struct linux_binprm *bprm)
626 { }
627 static inline int audit_socketcall(int nargs, unsigned long *args)
628 {
629 return 0;
630 }
631
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org