# git rev-parse -q --verify 642e7fd23353e22290e3d51719fcb658dc252342^{commit} 642e7fd23353e22290e3d51719fcb658dc252342 already have revision, skipping fetch # git checkout -q -f -B kisskb 642e7fd23353e22290e3d51719fcb658dc252342 # git clean -qxdf # < git log -1 # commit 642e7fd23353e22290e3d51719fcb658dc252342 # Merge: 2103596 c9a2119 # Author: Linus Torvalds # Date: Mon Apr 2 21:22:12 2018 -0700 # # Merge branch 'syscalls-next' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/linux # # Pull removal of in-kernel calls to syscalls from Dominik Brodowski: # "System calls are interaction points between userspace and the kernel. # Therefore, system call functions such as sys_xyzzy() or # compat_sys_xyzzy() should only be called from userspace via the # syscall table, but not from elsewhere in the kernel. # # At least on 64-bit x86, it will likely be a hard requirement from # v4.17 onwards to not call system call functions in the kernel: It is # better to use use a different calling convention for system calls # there, where struct pt_regs is decoded on-the-fly in a syscall wrapper # which then hands processing over to the actual syscall function. This # means that only those parameters which are actually needed for a # specific syscall are passed on during syscall entry, instead of # filling in six CPU registers with random user space content all the # time (which may cause serious trouble down the call chain). Those # x86-specific patches will be pushed through the x86 tree in the near # future. # # Moreover, rules on how data may be accessed may differ between kernel # data and user data. This is another reason why calling sys_xyzzy() is # generally a bad idea, and -- at most -- acceptable in arch-specific # code. # # This patchset removes all in-kernel calls to syscall functions in the # kernel with the exception of arch/. On top of this, it cleans up the # three places where many syscalls are referenced or prototyped, namely # kernel/sys_ni.c, include/linux/syscalls.h and include/linux/compat.h" # # * 'syscalls-next' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/linux: (109 commits) # bpf: whitelist all syscalls for error injection # kernel/sys_ni: remove {sys_,sys_compat} from cond_syscall definitions # kernel/sys_ni: sort cond_syscall() entries # syscalls/x86: auto-create compat_sys_*() prototypes # syscalls: sort syscall prototypes in include/linux/compat.h # net: remove compat_sys_*() prototypes from net/compat.h # syscalls: sort syscall prototypes in include/linux/syscalls.h # kexec: move sys_kexec_load() prototype to syscalls.h # x86/sigreturn: use SYSCALL_DEFINE0 # x86: fix sys_sigreturn() return type to be long, not unsigned long # x86/ioport: add ksys_ioperm() helper; remove in-kernel calls to sys_ioperm() # mm: add ksys_readahead() helper; remove in-kernel calls to sys_readahead() # mm: add ksys_mmap_pgoff() helper; remove in-kernel calls to sys_mmap_pgoff() # mm: add ksys_fadvise64_64() helper; remove in-kernel call to sys_fadvise64_64() # fs: add ksys_fallocate() wrapper; remove in-kernel calls to sys_fallocate() # fs: add ksys_p{read,write}64() helpers; remove in-kernel calls to syscalls # fs: add ksys_truncate() wrapper; remove in-kernel calls to sys_truncate() # fs: add ksys_sync_file_range helper(); remove in-kernel calls to syscall # kernel: add ksys_setsid() helper; remove in-kernel call to sys_setsid() # kernel: add ksys_unshare() helper; remove in-kernel calls to sys_unshare() # ... # < /opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux-gcc --version # < git log --format=%s --max-count=1 642e7fd23353e22290e3d51719fcb658dc252342 # < make -s -j 8 ARCH=powerpc O=/kisskb/build/linus_mpc85xx_defconfig_powerpc CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- mpc85xx_defconfig # make -s -j 8 ARCH=powerpc O=/kisskb/build/linus_mpc85xx_defconfig_powerpc CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- /kisskb/src/kernel/cgroup/cgroup-v1.c: In function 'cgroup1_mount': /kisskb/src/kernel/cgroup/cgroup-v1.c:1268:20: warning: 'root' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/mm/hugetlb.c: In function 'alloc_pool_huge_page': /kisskb/src/mm/hugetlb.c:1440:5: warning: 'page' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/kernel/printk/printk.c: In function 'devkmsg_sysctl_set_loglvl': /kisskb/src/kernel/printk/printk.c:183:16: warning: 'old' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/sound/soc/codecs/wm8960.c: In function 'wm8960_configure_clocking': /kisskb/src/sound/soc/codecs/wm8960.c:803:56: warning: 'j' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/sound/soc/codecs/wm8960.c:800:54: warning: 'i' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/net/ethernet/freescale/fs_enet/mac-scc.c: In function 'allocate_bd': /kisskb/src/drivers/net/ethernet/freescale/fs_enet/mac-scc.c:139:6: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] /kisskb/src/drivers/tty/serial/8250/8250_core.c: In function 'univ8250_release_irq': /kisskb/src/drivers/tty/serial/8250/8250_core.c:251:18: warning: 'i' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/tty/serial/8250/8250_core.c:231:19: note: 'i' was declared here INFO: Uncompressed kernel (size 0xb4b358) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xc00000) INFO: Uncompressed kernel (size 0xb4b358) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xc00000) INFO: Uncompressed kernel (size 0xb4b358) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xc00000) INFO: Uncompressed kernel (size 0xb4b358) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xc00000) INFO: Uncompressed kernel (size 0xb4b358) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xc00000) INFO: Uncompressed kernel (size 0xb4b358) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xc00000) INFO: Uncompressed kernel (size 0xb4b358) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xc00000) INFO: Uncompressed kernel (size 0xb3ac0c) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xc00000) Image Name: Linux-4.16.0-g642e7fd Created: Tue Apr 3 17:13:08 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5450321 Bytes = 5322.58 kB = 5.20 MB Load Address: 00000000 Entry Point: 00000000 Image Name: Linux-4.16.0-g642e7fd Created: Tue Apr 3 17:13:08 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5473973 Bytes = 5345.68 kB = 5.22 MB Load Address: 00c00000 Entry Point: 00c00248 INFO: Uncompressed kernel (size 0xb4b358) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xc00000) INFO: Uncompressed kernel (size 0xb4b358) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xc00000) Image Name: Linux-4.16.0-g642e7fd Created: Tue Apr 3 17:13:08 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5474323 Bytes = 5346.02 kB = 5.22 MB Load Address: 00c00000 Entry Point: 00c00248 INFO: Uncompressed kernel (size 0xb4b358) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xc00000) Image Name: Linux-4.16.0-g642e7fd Created: Tue Apr 3 17:13:09 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5474330 Bytes = 5346.03 kB = 5.22 MB Load Address: 00c00000 Entry Point: 00c00288 INFO: Uncompressed kernel (size 0xb4b358) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xc00000) Image Name: Linux-4.16.0-g642e7fd Created: Tue Apr 3 17:13:09 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5475542 Bytes = 5347.21 kB = 5.22 MB Load Address: 00c00000 Entry Point: 00c00248 INFO: Uncompressed kernel (size 0xb4b358) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xc00000) Image Name: Linux-4.16.0-g642e7fd Created: Tue Apr 3 17:13:09 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5476061 Bytes = 5347.72 kB = 5.22 MB Load Address: 00c00000 Entry Point: 00c00248 INFO: Uncompressed kernel (size 0xb4b358) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xc00000) Image Name: Linux-4.16.0-g642e7fd Created: Tue Apr 3 17:13:09 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5474322 Bytes = 5346.02 kB = 5.22 MB Load Address: 00c00000 Entry Point: 00c00248 Image Name: Linux-4.16.0-g642e7fd Created: Tue Apr 3 17:13:09 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5475614 Bytes = 5347.28 kB = 5.22 MB Load Address: 00c00000 Entry Point: 00c00248 INFO: Uncompressed kernel (size 0xb4b358) overlaps the address of the wrapper(0x400000) INFO: Uncompressed kernel (size 0xb4b358) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xc00000) INFO: Fixing the link_address of wrapper to (0xc00000) Image Name: Linux-4.16.0-g642e7fd Created: Tue Apr 3 17:13:10 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5475882 Bytes = 5347.54 kB = 5.22 MB Load Address: 00c00000 Entry Point: 00c00248 Image Name: Linux-4.16.0-g642e7fd Created: Tue Apr 3 17:13:10 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5473885 Bytes = 5345.59 kB = 5.22 MB Load Address: 00c00000 Entry Point: 00c00248 Image Name: Linux-4.16.0-g642e7fd Created: Tue Apr 3 17:13:10 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5474004 Bytes = 5345.71 kB = 5.22 MB Load Address: 00c00000 Entry Point: 00c00288 Image Name: Linux-4.16.0-g642e7fd Created: Tue Apr 3 17:13:11 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5474694 Bytes = 5346.38 kB = 5.22 MB Load Address: 00c00000 Entry Point: 00c00248 Image Name: Linux-4.16.0-g642e7fd Created: Tue Apr 3 17:13:11 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5474005 Bytes = 5345.71 kB = 5.22 MB Load Address: 00c00000 Entry Point: 00c00288 Image Name: Linux-4.16.0-g642e7fd Created: Tue Apr 3 17:13:12 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5474397 Bytes = 5346.09 kB = 5.22 MB Load Address: 00c00000 Entry Point: 00c00288 Image Name: Linux-4.16.0-g642e7fd Created: Tue Apr 3 17:13:12 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5474379 Bytes = 5346.07 kB = 5.22 MB Load Address: 00c00000 Entry Point: 00c00248 Image Name: Linux-4.16.0-g642e7fd Created: Tue Apr 3 17:13:12 2018 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5473992 Bytes = 5345.70 kB = 5.22 MB Load Address: 00c00000 Entry Point: 00c00288 Completed OK # rm -rf /kisskb/build/linus_mpc85xx_defconfig_powerpc # Build took: 0:02:07.890601