[luto:x86/kentry 10/10] kernel/entry/common.c:60:6: warning: no previous prototype for function 'kentry_assert_may_instrument'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/luto/linux.git x86/kentry
head: b0d7a5e5a9b11a6ddb50b90e31877e3cb1f93362
commit: b0d7a5e5a9b11a6ddb50b90e31877e3cb1f93362 [10/10] kentry: Verify kentry state in instrumentation_begin/end()
config: s390-randconfig-r022-20210321 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 14696baaf4c43fe53f738bc292bbe169eed93d5d)
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 s390 cross compiling tool for clang build
# apt-get install binutils-s390x-linux-gnu
# https://git.kernel.org/pub/scm/linux/kernel/git/luto/linux.git/commit/?id...
git remote add luto https://git.kernel.org/pub/scm/linux/kernel/git/luto/linux.git
git fetch --no-tags luto x86/kentry
git checkout b0d7a5e5a9b11a6ddb50b90e31877e3cb1f93362
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=s390
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
In file included from kernel/entry/common.c:4:
In file included from include/linux/entry-common.h:6:
In file included from include/linux/tracehook.h:50:
In file included from include/linux/memcontrol.h:22:
In file included from include/linux/writeback.h:14:
In file included from include/linux/blk-cgroup.h:23:
In file included from include/linux/blkdev.h:26:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:80:
include/asm-generic/io.h:464:31: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __raw_readb(PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:477:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le16_to_cpu((__le16 __force)__raw_readw(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:36:59: note: expanded from macro '__le16_to_cpu'
#define __le16_to_cpu(x) __swab16((__force __u16)(__le16)(x))
^
include/uapi/linux/swab.h:102:54: note: expanded from macro '__swab16'
#define __swab16(x) (__u16)__builtin_bswap16((__u16)(x))
^
In file included from kernel/entry/common.c:4:
In file included from include/linux/entry-common.h:6:
In file included from include/linux/tracehook.h:50:
In file included from include/linux/memcontrol.h:22:
In file included from include/linux/writeback.h:14:
In file included from include/linux/blk-cgroup.h:23:
In file included from include/linux/blkdev.h:26:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:80:
include/asm-generic/io.h:490:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu((__le32 __force)__raw_readl(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu'
#define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x))
^
include/uapi/linux/swab.h:115:54: note: expanded from macro '__swab32'
#define __swab32(x) (__u32)__builtin_bswap32((__u32)(x))
^
In file included from kernel/entry/common.c:4:
In file included from include/linux/entry-common.h:6:
In file included from include/linux/tracehook.h:50:
In file included from include/linux/memcontrol.h:22:
In file included from include/linux/writeback.h:14:
In file included from include/linux/blk-cgroup.h:23:
In file included from include/linux/blkdev.h:26:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:80:
include/asm-generic/io.h:501:33: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writeb(value, PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:511:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writew((u16 __force)cpu_to_le16(value), PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:521:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writel((u32 __force)cpu_to_le32(value), PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:609:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsb(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:617:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsw(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:625:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsl(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:634:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesb(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:643:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesw(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:652:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesl(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
>> kernel/entry/common.c:60:6: warning: no previous prototype for function 'kentry_assert_may_instrument' [-Wmissing-prototypes]
void kentry_assert_may_instrument(void)
^
kernel/entry/common.c:60:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void kentry_assert_may_instrument(void)
^
static
13 warnings generated.
vim +/kentry_assert_may_instrument +60 kernel/entry/common.c
59
> 60 void kentry_assert_may_instrument(void)
61 {
62 DEBUG_ENTRY_WARN_ONCE(this_cpu_read(kentry_cpu_depth) == 0, "instrumentable code is running in the wrong kentry state");
63 }
64 EXPORT_SYMBOL_GPL(kentry_assert_may_instrument);
65
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 6 months
Re: [PATCH v3 net-next 03/12] net: dsa: inherit the actual bridge port flags at join time
by kernel test robot
Hi Vladimir,
I love your patch! Perhaps something to improve:
[auto build test WARNING on net-next/master]
url: https://github.com/0day-ci/linux/commits/Vladimir-Oltean/Better-support-f...
base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git d773b7957e4fd7b732a163df0e59d31ad4237302
config: arm64-randconfig-r021-20210321 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 14696baaf4c43fe53f738bc292bbe169eed93d5d)
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 arm64 cross compiling tool for clang build
# apt-get install binutils-aarch64-linux-gnu
# https://github.com/0day-ci/linux/commit/3aac17167e3de0aeaf5287f9d586725bd...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Vladimir-Oltean/Better-support-for-sandwiched-LAGs-with-bridge-and-DSA/20210321-063842
git checkout 3aac17167e3de0aeaf5287f9d586725bdc7495a5
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> net/dsa/port.c:167:5: warning: format specifies type 'int' but the argument has type 'unsigned long' [-Wformat]
flags.val, err, ERR_PTR(err));
^~~~~~~~~
include/linux/dev_printk.h:112:32: note: expanded from macro 'dev_err'
_dev_err(dev, dev_fmt(fmt), ##__VA_ARGS__)
~~~ ^~~~~~~~~~~
1 warning generated.
vim +167 net/dsa/port.c
148
149 static void dsa_port_clear_brport_flags(struct dsa_port *dp,
150 struct netlink_ext_ack *extack)
151 {
152 const unsigned long val = BR_FLOOD | BR_MCAST_FLOOD | BR_BCAST_FLOOD;
153 const unsigned long mask = BR_LEARNING | BR_FLOOD | BR_MCAST_FLOOD |
154 BR_BCAST_FLOOD;
155 int flag, err;
156
157 for_each_set_bit(flag, &mask, 32) {
158 struct switchdev_brport_flags flags = {0};
159
160 flags.mask = BIT(flag);
161 flags.val = val & BIT(flag);
162
163 err = dsa_port_bridge_flags(dp, flags, extack);
164 if (err && err != -EOPNOTSUPP)
165 dev_err(dp->ds->dev,
166 "failed to clear bridge port flag %d: %d (%pe)\n",
> 167 flags.val, err, ERR_PTR(err));
168 }
169 }
170
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 6 months
[luto:x86/kentry 1/10] arch/s390/kernel/traps.c:300:2: error: unknown type name 'irqentry_state_t'; did you mean
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/luto/linux.git x86/kentry
head: b0d7a5e5a9b11a6ddb50b90e31877e3cb1f93362
commit: 5dcab84f1c3db061936e3d79f78222f9e89a33e2 [1/10] kentry: Rename irqentry to kentry
config: s390-randconfig-r011-20210321 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 14696baaf4c43fe53f738bc292bbe169eed93d5d)
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 s390 cross compiling tool for clang build
# apt-get install binutils-s390x-linux-gnu
# https://git.kernel.org/pub/scm/linux/kernel/git/luto/linux.git/commit/?id...
git remote add luto https://git.kernel.org/pub/scm/linux/kernel/git/luto/linux.git
git fetch --no-tags luto x86/kentry
git checkout 5dcab84f1c3db061936e3d79f78222f9e89a33e2
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=s390
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 arch/s390/kernel/traps.c:28:
In file included from include/linux/entry-common.h:6:
In file included from include/linux/tracehook.h:50:
In file included from include/linux/memcontrol.h:22:
In file included from include/linux/writeback.h:14:
In file included from include/linux/blk-cgroup.h:23:
In file included from include/linux/blkdev.h:26:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:80:
include/asm-generic/io.h:464:31: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __raw_readb(PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:477:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le16_to_cpu((__le16 __force)__raw_readw(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:36:59: note: expanded from macro '__le16_to_cpu'
#define __le16_to_cpu(x) __swab16((__force __u16)(__le16)(x))
^
include/uapi/linux/swab.h:102:54: note: expanded from macro '__swab16'
#define __swab16(x) (__u16)__builtin_bswap16((__u16)(x))
^
In file included from arch/s390/kernel/traps.c:28:
In file included from include/linux/entry-common.h:6:
In file included from include/linux/tracehook.h:50:
In file included from include/linux/memcontrol.h:22:
In file included from include/linux/writeback.h:14:
In file included from include/linux/blk-cgroup.h:23:
In file included from include/linux/blkdev.h:26:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:80:
include/asm-generic/io.h:490:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu((__le32 __force)__raw_readl(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu'
#define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x))
^
include/uapi/linux/swab.h:115:54: note: expanded from macro '__swab32'
#define __swab32(x) (__u32)__builtin_bswap32((__u32)(x))
^
In file included from arch/s390/kernel/traps.c:28:
In file included from include/linux/entry-common.h:6:
In file included from include/linux/tracehook.h:50:
In file included from include/linux/memcontrol.h:22:
In file included from include/linux/writeback.h:14:
In file included from include/linux/blk-cgroup.h:23:
In file included from include/linux/blkdev.h:26:
In file included from include/linux/scatterlist.h:9:
In file included from arch/s390/include/asm/io.h:80:
include/asm-generic/io.h:501:33: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writeb(value, PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:511:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writew((u16 __force)cpu_to_le16(value), PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:521:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writel((u32 __force)cpu_to_le32(value), PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:609:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsb(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:617:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsw(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:625:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsl(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:634:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesb(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:643:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesw(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:652:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesl(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
>> arch/s390/kernel/traps.c:300:2: error: unknown type name 'irqentry_state_t'; did you mean 'kentry_state_t'?
irqentry_state_t state;
^~~~~~~~~~~~~~~~
kentry_state_t
include/linux/entry-common.h:416:3: note: 'kentry_state_t' declared here
} kentry_state_t;
^
>> arch/s390/kernel/traps.c:305:10: error: implicit declaration of function 'irqentry_enter' [-Werror,-Wimplicit-function-declaration]
state = irqentry_enter(regs);
^
arch/s390/kernel/traps.c:305:10: note: did you mean 'kentry_enter'?
include/linux/entry-common.h:450:24: note: 'kentry_enter' declared here
kentry_state_t noinstr kentry_enter(struct pt_regs *regs);
^
>> arch/s390/kernel/traps.c:305:8: error: assigning to 'kentry_state_t' (aka 'struct kentry_state') from incompatible type 'int'
state = irqentry_enter(regs);
^ ~~~~~~~~~~~~~~~~~~~~
>> arch/s390/kernel/traps.c:346:2: error: implicit declaration of function 'irqentry_exit' [-Werror,-Wimplicit-function-declaration]
irqentry_exit(regs, state);
^
arch/s390/kernel/traps.c:346:2: note: did you mean 'kentry_exit'?
include/linux/entry-common.h:476:14: note: 'kentry_exit' declared here
void noinstr kentry_exit(struct pt_regs *regs, kentry_state_t state);
^
12 warnings and 4 errors generated.
--
In file included from arch/s390/kernel/irq.c:23:
In file included from include/linux/irq.h:20:
In file included from include/linux/io.h:13:
In file included from arch/s390/include/asm/io.h:80:
include/asm-generic/io.h:464:31: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __raw_readb(PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:477:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le16_to_cpu((__le16 __force)__raw_readw(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:36:59: note: expanded from macro '__le16_to_cpu'
#define __le16_to_cpu(x) __swab16((__force __u16)(__le16)(x))
^
include/uapi/linux/swab.h:102:54: note: expanded from macro '__swab16'
#define __swab16(x) (__u16)__builtin_bswap16((__u16)(x))
^
In file included from arch/s390/kernel/irq.c:23:
In file included from include/linux/irq.h:20:
In file included from include/linux/io.h:13:
In file included from arch/s390/include/asm/io.h:80:
include/asm-generic/io.h:490:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu((__le32 __force)__raw_readl(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu'
#define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x))
^
include/uapi/linux/swab.h:115:54: note: expanded from macro '__swab32'
#define __swab32(x) (__u32)__builtin_bswap32((__u32)(x))
^
In file included from arch/s390/kernel/irq.c:23:
In file included from include/linux/irq.h:20:
In file included from include/linux/io.h:13:
In file included from arch/s390/include/asm/io.h:80:
include/asm-generic/io.h:501:33: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writeb(value, PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:511:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writew((u16 __force)cpu_to_le16(value), PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:521:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writel((u32 __force)cpu_to_le32(value), PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:609:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsb(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:617:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsw(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:625:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsl(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:634:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesb(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:643:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesw(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:652:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesl(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
>> arch/s390/kernel/irq.c:135:2: error: unknown type name 'irqentry_state_t'; did you mean 'kentry_state_t'?
irqentry_state_t state = irqentry_enter(regs);
^~~~~~~~~~~~~~~~
kentry_state_t
include/linux/entry-common.h:416:3: note: 'kentry_state_t' declared here
} kentry_state_t;
^
>> arch/s390/kernel/irq.c:135:27: error: implicit declaration of function 'irqentry_enter' [-Werror,-Wimplicit-function-declaration]
irqentry_state_t state = irqentry_enter(regs);
^
arch/s390/kernel/irq.c:135:27: note: did you mean 'kentry_enter'?
include/linux/entry-common.h:450:24: note: 'kentry_enter' declared here
kentry_state_t noinstr kentry_enter(struct pt_regs *regs);
^
>> arch/s390/kernel/irq.c:135:19: error: initializing 'kentry_state_t' (aka 'struct kentry_state') with an expression of incompatible type 'int'
irqentry_state_t state = irqentry_enter(regs);
^ ~~~~~~~~~~~~~~~~~~~~
>> arch/s390/kernel/irq.c:158:2: error: implicit declaration of function 'irqentry_exit' [-Werror,-Wimplicit-function-declaration]
irqentry_exit(regs, state);
^
arch/s390/kernel/irq.c:158:2: note: did you mean 'kentry_exit'?
include/linux/entry-common.h:476:14: note: 'kentry_exit' declared here
void noinstr kentry_exit(struct pt_regs *regs, kentry_state_t state);
^
arch/s390/kernel/irq.c:166:2: error: unknown type name 'irqentry_state_t'; did you mean 'kentry_state_t'?
irqentry_state_t state = irqentry_enter(regs);
^~~~~~~~~~~~~~~~
kentry_state_t
include/linux/entry-common.h:416:3: note: 'kentry_state_t' declared here
} kentry_state_t;
^
arch/s390/kernel/irq.c:166:27: error: implicit declaration of function 'irqentry_enter' [-Werror,-Wimplicit-function-declaration]
irqentry_state_t state = irqentry_enter(regs);
^
arch/s390/kernel/irq.c:166:19: error: initializing 'kentry_state_t' (aka 'struct kentry_state') with an expression of incompatible type 'int'
irqentry_state_t state = irqentry_enter(regs);
^ ~~~~~~~~~~~~~~~~~~~~
arch/s390/kernel/irq.c:187:2: error: implicit declaration of function 'irqentry_exit' [-Werror,-Wimplicit-function-declaration]
irqentry_exit(regs, state);
^
12 warnings and 8 errors generated.
vim +300 arch/s390/kernel/traps.c
56e62a73702836 Sven Schnelle 2020-11-21 295
56e62a73702836 Sven Schnelle 2020-11-21 296 void noinstr __do_pgm_check(struct pt_regs *regs)
56e62a73702836 Sven Schnelle 2020-11-21 297 {
56e62a73702836 Sven Schnelle 2020-11-21 298 unsigned long last_break = S390_lowcore.breaking_event_addr;
56e62a73702836 Sven Schnelle 2020-11-21 299 unsigned int trapnr, syscall_redirect = 0;
56e62a73702836 Sven Schnelle 2020-11-21 @300 irqentry_state_t state;
56e62a73702836 Sven Schnelle 2020-11-21 301
56e62a73702836 Sven Schnelle 2020-11-21 302 regs->int_code = *(u32 *)&S390_lowcore.pgm_ilc;
56e62a73702836 Sven Schnelle 2020-11-21 303 regs->int_parm_long = S390_lowcore.trans_exc_code;
56e62a73702836 Sven Schnelle 2020-11-21 304
56e62a73702836 Sven Schnelle 2020-11-21 @305 state = irqentry_enter(regs);
56e62a73702836 Sven Schnelle 2020-11-21 306
56e62a73702836 Sven Schnelle 2020-11-21 307 if (user_mode(regs)) {
56e62a73702836 Sven Schnelle 2020-11-21 308 update_timer_sys();
56e62a73702836 Sven Schnelle 2020-11-21 309 if (last_break < 4096)
56e62a73702836 Sven Schnelle 2020-11-21 310 last_break = 1;
56e62a73702836 Sven Schnelle 2020-11-21 311 current->thread.last_break = last_break;
56e62a73702836 Sven Schnelle 2020-11-21 312 regs->args[0] = last_break;
56e62a73702836 Sven Schnelle 2020-11-21 313 }
56e62a73702836 Sven Schnelle 2020-11-21 314
56e62a73702836 Sven Schnelle 2020-11-21 315 if (S390_lowcore.pgm_code & 0x0200) {
56e62a73702836 Sven Schnelle 2020-11-21 316 /* transaction abort */
56e62a73702836 Sven Schnelle 2020-11-21 317 memcpy(¤t->thread.trap_tdb, &S390_lowcore.pgm_tdb, 256);
56e62a73702836 Sven Schnelle 2020-11-21 318 }
56e62a73702836 Sven Schnelle 2020-11-21 319
56e62a73702836 Sven Schnelle 2020-11-21 320 if (S390_lowcore.pgm_code & PGM_INT_CODE_PER) {
56e62a73702836 Sven Schnelle 2020-11-21 321 if (user_mode(regs)) {
56e62a73702836 Sven Schnelle 2020-11-21 322 struct per_event *ev = ¤t->thread.per_event;
56e62a73702836 Sven Schnelle 2020-11-21 323
56e62a73702836 Sven Schnelle 2020-11-21 324 set_thread_flag(TIF_PER_TRAP);
56e62a73702836 Sven Schnelle 2020-11-21 325 ev->address = S390_lowcore.per_address;
56e62a73702836 Sven Schnelle 2020-11-21 326 ev->cause = *(u16 *)&S390_lowcore.per_code;
56e62a73702836 Sven Schnelle 2020-11-21 327 ev->paid = S390_lowcore.per_access_id;
56e62a73702836 Sven Schnelle 2020-11-21 328 } else {
56e62a73702836 Sven Schnelle 2020-11-21 329 /* PER event in kernel is kprobes */
56e62a73702836 Sven Schnelle 2020-11-21 330 __arch_local_irq_ssm(regs->psw.mask & ~PSW_MASK_PER);
56e62a73702836 Sven Schnelle 2020-11-21 331 do_per_trap(regs);
56e62a73702836 Sven Schnelle 2020-11-21 332 goto out;
56e62a73702836 Sven Schnelle 2020-11-21 333 }
56e62a73702836 Sven Schnelle 2020-11-21 334 }
56e62a73702836 Sven Schnelle 2020-11-21 335
56e62a73702836 Sven Schnelle 2020-11-21 336 if (!irqs_disabled_flags(regs->psw.mask))
56e62a73702836 Sven Schnelle 2020-11-21 337 trace_hardirqs_on();
56e62a73702836 Sven Schnelle 2020-11-21 338 __arch_local_irq_ssm(regs->psw.mask & ~PSW_MASK_PER);
56e62a73702836 Sven Schnelle 2020-11-21 339
56e62a73702836 Sven Schnelle 2020-11-21 340 trapnr = regs->int_code & PGM_INT_CODE_MASK;
56e62a73702836 Sven Schnelle 2020-11-21 341 if (trapnr)
56e62a73702836 Sven Schnelle 2020-11-21 342 pgm_check_table[trapnr](regs);
56e62a73702836 Sven Schnelle 2020-11-21 343 syscall_redirect = user_mode(regs) && test_pt_regs_flag(regs, PIF_SYSCALL);
56e62a73702836 Sven Schnelle 2020-11-21 344 out:
56e62a73702836 Sven Schnelle 2020-11-21 345 local_irq_disable();
56e62a73702836 Sven Schnelle 2020-11-21 @346 irqentry_exit(regs, state);
:::::: The code at line 300 was first introduced by commit
:::::: 56e62a73702836017564eaacd5212e4d0fa1c01d s390: convert to generic entry
:::::: TO: Sven Schnelle <svens(a)linux.ibm.com>
:::::: CC: Vasily Gorbik <gor(a)linux.ibm.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 6 months
[luto:x86/fixes 6/13] arch/x86/mm/tlb.c:537:34: error: 'struct mm_struct' has no member named 'membarrier_state'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/luto/linux.git x86/fixes
head: 825cc79966034d2ab820a693fcb3b84565edd715
commit: 1efb7df703ce743e6d78c978ccabc0e0e787b4ea [6/13] x86/mm: Handle unlazying membarrier core sync in the arch code
config: x86_64-randconfig-r005-20210321 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://git.kernel.org/pub/scm/linux/kernel/git/luto/linux.git/commit/?id...
git remote add luto https://git.kernel.org/pub/scm/linux/kernel/git/luto/linux.git
git fetch --no-tags luto x86/fixes
git checkout 1efb7df703ce743e6d78c978ccabc0e0e787b4ea
# save the attached .config to linux build tree
make W=1 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 include/linux/init.h:5,
from arch/x86/mm/tlb.c:2:
arch/x86/mm/tlb.c: In function 'switch_mm_irqs_off':
>> arch/x86/mm/tlb.c:537:34: error: 'struct mm_struct' has no member named 'membarrier_state'
537 | if (unlikely(atomic_read(&next->membarrier_state) &
| ^~
include/linux/compiler.h:33:34: note: in definition of macro '__branch_check__'
33 | ______r = __builtin_expect(!!(x), expect); \
| ^
arch/x86/mm/tlb.c:537:8: note: in expansion of macro 'unlikely'
537 | if (unlikely(atomic_read(&next->membarrier_state) &
| ^~~~~~~~
>> arch/x86/mm/tlb.c:538:10: error: 'MEMBARRIER_STATE_PRIVATE_EXPEDITED_SYNC_CORE' undeclared (first use in this function)
538 | MEMBARRIER_STATE_PRIVATE_EXPEDITED_SYNC_CORE))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/compiler.h:33:34: note: in definition of macro '__branch_check__'
33 | ______r = __builtin_expect(!!(x), expect); \
| ^
arch/x86/mm/tlb.c:537:8: note: in expansion of macro 'unlikely'
537 | if (unlikely(atomic_read(&next->membarrier_state) &
| ^~~~~~~~
arch/x86/mm/tlb.c:538:10: note: each undeclared identifier is reported only once for each function it appears in
538 | MEMBARRIER_STATE_PRIVATE_EXPEDITED_SYNC_CORE))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/compiler.h:33:34: note: in definition of macro '__branch_check__'
33 | ______r = __builtin_expect(!!(x), expect); \
| ^
arch/x86/mm/tlb.c:537:8: note: in expansion of macro 'unlikely'
537 | if (unlikely(atomic_read(&next->membarrier_state) &
| ^~~~~~~~
>> arch/x86/mm/tlb.c:537:34: error: 'struct mm_struct' has no member named 'membarrier_state'
537 | if (unlikely(atomic_read(&next->membarrier_state) &
| ^~
include/linux/compiler.h:35:19: note: in definition of macro '__branch_check__'
35 | expect, is_constant); \
| ^~~~~~~~~~~
arch/x86/mm/tlb.c:537:8: note: in expansion of macro 'unlikely'
537 | if (unlikely(atomic_read(&next->membarrier_state) &
| ^~~~~~~~
vim +537 arch/x86/mm/tlb.c
422
423 void switch_mm_irqs_off(struct mm_struct *prev, struct mm_struct *next,
424 struct task_struct *tsk)
425 {
426 struct mm_struct *real_prev = this_cpu_read(cpu_tlbstate.loaded_mm);
427 u16 prev_asid = this_cpu_read(cpu_tlbstate.loaded_mm_asid);
428 bool was_lazy = this_cpu_read(cpu_tlbstate.is_lazy);
429 unsigned cpu = smp_processor_id();
430 u64 next_tlb_gen;
431 bool need_flush;
432 u16 new_asid;
433
434 /*
435 * NB: The scheduler will call us with prev == next when switching
436 * from lazy TLB mode to normal mode if active_mm isn't changing.
437 * When this happens, we don't assume that CR3 (and hence
438 * cpu_tlbstate.loaded_mm) matches next.
439 *
440 * NB: leave_mm() calls us with prev == NULL and tsk == NULL.
441 */
442
443 /* We don't want flush_tlb_func_* to run concurrently with us. */
444 if (IS_ENABLED(CONFIG_PROVE_LOCKING))
445 WARN_ON_ONCE(!irqs_disabled());
446
447 /*
448 * Verify that CR3 is what we think it is. This will catch
449 * hypothetical buggy code that directly switches to swapper_pg_dir
450 * without going through leave_mm() / switch_mm_irqs_off() or that
451 * does something like write_cr3(read_cr3_pa()).
452 *
453 * Only do this check if CONFIG_DEBUG_VM=y because __read_cr3()
454 * isn't free.
455 */
456 #ifdef CONFIG_DEBUG_VM
457 if (WARN_ON_ONCE(__read_cr3() != build_cr3(real_prev->pgd, prev_asid))) {
458 /*
459 * If we were to BUG here, we'd be very likely to kill
460 * the system so hard that we don't see the call trace.
461 * Try to recover instead by ignoring the error and doing
462 * a global flush to minimize the chance of corruption.
463 *
464 * (This is far from being a fully correct recovery.
465 * Architecturally, the CPU could prefetch something
466 * back into an incorrect ASID slot and leave it there
467 * to cause trouble down the road. It's better than
468 * nothing, though.)
469 */
470 __flush_tlb_all();
471 }
472 #endif
473 this_cpu_write(cpu_tlbstate.is_lazy, false);
474
475 /*
476 * membarrier() support requires that, when we change rq->curr->mm:
477 *
478 * - If next->mm has membarrier registered, a full memory barrier
479 * after writing rq->curr (or rq->curr->mm if we switched the mm
480 * without switching tasks) and before returning to user mode.
481 *
482 * - If next->mm has SYNC_CORE registered, then we sync core before
483 * returning to user mode.
484 *
485 * In the case where prev->mm == next->mm, membarrier() uses an IPI
486 * instead, and no particular barriers are needed while context
487 * switching.
488 *
489 * x86 gets all of this as a side-effect of writing to CR3 except
490 * in the case where we unlazy without flushing.
491 *
492 * All other architectures are civilized and do all of this implicitly
493 * when transitioning from kernel to user mode.
494 */
495 if (real_prev == next) {
496 VM_WARN_ON(this_cpu_read(cpu_tlbstate.ctxs[prev_asid].ctx_id) !=
497 next->context.ctx_id);
498
499 /*
500 * Even in lazy TLB mode, the CPU should stay set in the
501 * mm_cpumask. The TLB shootdown code can figure out from
502 * from cpu_tlbstate.is_lazy whether or not to send an IPI.
503 */
504 if (WARN_ON_ONCE(real_prev != &init_mm &&
505 !cpumask_test_cpu(cpu, mm_cpumask(next))))
506 cpumask_set_cpu(cpu, mm_cpumask(next));
507
508 /*
509 * If the CPU is not in lazy TLB mode, we are just switching
510 * from one thread in a process to another thread in the same
511 * process. No TLB flush or membarrier() synchronization
512 * is required.
513 */
514 if (!was_lazy)
515 return;
516
517 /*
518 * Read the tlb_gen to check whether a flush is needed.
519 * If the TLB is up to date, just use it.
520 * The barrier synchronizes with the tlb_gen increment in
521 * the TLB shootdown code.
522 *
523 * As a future optimization opportunity, it's plausible
524 * that the x86 memory model is strong enough that this
525 * smp_mb() isn't needed.
526 */
527 smp_mb();
528 next_tlb_gen = atomic64_read(&next->context.tlb_gen);
529 if (this_cpu_read(cpu_tlbstate.ctxs[prev_asid].tlb_gen) ==
530 next_tlb_gen) {
531 /*
532 * We switched logical mm but we're not going to
533 * write to CR3. We already did smp_mb() above,
534 * but membarrier() might require a sync_core()
535 * as well.
536 */
> 537 if (unlikely(atomic_read(&next->membarrier_state) &
> 538 MEMBARRIER_STATE_PRIVATE_EXPEDITED_SYNC_CORE))
539 sync_core_before_usermode();
540
541 return;
542 }
543
544 /*
545 * TLB contents went out of date while we were in lazy
546 * mode. Fall through to the TLB switching code below.
547 * No need for an explicit membarrier invocation -- the CR3
548 * write will serialize.
549 */
550 new_asid = prev_asid;
551 need_flush = true;
552 } else {
553 /*
554 * Avoid user/user BTB poisoning by flushing the branch
555 * predictor when switching between processes. This stops
556 * one process from doing Spectre-v2 attacks on another.
557 */
558 cond_ibpb(tsk);
559
560 /*
561 * Stop remote flushes for the previous mm.
562 * Skip kernel threads; we never send init_mm TLB flushing IPIs,
563 * but the bitmap manipulation can cause cache line contention.
564 */
565 if (real_prev != &init_mm) {
566 VM_WARN_ON_ONCE(!cpumask_test_cpu(cpu,
567 mm_cpumask(real_prev)));
568 cpumask_clear_cpu(cpu, mm_cpumask(real_prev));
569 }
570
571 /*
572 * Start remote flushes and then read tlb_gen.
573 */
574 if (next != &init_mm)
575 cpumask_set_cpu(cpu, mm_cpumask(next));
576 next_tlb_gen = atomic64_read(&next->context.tlb_gen);
577
578 choose_new_asid(next, next_tlb_gen, &new_asid, &need_flush);
579
580 /* Let nmi_uaccess_okay() know that we're changing CR3. */
581 this_cpu_write(cpu_tlbstate.loaded_mm, LOADED_MM_SWITCHING);
582 barrier();
583 }
584
585 if (need_flush) {
586 this_cpu_write(cpu_tlbstate.ctxs[new_asid].ctx_id, next->context.ctx_id);
587 this_cpu_write(cpu_tlbstate.ctxs[new_asid].tlb_gen, next_tlb_gen);
588 load_new_mm_cr3(next->pgd, new_asid, true);
589
590 trace_tlb_flush(TLB_FLUSH_ON_TASK_SWITCH, TLB_FLUSH_ALL);
591 } else {
592 /* The new ASID is already up to date. */
593 load_new_mm_cr3(next->pgd, new_asid, false);
594
595 trace_tlb_flush(TLB_FLUSH_ON_TASK_SWITCH, 0);
596 }
597
598 /* Make sure we write CR3 before loaded_mm. */
599 barrier();
600
601 this_cpu_write(cpu_tlbstate.loaded_mm, next);
602 this_cpu_write(cpu_tlbstate.loaded_mm_asid, new_asid);
603
604 if (next != real_prev) {
605 cr4_update_pce_mm(next);
606 switch_ldt(real_prev, next);
607 }
608 }
609
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 6 months
Re: [PATCH v3 net-next 03/12] net: dsa: inherit the actual bridge port flags at join time
by kernel test robot
Hi Vladimir,
I love your patch! Perhaps something to improve:
[auto build test WARNING on net-next/master]
url: https://github.com/0day-ci/linux/commits/Vladimir-Oltean/Better-support-f...
base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git d773b7957e4fd7b732a163df0e59d31ad4237302
config: arm-mvebu_v5_defconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.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/3aac17167e3de0aeaf5287f9d586725bd...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Vladimir-Oltean/Better-support-for-sandwiched-LAGs-with-bridge-and-DSA/20210321-063842
git checkout 3aac17167e3de0aeaf5287f9d586725bdc7495a5
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
In file included from include/linux/device.h:15,
from include/linux/dma-mapping.h:7,
from include/linux/skbuff.h:31,
from include/net/net_namespace.h:39,
from include/linux/netdevice.h:37,
from include/linux/if_bridge.h:12,
from net/dsa/port.c:9:
net/dsa/port.c: In function 'dsa_port_clear_brport_flags':
>> net/dsa/port.c:166:5: warning: format '%d' expects argument of type 'int', but argument 3 has type 'long unsigned int' [-Wformat=]
166 | "failed to clear bridge port flag %d: %d (%pe)\n",
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/dev_printk.h:19:22: note: in definition of macro 'dev_fmt'
19 | #define dev_fmt(fmt) fmt
| ^~~
net/dsa/port.c:165:4: note: in expansion of macro 'dev_err'
165 | dev_err(dp->ds->dev,
| ^~~~~~~
net/dsa/port.c:166:40: note: format string is defined here
166 | "failed to clear bridge port flag %d: %d (%pe)\n",
| ~^
| |
| int
| %ld
vim +166 net/dsa/port.c
148
149 static void dsa_port_clear_brport_flags(struct dsa_port *dp,
150 struct netlink_ext_ack *extack)
151 {
152 const unsigned long val = BR_FLOOD | BR_MCAST_FLOOD | BR_BCAST_FLOOD;
153 const unsigned long mask = BR_LEARNING | BR_FLOOD | BR_MCAST_FLOOD |
154 BR_BCAST_FLOOD;
155 int flag, err;
156
157 for_each_set_bit(flag, &mask, 32) {
158 struct switchdev_brport_flags flags = {0};
159
160 flags.mask = BIT(flag);
161 flags.val = val & BIT(flag);
162
163 err = dsa_port_bridge_flags(dp, flags, extack);
164 if (err && err != -EOPNOTSUPP)
165 dev_err(dp->ds->dev,
> 166 "failed to clear bridge port flag %d: %d (%pe)\n",
167 flags.val, err, ERR_PTR(err));
168 }
169 }
170
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 6 months
[sashal-linux-stable:queue-5.4 131/189] kernel/cgroup/cgroup-v1.c:927:12: error: implicit declaration of function 'invalfc'; did you mean
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git queue-5.4
head: 74cb9d74e6b6e93cae875cc04536f543eacb1704
commit: 15f36d663cbe4a7dbf2405a1ab29056becbb301d [131/189] cgroup-v1: add disabled controller check in cgroup1_parse_param()
config: i386-randconfig-m021-20210321 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git/c...
git remote add sashal-linux-stable https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git
git fetch --no-tags sashal-linux-stable queue-5.4
git checkout 15f36d663cbe4a7dbf2405a1ab29056becbb301d
# save the attached .config to linux build tree
make W=1 ARCH=i386
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 >>):
kernel/cgroup/cgroup-v1.c: In function 'cgroup1_parse_param':
>> kernel/cgroup/cgroup-v1.c:927:12: error: implicit declaration of function 'invalfc'; did you mean 'invalf'? [-Werror=implicit-function-declaration]
927 | return invalfc(fc, "Disabled controller '%s'",
| ^~~~~~~
| invalf
cc1: some warnings being treated as errors
vim +927 kernel/cgroup/cgroup-v1.c
906
907 int cgroup1_parse_param(struct fs_context *fc, struct fs_parameter *param)
908 {
909 struct cgroup_fs_context *ctx = cgroup_fc2context(fc);
910 struct cgroup_subsys *ss;
911 struct fs_parse_result result;
912 int opt, i;
913
914 opt = fs_parse(fc, &cgroup1_fs_parameters, param, &result);
915 if (opt == -ENOPARAM) {
916 if (strcmp(param->key, "source") == 0) {
917 if (fc->source)
918 return invalf(fc, "Multiple sources not supported");
919 fc->source = param->string;
920 param->string = NULL;
921 return 0;
922 }
923 for_each_subsys(ss, i) {
924 if (strcmp(param->key, ss->legacy_name))
925 continue;
926 if (!cgroup_ssid_enabled(i) || cgroup1_ssid_disabled(i))
> 927 return invalfc(fc, "Disabled controller '%s'",
928 param->key);
929 ctx->subsys_mask |= (1 << i);
930 return 0;
931 }
932 return cg_invalf(fc, "cgroup1: Unknown subsys name '%s'", param->key);
933 }
934 if (opt < 0)
935 return opt;
936
937 switch (opt) {
938 case Opt_none:
939 /* Explicitly have no subsystems */
940 ctx->none = true;
941 break;
942 case Opt_all:
943 ctx->all_ss = true;
944 break;
945 case Opt_noprefix:
946 ctx->flags |= CGRP_ROOT_NOPREFIX;
947 break;
948 case Opt_clone_children:
949 ctx->cpuset_clone_children = true;
950 break;
951 case Opt_cpuset_v2_mode:
952 ctx->flags |= CGRP_ROOT_CPUSET_V2_MODE;
953 break;
954 case Opt_xattr:
955 ctx->flags |= CGRP_ROOT_XATTR;
956 break;
957 case Opt_release_agent:
958 /* Specifying two release agents is forbidden */
959 if (ctx->release_agent)
960 return cg_invalf(fc, "cgroup1: release_agent respecified");
961 ctx->release_agent = param->string;
962 param->string = NULL;
963 break;
964 case Opt_name:
965 /* blocked by boot param? */
966 if (cgroup_no_v1_named)
967 return -ENOENT;
968 /* Can't specify an empty name */
969 if (!param->size)
970 return cg_invalf(fc, "cgroup1: Empty name");
971 if (param->size > MAX_CGROUP_ROOT_NAMELEN - 1)
972 return cg_invalf(fc, "cgroup1: Name too long");
973 /* Must match [\w.-]+ */
974 for (i = 0; i < param->size; i++) {
975 char c = param->string[i];
976 if (isalnum(c))
977 continue;
978 if ((c == '.') || (c == '-') || (c == '_'))
979 continue;
980 return cg_invalf(fc, "cgroup1: Invalid name");
981 }
982 /* Specifying two names is forbidden */
983 if (ctx->name)
984 return cg_invalf(fc, "cgroup1: name respecified");
985 ctx->name = param->string;
986 param->string = NULL;
987 break;
988 }
989 return 0;
990 }
991
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 6 months
[sashal-linux-stable:queue-5.4 184/189] arch/powerpc/lib/sstep.c:2670:5: error: label 'unknown_opcode' used but not defined
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git queue-5.4
head: 74cb9d74e6b6e93cae875cc04536f543eacb1704
commit: c3be26ccd0ade97c537a79b2a8467f1f6aaef0e4 [184/189] powerpc/sstep: Fix load-store and update emulation
config: powerpc-mpc8540_ads_defconfig (attached as .config)
compiler: powerpc-linux-gcc (GCC) 9.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://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git/c...
git remote add sashal-linux-stable https://git.kernel.org/pub/scm/linux/kernel/git/sashal/linux-stable.git
git fetch --no-tags sashal-linux-stable queue-5.4
git checkout c3be26ccd0ade97c537a79b2a8467f1f6aaef0e4
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=powerpc
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 >>):
arch/powerpc/lib/sstep.c: In function 'analyse_instr':
>> arch/powerpc/lib/sstep.c:2670:5: error: label 'unknown_opcode' used but not defined
2670 | goto unknown_opcode;
| ^~~~
arch/powerpc/lib/sstep.c:1168:31: error: variable 'rc' set but not used [-Werror=unused-but-set-variable]
1168 | unsigned int opcode, ra, rb, rc, rd, spr, u;
| ^~
cc1: all warnings being treated as errors
--
arch/powerpc/lib/sstep.c: In function 'analyse_instr':
>> arch/powerpc/lib/sstep.c:2670:5: error: label 'unknown_opcode' used but not defined
2670 | goto unknown_opcode;
| ^~~~
arch/powerpc/lib/sstep.c:1168:31: warning: variable 'rc' set but not used [-Wunused-but-set-variable]
1168 | unsigned int opcode, ra, rb, rc, rd, spr, u;
| ^~
vim +/unknown_opcode +2670 arch/powerpc/lib/sstep.c
2657
2658 }
2659
2660 if (OP_IS_LOAD_STORE(op->type) && (op->type & UPDATE)) {
2661 switch (GETTYPE(op->type)) {
2662 case LOAD:
2663 if (ra == rd)
2664 goto unknown_opcode;
2665 fallthrough;
2666 case STORE:
2667 case LOAD_FP:
2668 case STORE_FP:
2669 if (ra == 0)
> 2670 goto unknown_opcode;
2671 }
2672 }
2673
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 6 months