# git rev-parse -q --verify 94f0b2d4a1d0c52035aef425da5e022bd2cb1c71^{commit} 94f0b2d4a1d0c52035aef425da5e022bd2cb1c71 already have revision, skipping fetch # git checkout -q -f -B kisskb 94f0b2d4a1d0c52035aef425da5e022bd2cb1c71 # git clean -qxdf # < git log -1 # commit 94f0b2d4a1d0c52035aef425da5e022bd2cb1c71 # Author: Linus Torvalds # Date: Tue Jun 15 09:26:19 2021 -0700 # # proc: only require mm_struct for writing # # Commit 591a22c14d3f ("proc: Track /proc/$pid/attr/ opener mm_struct") we # started using __mem_open() to track the mm_struct at open-time, so that # we could then check it for writes. # # But that also ended up making the permission checks at open time much # stricter - and not just for writes, but for reads too. And that in turn # caused a regression for at least Fedora 29, where NIC interfaces fail to # start when using NetworkManager. # # Since only the write side wanted the mm_struct test, ignore any failures # by __mem_open() at open time, leaving reads unaffected. The write() # time verification of the mm_struct pointer will then catch the failure # case because a NULL pointer will not match a valid 'current->mm'. # # Link: https://lore.kernel.org/netdev/YMjTlp2FSJYvoyFa@unreal/ # Fixes: 591a22c14d3f ("proc: Track /proc/$pid/attr/ opener mm_struct") # Reported-and-tested-by: Leon Romanovsky # Cc: Kees Cook # Cc: Christian Brauner # Cc: Andrea Righi # Signed-off-by: Linus Torvalds # < /opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux-ld --version # < git log --format=%s --max-count=1 94f0b2d4a1d0c52035aef425da5e022bd2cb1c71 # < make -s -j 48 ARCH=powerpc O=/kisskb/build/linus_corenet32_smp_defconfig_powerpc-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux- corenet32_smp_defconfig # < make -s -j 48 ARCH=powerpc O=/kisskb/build/linus_corenet32_smp_defconfig_powerpc-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux- help # make -s -j 48 ARCH=powerpc O=/kisskb/build/linus_corenet32_smp_defconfig_powerpc-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux- olddefconfig # make -s -j 48 ARCH=powerpc O=/kisskb/build/linus_corenet32_smp_defconfig_powerpc-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux- /kisskb/src/net/sched/sch_frag.c: In function 'sch_fragment': /kisskb/src/net/sched/sch_frag.c:93:10: warning: missing braces around initializer [-Wmissing-braces] struct rtable sch_frag_rt = { 0 }; ^ /kisskb/src/net/sched/sch_frag.c:93:10: warning: (near initialization for 'sch_frag_rt.dst') [-Wmissing-braces] INFO: Uncompressed kernel (size 0xe95cdc) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xf00000) Image Name: Linux-5.13.0-rc6-113990-g94f0b2d Created: Wed Jun 16 05:17:32 2021 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 6868309 Bytes = 6707.33 KiB = 6.55 MiB Load Address: 00000000 Entry Point: 00000000 Completed OK # rm -rf /kisskb/build/linus_corenet32_smp_defconfig_powerpc-gcc4.9 # Build took: 0:02:05.869486