Re: [PATCH bpf-next 1/2] bpf, x86: Factor common x86 JIT code

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Tobias,

I love your patch! Perhaps something to improve:

[auto build test WARNING on bpf-next/master]

url:    https://github.com/0day-ci/linux/commits/Tobias-Klauser/bpf-x86-Factor-common-x86-JIT-code/20200630-045932
base:   https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git master
config: x86_64-randconfig-s022-20200710 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-14) 9.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.2-37-gc9676a3b-dirty
        # save the attached .config to linux build tree
        make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=x86_64 

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


sparse warnings: (new ones prefixed by >>)

   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (e58948 becomes 48)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (e58948 becomes 8948)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (ec8148 becomes 48)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (ec8148 becomes 8148)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (5541 becomes 41)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (5641 becomes 41)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (5741 becomes 41)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (d289 becomes 89)
>> arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (1c5639 becomes 39)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (1c5639 becomes 5639)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (2b76 becomes 76)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (858b becomes 8b)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (fffffddc becomes dc)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (20f883 becomes 83)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (20f883 becomes f883)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (2077 becomes 77)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (1c083 becomes 83)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (1c083 becomes c083)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (8589 becomes 89)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (fffffddc becomes dc)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (d6848b48 becomes 48)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (d6848b48 becomes 8b48)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (190 becomes 90)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (c08548 becomes 48)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (c08548 becomes 8548)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (a74 becomes 74)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (30408b48 becomes 48)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (30408b48 becomes 8b48)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (19c08348 becomes 48)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (19c08348 becomes 8348)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (e0ff becomes ff)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (858b becomes 8b)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (fffffddc becomes dc)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (20f883 becomes 83)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (20f883 becomes f883)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (e77 becomes 77)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (1c083 becomes 83)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (1c083 becomes c083)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (8589 becomes 89)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (fffffddc becomes dc)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (8966 becomes 66)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (c3c749 becomes 49)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (c3c749 becomes c749)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (d231 becomes 31)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (f3f749 becomes 49)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (f3f749 becomes f749)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (f3f741 becomes 41)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (f3f741 becomes f741)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (d38949 becomes 49)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (d38949 becomes 8949)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (c38949 becomes 49)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (c38949 becomes 8949)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (b70f45 becomes 45)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (b70f45 becomes f45)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (b70f becomes f)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (f41 becomes 41)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (b70f45 becomes 45)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (b70f45 becomes f45)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (b70f becomes f)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (c641 becomes 41)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (c74166 becomes 66)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (c74166 becomes 4166)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (c766 becomes 66)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (c741 becomes 41)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (1f0 becomes f0)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (5f41 becomes 41)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (5e41 becomes 41)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (5d41 becomes 41)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (f87d8348 becomes 48)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (f87d8348 becomes 8348)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (e58948 becomes 48)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (e58948 becomes 8948)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (8c48348 becomes 48)
   arch/x86/net/bpf_jit.h:15:31: sparse: sparse: cast truncates bits from constant value (8c48348 becomes 8348)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (e2ff becomes ff)
   arch/x86/net/bpf_jit.h:13:24: sparse: sparse: cast truncates bits from constant value (8f0f becomes f)

vim +13 arch/x86/net/bpf_jit.h

     9	
    10	static inline u8 *emit_code(u8 *ptr, u32 bytes, unsigned int len)
    11	{
    12		if (len == 1)
  > 13			*ptr = bytes;
    14		else if (len == 2)
    15			*(u16 *)ptr = bytes;
    16		else {
    17			*(u32 *)ptr = bytes;
    18			barrier();
    19		}
    20		return ptr + len;
    21	}
    22	

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

Attachment: .config.gz
Description: application/gzip


[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux