[kbuild] [next:master 2131/2422] kernel/sys.c:1888 prctl_set_mm_map() warn: maybe return -EFAULT instead of the bytes remaining?
TO: Cyrill Gorcunov gorcu...@openvz.org CC: Andrew Morton a...@linux-foundation.org CC: Linux Memory Management List linux...@kvack.org tree: git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master head: d05446ae2128064a4bb8f74c84f6901ffb5c94bc commit: 802d335c0f7f1a1867bf59814c55970a71b10413 [2131/2422] prctl: PR_SET_MM -- introduce PR_SET_MM_MAP operation :: branch date: 3 hours ago :: commit date: 32 hours ago kernel/sys.c:1888 prctl_set_mm_map() warn: maybe return -EFAULT instead of the bytes remaining? git remote add next git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git git remote update next git checkout 802d335c0f7f1a1867bf59814c55970a71b10413 vim +1888 kernel/sys.c 802d335c Cyrill Gorcunov 2014-08-26 1872 802d335c Cyrill Gorcunov 2014-08-26 1873 mm-start_code = prctl_map.start_code; 802d335c Cyrill Gorcunov 2014-08-26 1874 mm-end_code= prctl_map.end_code; 802d335c Cyrill Gorcunov 2014-08-26 1875 mm-start_data = prctl_map.start_data; 802d335c Cyrill Gorcunov 2014-08-26 1876 mm-end_data= prctl_map.end_data; 802d335c Cyrill Gorcunov 2014-08-26 1877 mm-start_brk = prctl_map.start_brk; 802d335c Cyrill Gorcunov 2014-08-26 1878 mm-brk = prctl_map.brk; 802d335c Cyrill Gorcunov 2014-08-26 1879 mm-start_stack = prctl_map.start_stack; 802d335c Cyrill Gorcunov 2014-08-26 1880 mm-arg_start = prctl_map.arg_start; 802d335c Cyrill Gorcunov 2014-08-26 1881 mm-arg_end = prctl_map.arg_end; 802d335c Cyrill Gorcunov 2014-08-26 1882 mm-env_start = prctl_map.env_start; 802d335c Cyrill Gorcunov 2014-08-26 1883 mm-env_end = prctl_map.env_end; 802d335c Cyrill Gorcunov 2014-08-26 1884 802d335c Cyrill Gorcunov 2014-08-26 1885 error = 0; 802d335c Cyrill Gorcunov 2014-08-26 1886 out: 802d335c Cyrill Gorcunov 2014-08-26 1887 up_read(mm-mmap_sem); 802d335c Cyrill Gorcunov 2014-08-26 @1888 return error; 802d335c Cyrill Gorcunov 2014-08-26 1889 } 802d335c Cyrill Gorcunov 2014-08-26 1890 #endif /* CONFIG_CHECKPOINT_RESTORE */ 802d335c Cyrill Gorcunov 2014-08-26 1891 028ee4be Cyrill Gorcunov 2012-01-12 1892 static int prctl_set_mm(int opt, unsigned long addr, 028ee4be Cyrill Gorcunov 2012-01-12 1893 unsigned long arg4, unsigned long arg5) 028ee4be Cyrill Gorcunov 2012-01-12 1894 { 028ee4be Cyrill Gorcunov 2012-01-12 1895 struct mm_struct *mm = current-mm; fe8c7f5c Cyrill Gorcunov 2012-05-31 1896 struct vm_area_struct *vma; --- 0-DAY kernel build testing backend Open Source Technology Center http://lists.01.org/mailman/listinfo/kbuild Intel Corporation ___ kbuild mailing list kbuild@lists.01.org https://lists.01.org/mailman/listinfo/kbuild
[kbuild] [next:master 2131/2422] kernel/sys.c:1888 prctl_set_mm_map() warn: maybe return -EFAULT instead of the bytes remaining?
tree: git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master head: d05446ae2128064a4bb8f74c84f6901ffb5c94bc commit: 802d335c0f7f1a1867bf59814c55970a71b10413 [2131/2422] prctl: PR_SET_MM -- introduce PR_SET_MM_MAP operation kernel/sys.c:1888 prctl_set_mm_map() warn: maybe return -EFAULT instead of the bytes remaining? git remote add next git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git git remote update next git checkout 802d335c0f7f1a1867bf59814c55970a71b10413 vim +1888 kernel/sys.c 802d335c Cyrill Gorcunov 2014-08-26 1872 802d335c Cyrill Gorcunov 2014-08-26 1873 mm-start_code = prctl_map.start_code; 802d335c Cyrill Gorcunov 2014-08-26 1874 mm-end_code= prctl_map.end_code; 802d335c Cyrill Gorcunov 2014-08-26 1875 mm-start_data = prctl_map.start_data; 802d335c Cyrill Gorcunov 2014-08-26 1876 mm-end_data= prctl_map.end_data; 802d335c Cyrill Gorcunov 2014-08-26 1877 mm-start_brk = prctl_map.start_brk; 802d335c Cyrill Gorcunov 2014-08-26 1878 mm-brk = prctl_map.brk; 802d335c Cyrill Gorcunov 2014-08-26 1879 mm-start_stack = prctl_map.start_stack; 802d335c Cyrill Gorcunov 2014-08-26 1880 mm-arg_start = prctl_map.arg_start; 802d335c Cyrill Gorcunov 2014-08-26 1881 mm-arg_end = prctl_map.arg_end; 802d335c Cyrill Gorcunov 2014-08-26 1882 mm-env_start = prctl_map.env_start; 802d335c Cyrill Gorcunov 2014-08-26 1883 mm-env_end = prctl_map.env_end; 802d335c Cyrill Gorcunov 2014-08-26 1884 802d335c Cyrill Gorcunov 2014-08-26 1885 error = 0; 802d335c Cyrill Gorcunov 2014-08-26 1886 out: 802d335c Cyrill Gorcunov 2014-08-26 1887 up_read(mm-mmap_sem); 802d335c Cyrill Gorcunov 2014-08-26 @1888 return error; 802d335c Cyrill Gorcunov 2014-08-26 1889 } 802d335c Cyrill Gorcunov 2014-08-26 1890 #endif /* CONFIG_CHECKPOINT_RESTORE */ 802d335c Cyrill Gorcunov 2014-08-26 1891 028ee4be Cyrill Gorcunov 2012-01-12 1892 static int prctl_set_mm(int opt, unsigned long addr, 028ee4be Cyrill Gorcunov 2012-01-12 1893 unsigned long arg4, unsigned long arg5) 028ee4be Cyrill Gorcunov 2012-01-12 1894 { 028ee4be Cyrill Gorcunov 2012-01-12 1895 struct mm_struct *mm = current-mm; fe8c7f5c Cyrill Gorcunov 2012-05-31 1896 struct vm_area_struct *vma; --- 0-DAY kernel build testing backend Open Source Technology Center http://lists.01.org/mailman/listinfo/kbuild Intel Corporation ___ kbuild mailing list kbuild@lists.01.org https://lists.01.org/mailman/listinfo/kbuild
Re: [kbuild] [next:master 2131/2422] kernel/sys.c:1888 prctl_set_mm_map() warn: maybe return -EFAULT instead of the bytes remaining?
On Wed, Aug 27, 2014 at 02:09:09PM +0400, Cyrill Gorcunov wrote: Not really sure I'm follow. @error is error code either 0 (on success) or any other if some problem happened. It's complaining about this: kernel/sys.c 1846 if (prctl_map.auxv_size) { 1847 up_read(mm-mmap_sem); 1848 memset(user_auxv, 0, sizeof(user_auxv)); 1849 error = copy_from_user(user_auxv, 1850 (const void __user *)prctl_map.auxv, 1851 prctl_map.auxv_size); 1852 down_read(mm-mmap_sem); 1853 if (error) 1854 goto out; 1855 } It should say: if (error) { error = -EFAULT; goto out; } regards, dan carpenter ___ kbuild mailing list kbuild@lists.01.org https://lists.01.org/mailman/listinfo/kbuild