Jann: I guess a environ_(mem_)release is needed because private_data of mem and environ are now different.
On Thu, Sep 29, 2016 at 11:58 PM kernel test robot <xiaolong.ye@xxxxxxxxx> wrote:
FYI, we noticed the following commit:
https://github.com/0day-ci/linux Jann-Horn/fs-exec-don-t-force-writing-memory-access/20160929-222244
commit 3f40a9185af5f5335b8117178c706b74537b960b ("mm: add LSM hook for writes to readonly memory")
in testcase: boot
on test machine: qemu-system-i386 -enable-kvm -cpu Haswell,+smep,+smap -m 360M
caused below changes:
+------------------------------------------+------------+------------+
| | dc00268ef0 | 3f40a9185a |
+------------------------------------------+------------+------------+
| boot_successes | 24 | 2 |
| boot_failures | 0 | 18 |
| kernel_BUG_at_kernel/cred.c | 0 | 12 |
| invalid_opcode:#[##]SMP | 0 | 12 |
| EIP_is_at__invalid_creds | 0 | 12 |
| calltrace:SyS_exit_group | 0 | 18 |
| Kernel_panic-not_syncing:Fatal_exception | 0 | 18 |
| BUG:unable_to_handle_kernel | 0 | 10 |
| Oops | 0 | 10 |
| EIP_is_at_mem_release | 0 | 10 |
+------------------------------------------+------------+------------+
[ 23.725743] trinity-c0 (12124) used greatest stack depth: 6144 bytes left
[ 23.729863] CRED: ->security {83184389, d88918c4}
[ 23.730466] ------------[ cut here ]------------
[ 23.731054] kernel BUG at kernel/cred.c:768!
[ 23.731770] invalid opcode: 0000 [#1] SMP
[ 23.732270] Modules linked in:
[ 23.732674] CPU: 0 PID: 10617 Comm: trinity-main Not tainted 4.8.0-rc8-00015-g3f40a91 #78
[ 23.733678] task: 8c79a6c0 task.stack: 8c48c000
[ 23.734248] EIP: 0060:[<8104cad8>] EFLAGS: 00010292 CPU: 0
[ 23.734962] EIP is at __invalid_creds+0x35/0x37
[ 23.735523] EAX: 00000025 EBX: 8d11a458 ECX: 8106ce3c EDX: 00000001
[ 23.736304] ESI: 813d667c EDI: 0000010f EBP: 8c48ded4 ESP: 8c48deb8
[ 23.737080] DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
[ 23.737750] CR0: 80050033 CR2: 7fc1ed30 CR3: 01647000 CR4: 00040690
[ 23.738529] DR0: c0100220 DR1: 00000000 DR2: 00000000 DR3: 00000000
[ 23.739308] DR6: ffff0ff0 DR7: 00050602
[ 23.739793] Stack:
[ 23.740054] 813d6660 813d667c 0000010f 813d6643 8d11a458 8d03ab80 8847b8e4 8c48dee4
[ 23.741161] 811153aa 8ca8f6c0 00000010 8c48df08 810de5a9 8ca8f6c8 88460a18 8847b8e4
[ 23.742265] 93c83c50 8ca8f6c0 8c79a6c0 8ca8e700 8c48df10 810de65c 8c48df28 8104a7a7
[ 23.743369] Call Trace:
[ 23.743700] [<811153aa>] mem_release+0x35/0x4e
[ 23.744284] [<810de5a9>] __fput+0xd8/0x162
[ 23.744815] [<810de65c>] ____fput+0x8/0xa
[ 23.745333] [<8104a7a7>] task_work_run+0x54/0x78
[ 23.745935] [<8103a20a>] do_exit+0x33c/0x7ec
[ 23.746478] [<810dd644>] ? vfs_write+0x9a/0xa4
[ 23.747051] [<8103a711>] do_group_exit+0x30/0x86
[ 23.747634] [<8103a778>] SyS_exit_group+0x11/0x11
[ 23.748236] [<81000e0b>] do_int80_syscall_32+0x43/0x55
[ 23.748909] [<812b8911>] entry_INT80_32+0x31/0x31
[ 23.749503] Code: 89 cf 68 43 66 3d 81 e8 1e 9a 05 00 57 56 68 60 66 3d 81 e8 12 9a 05 00 64 8b 0d dc 8a 4f 81 ba 72 66 3d 81 89 d8 e8 ac fe ff ff <0f> 0b 81 78 0c 64 65 73 43 74 08 55 89 e5 e8 b8 ff ff ff c3 55
[ 23.753032] EIP: [<8104cad8>] __invalid_creds+0x35/0x37 SS:ESP 0068:8c48deb8
[ 23.753971] ---[ end trace e46a82be55c05913 ]---
[ 23.754894] BUG: unable to handle kernel NULL pointer dereference at (null)
Thanks,
Kernel Test Robot