Hi Cyrill, FYI, there are new sparse warnings show up in tree: git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git akpm head: dad0019944369f58c193c1991c39ffda7ff584d2 commit: c9eeef146c554f8ddcdf5916fb93621f0579e2f8 [26/413] prctl: use access_ok() instead of TASK_SIZE in prctl_set_mm() kernel/sys.c:1048:38: sparse: incorrect type in argument 2 (different modifiers) kernel/sys.c:1048:38: expected unsigned long [nocast] [usertype] *ut kernel/sys.c:1048:38: got unsigned long * kernel/sys.c:1048:38: sparse: implicit cast to nocast type kernel/sys.c:1048:48: sparse: incorrect type in argument 3 (different modifiers) kernel/sys.c:1048:48: expected unsigned long [nocast] [usertype] *st kernel/sys.c:1048:48: got unsigned long * kernel/sys.c:1048:48: sparse: implicit cast to nocast type kernel/sys.c:1112:32: sparse: incorrect type in argument 1 (different address spaces) kernel/sys.c:1112:32: expected struct task_struct *p1 kernel/sys.c:1112:32: got struct task_struct [noderef] *real_parent kernel/sys.c:1701:25: sparse: implicit cast to nocast type kernel/sys.c:1704:38: sparse: incorrect type in argument 2 (different modifiers) kernel/sys.c:1704:38: expected unsigned long [nocast] [usertype] *ut kernel/sys.c:1704:38: got unsigned long * kernel/sys.c:1704:38: sparse: implicit cast to nocast type kernel/sys.c:1704:46: sparse: incorrect type in argument 3 (different modifiers) kernel/sys.c:1704:46: expected unsigned long [nocast] [usertype] *st kernel/sys.c:1704:46: got unsigned long * kernel/sys.c:1704:46: sparse: implicit cast to nocast type kernel/sys.c:1730:48: sparse: incorrect type in argument 2 (different modifiers) kernel/sys.c:1730:48: expected unsigned long [nocast] [usertype] *ut kernel/sys.c:1730:48: got unsigned long * kernel/sys.c:1730:48: sparse: implicit cast to nocast type kernel/sys.c:1730:58: sparse: incorrect type in argument 3 (different modifiers) kernel/sys.c:1730:58: expected unsigned long [nocast] [usertype] *st kernel/sys.c:1730:58: got unsigned long * kernel/sys.c:1730:58: sparse: implicit cast to nocast type + kernel/sys.c:1868:14: sparse: incorrect type in argument 1 (different base types) kernel/sys.c:1868:14: expected void const volatile [noderef] * kernel/sys.c:1868:14: got unsigned long [unsigned] addr kernel/sys.c:1984:16: sparse: incorrect type in argument 1 (different address spaces) kernel/sys.c:1984:16: expected void const volatile [noderef] * kernel/sys.c:1984:16: got int [noderef] **tid_addr vim +1868 kernel/sys.c 1852 unsigned long arg4, unsigned long arg5) 1853 { 1854 unsigned long rlim = rlimit(RLIMIT_DATA); 1855 struct mm_struct *mm = current->mm; 1856 struct vm_area_struct *vma; 1857 int error; 1858 1859 if (arg5 || (arg4 && opt != PR_SET_MM_AUXV)) 1860 return -EINVAL; 1861 1862 if (!capable(CAP_SYS_RESOURCE)) 1863 return -EPERM; 1864 1865 if (opt == PR_SET_MM_EXE_FILE) 1866 return prctl_set_mm_exe_file(mm, (unsigned int)addr); 1867 > 1868 if (!access_ok(VERIFY_READ, addr, sizeof(addr)) || addr < mmap_min_addr) 1869 return -EINVAL; 1870 1871 error = -EINVAL; 1872 1873 down_read(&mm->mmap_sem); 1874 vma = find_vma(mm, addr); 1875 1876 switch (opt) { --- 0-DAY kernel build testing backend Open Source Technology Centre Fengguang Wu, Yuanhan Liu Intel Corporation