Re: [PATCH v3] ARM: smp: add support for per-task stack canaries

From: Russell King - ARM Linux
Date: Sun Dec 09 2018 - 05:38:12 EST


On Sun, Dec 09, 2018 at 06:28:11PM +0800, kbuild test robot wrote:
> Hi Ard,
>
> I love your patch! Perhaps something to improve:

Hi,

This looks to me like a false warning - how can a patch touching arch
code affect the result of lib/test_ubsan.c? Please can you double-
check this result?

Thanks.

>
> [auto build test WARNING on arm/for-next]
> [also build test WARNING on v4.20-rc5]
> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
>
> url: https://github.com/0day-ci/linux/commits/Ard-Biesheuvel/ARM-smp-add-support-for-per-task-stack-canaries/20181209-033321
> base: git://git.armlinux.org.uk/~rmk/linux-arm.git for-next
> config: arm-allmodconfig (attached as .config)
> compiler: arm-linux-gnueabi-gcc (Debian 7.2.0-11) 7.2.0
> reproduce:
> wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> chmod +x ~/bin/make.cross
> # save the attached .config to linux build tree
> GCC_VERSION=7.2.0 make.cross ARCH=arm
>
> All warnings (new ones prefixed by >>):
>
> lib/test_ubsan.c: In function 'test_ubsan_vla_bound_not_positive':
> >> lib/test_ubsan.c:48:2: warning: ISO C90 forbids variable length array 'buf' [-Wvla]
> char buf[size];
> ^~~~
> lib/test_ubsan.c: In function 'test_ubsan_out_of_bounds':
> >> lib/test_ubsan.c:64:2: warning: ISO C90 forbids variable length array 'arr' [-Wvla]
> volatile int arr[i];
> ^~~~~~~~
>
> vim +/buf +48 lib/test_ubsan.c
>
> 854686f4 Jinbum Park 2018-04-10 44
> 854686f4 Jinbum Park 2018-04-10 45 static void test_ubsan_vla_bound_not_positive(void)
> 854686f4 Jinbum Park 2018-04-10 46 {
> 854686f4 Jinbum Park 2018-04-10 47 volatile int size = -1;
> 854686f4 Jinbum Park 2018-04-10 @48 char buf[size];
> 854686f4 Jinbum Park 2018-04-10 49
> 854686f4 Jinbum Park 2018-04-10 50 (void)buf;
> 854686f4 Jinbum Park 2018-04-10 51 }
> 854686f4 Jinbum Park 2018-04-10 52
> 854686f4 Jinbum Park 2018-04-10 53 static void test_ubsan_shift_out_of_bounds(void)
> 854686f4 Jinbum Park 2018-04-10 54 {
> 854686f4 Jinbum Park 2018-04-10 55 volatile int val = -1;
> 854686f4 Jinbum Park 2018-04-10 56 int val2 = 10;
> 854686f4 Jinbum Park 2018-04-10 57
> 854686f4 Jinbum Park 2018-04-10 58 val2 <<= val;
> 854686f4 Jinbum Park 2018-04-10 59 }
> 854686f4 Jinbum Park 2018-04-10 60
> 854686f4 Jinbum Park 2018-04-10 61 static void test_ubsan_out_of_bounds(void)
> 854686f4 Jinbum Park 2018-04-10 62 {
> 854686f4 Jinbum Park 2018-04-10 63 volatile int i = 4, j = 5;
> 854686f4 Jinbum Park 2018-04-10 @64 volatile int arr[i];
> 854686f4 Jinbum Park 2018-04-10 65
> 854686f4 Jinbum Park 2018-04-10 66 arr[j] = i;
> 854686f4 Jinbum Park 2018-04-10 67 }
> 854686f4 Jinbum Park 2018-04-10 68
>
> :::::: The code at line 48 was first introduced by commit
> :::::: 854686f4edf483db1e0d26d972bdb8fb65c8bfaa lib: add testing module for UBSAN
>
> :::::: TO: Jinbum Park <jinb.park7@xxxxxxxxx>
> :::::: CC: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
>
> ---
> 0-DAY kernel test infrastructure Open Source Technology Center
> https://lists.01.org/pipermail/kbuild-all Intel Corporation



--
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line in suburbia: sync at 12.1Mbps down 622kbps up
According to speedtest.net: 11.9Mbps down 500kbps up