* KASAN: use-after-free Read in alloc_pid
@ 2018-04-01 8:21 syzbot
2018-04-02 23:00 ` Eric W. Biederman
2018-04-10 14:11 ` syzbot
0 siblings, 2 replies; 8+ messages in thread
From: syzbot @ 2018-04-01 8:21 UTC (permalink / raw)
To: akpm, dhowells, ebiederm, gs051095, linux-kernel, oleg,
pasha.tatashin, riel, rppt, syzkaller-bugs, wangkefeng.wang
Hello,
syzbot hit the following crash on upstream commit
9dd2326890d89a5179967c947dab2bab34d7ddee (Fri Mar 30 17:29:47 2018 +0000)
Merge tag 'ceph-for-4.16-rc8' of git://github.com/ceph/ceph-client
syzbot dashboard link:
https://syzkaller.appspot.com/bug?extid=7a1cff37dbbef9e7ba4c
So far this crash happened 4 times on upstream.
Unfortunately, I don't have any reproducer for this crash yet.
Raw console output:
https://syzkaller.appspot.com/x/log.txt?id=6588786309857280
Kernel config:
https://syzkaller.appspot.com/x/.config?id=-2760467897697295172
compiler: gcc (GCC) 7.1.1 20170620
IMPORTANT: if you fix the bug, please add the following tag to the commit:
Reported-by: syzbot+7a1cff37dbbef9e7ba4c@syzkaller.appspotmail.com
It will help syzbot understand when the bug is fixed. See footer for
details.
If you forward the report, please keep this part and the footer.
R10: 0000000020000900 R11: 0000000000000246 R12: 0000000000000015
R13: 0000000000000051 R14: 00000000006f2838 R15: 0000000000000028
==================================================================
BUG: KASAN: use-after-free in alloc_pid+0x9a6/0xa00 kernel/pid.c:236
Read of size 4 at addr ffff8801b56d0088 by task syz-executor4/3533
CPU: 1 PID: 3533 Comm: syz-executor4 Not tainted 4.16.0-rc7+ #372
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS
Google 01/01/2011
Call Trace:
__dump_stack lib/dump_stack.c:17 [inline]
dump_stack+0x194/0x24d lib/dump_stack.c:53
print_address_description+0x73/0x250 mm/kasan/report.c:256
kasan_report_error mm/kasan/report.c:354 [inline]
kasan_report+0x23c/0x360 mm/kasan/report.c:412
__asan_report_load4_noabort+0x14/0x20 mm/kasan/report.c:432
alloc_pid+0x9a6/0xa00 kernel/pid.c:236
copy_process.part.38+0x2516/0x4bd0 kernel/fork.c:1807
copy_process kernel/fork.c:1606 [inline]
_do_fork+0x1f7/0xf70 kernel/fork.c:2087
SYSC_clone kernel/fork.c:2194 [inline]
SyS_clone+0x37/0x50 kernel/fork.c:2188
do_syscall_64+0x281/0x940 arch/x86/entry/common.c:287
entry_SYSCALL_64_after_hwframe+0x42/0xb7
RIP: 0033:0x454e79
RSP: 002b:00007f6165b9ac68 EFLAGS: 00000246 ORIG_RAX: 0000000000000038
RAX: ffffffffffffffda RBX: 00007f6165b9b6d4 RCX: 0000000000454e79
RDX: 00000000200008c0 RSI: 0000000020000800 RDI: 000000002000c100
RBP: 000000000072bea0 R08: 0000000020000940 R09: 0000000000000000
R10: 0000000020000900 R11: 0000000000000246 R12: 0000000000000015
R13: 0000000000000051 R14: 00000000006f2838 R15: 0000000000000028
Allocated by task 3533:
save_stack+0x43/0xd0 mm/kasan/kasan.c:447
set_track mm/kasan/kasan.c:459 [inline]
kasan_kmalloc+0xad/0xe0 mm/kasan/kasan.c:552
kasan_slab_alloc+0x12/0x20 mm/kasan/kasan.c:489
kmem_cache_alloc+0x12e/0x760 mm/slab.c:3542
kmem_cache_zalloc include/linux/slab.h:691 [inline]
create_pid_namespace kernel/pid_namespace.c:116 [inline]
copy_pid_ns+0x257/0xc60 kernel/pid_namespace.c:175
create_new_namespaces+0x307/0x880 kernel/nsproxy.c:94
copy_namespaces+0x340/0x400 kernel/nsproxy.c:165
copy_process.part.38+0x2380/0x4bd0 kernel/fork.c:1796
copy_process kernel/fork.c:1606 [inline]
_do_fork+0x1f7/0xf70 kernel/fork.c:2087
SYSC_clone kernel/fork.c:2194 [inline]
SyS_clone+0x37/0x50 kernel/fork.c:2188
do_syscall_64+0x281/0x940 arch/x86/entry/common.c:287
entry_SYSCALL_64_after_hwframe+0x42/0xb7
Freed by task 3539:
save_stack+0x43/0xd0 mm/kasan/kasan.c:447
set_track mm/kasan/kasan.c:459 [inline]
__kasan_slab_free+0x11a/0x170 mm/kasan/kasan.c:520
kasan_slab_free+0xe/0x10 mm/kasan/kasan.c:527
__cache_free mm/slab.c:3486 [inline]
kmem_cache_free+0x83/0x2a0 mm/slab.c:3744
delayed_free_pidns+0x82/0xb0 kernel/pid_namespace.c:157
__rcu_reclaim kernel/rcu/rcu.h:172 [inline]
rcu_do_batch kernel/rcu/tree.c:2674 [inline]
invoke_rcu_callbacks kernel/rcu/tree.c:2933 [inline]
__rcu_process_callbacks kernel/rcu/tree.c:2900 [inline]
rcu_process_callbacks+0xd6c/0x17f0 kernel/rcu/tree.c:2917
__do_softirq+0x2d7/0xb85 kernel/softirq.c:285
The buggy address belongs to the object at ffff8801b56d0040
which belongs to the cache pid_namespace of size 240
The buggy address is located 72 bytes inside of
240-byte region [ffff8801b56d0040, ffff8801b56d0130)
The buggy address belongs to the page:
page:ffffea0006d5b400 count:1 mapcount:0 mapping:ffff8801b56d0040 index:0x0
flags: 0x2fffc0000000100(slab)
raw: 02fffc0000000100 ffff8801b56d0040 0000000000000000 000000010000000d
raw: ffffea00074458a0 ffffea00073389e0 ffff8801d40b2c00 0000000000000000
page dumped because: kasan: bad access detected
Memory state around the buggy address:
ffff8801b56cff80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
ffff8801b56d0000: fc fc fc fc fc fc fc fc fb fb fb fb fb fb fb fb
> ffff8801b56d0080: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
^
ffff8801b56d0100: fb fb fb fb fb fb fc fc fc fc fc fc fc fc fb fb
ffff8801b56d0180: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
==================================================================
---
This bug is generated by a dumb bot. It may contain errors.
See https://goo.gl/tpsmEJ for details.
Direct all questions to syzkaller@googlegroups.com.
syzbot will keep track of this bug report.
If you forgot to add the Reported-by tag, once the fix for this bug is
merged
into any tree, please reply to this email with:
#syz fix: exact-commit-title
To mark this as a duplicate of another syzbot report, please reply with:
#syz dup: exact-subject-of-another-report
If it's a one-off invalid bug report, please reply with:
#syz invalid
Note: if the crash happens again, it will cause creation of a new bug
report.
Note: all commands must start from beginning of the line in the email body.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: KASAN: use-after-free Read in alloc_pid
2018-04-01 8:21 KASAN: use-after-free Read in alloc_pid syzbot
@ 2018-04-02 23:00 ` Eric W. Biederman
2018-04-03 3:10 ` Eric Biggers
2018-04-10 14:11 ` syzbot
1 sibling, 1 reply; 8+ messages in thread
From: Eric W. Biederman @ 2018-04-02 23:00 UTC (permalink / raw)
To: syzbot
Cc: akpm, dhowells, gs051095, linux-kernel, oleg, pasha.tatashin,
riel, rppt, syzkaller-bugs, wangkefeng.wang
syzbot <syzbot+7a1cff37dbbef9e7ba4c@syzkaller.appspotmail.com> writes:
> Hello,
>
> syzbot hit the following crash on upstream commit
> 9dd2326890d89a5179967c947dab2bab34d7ddee (Fri Mar 30 17:29:47 2018 +0000)
> Merge tag 'ceph-for-4.16-rc8' of git://github.com/ceph/ceph-client
> syzbot dashboard link:
> https://syzkaller.appspot.com/bug?extid=7a1cff37dbbef9e7ba4c
>
> So far this crash happened 4 times on upstream.
>
> Unfortunately, I don't have any reproducer for this crash yet.
Do you have any of the other traces? This looks like a something is
calling put_pid_ns more than it is calling get_pid_ns causing a
reference count mismatch.
If this is not: 9ee332d99e4d5a97548943b81c54668450ce641b
I could use a few more hints to help narrow down what is going wrong.
It would be nice to know what the other 3 crashes looked like and
exactly which upstream they were on.
Eric
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: KASAN: use-after-free Read in alloc_pid
2018-04-02 23:00 ` Eric W. Biederman
@ 2018-04-03 3:10 ` Eric Biggers
2018-04-03 10:45 ` Tetsuo Handa
0 siblings, 1 reply; 8+ messages in thread
From: Eric Biggers @ 2018-04-03 3:10 UTC (permalink / raw)
To: Eric W. Biederman
Cc: syzbot, akpm, dhowells, gs051095, linux-kernel, oleg,
pasha.tatashin, riel, rppt, syzkaller-bugs, wangkefeng.wang
On Mon, Apr 02, 2018 at 06:00:57PM -0500, Eric W. Biederman wrote:
> syzbot <syzbot+7a1cff37dbbef9e7ba4c@syzkaller.appspotmail.com> writes:
>
> > Hello,
> >
> > syzbot hit the following crash on upstream commit
> > 9dd2326890d89a5179967c947dab2bab34d7ddee (Fri Mar 30 17:29:47 2018 +0000)
> > Merge tag 'ceph-for-4.16-rc8' of git://github.com/ceph/ceph-client
> > syzbot dashboard link:
> > https://syzkaller.appspot.com/bug?extid=7a1cff37dbbef9e7ba4c
> >
> > So far this crash happened 4 times on upstream.
> >
> > Unfortunately, I don't have any reproducer for this crash yet.
>
> Do you have any of the other traces? This looks like a something is
> calling put_pid_ns more than it is calling get_pid_ns causing a
> reference count mismatch.
>
> If this is not: 9ee332d99e4d5a97548943b81c54668450ce641b
>
> I could use a few more hints to help narrow down what is going wrong.
>
> It would be nice to know what the other 3 crashes looked like and
> exactly which upstream they were on.
>
The other crashes are shown on the syzbot dashboard (link was given in the
original email).
Eric
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: KASAN: use-after-free Read in alloc_pid
2018-04-03 3:10 ` Eric Biggers
@ 2018-04-03 10:45 ` Tetsuo Handa
0 siblings, 0 replies; 8+ messages in thread
From: Tetsuo Handa @ 2018-04-03 10:45 UTC (permalink / raw)
To: Eric Biggers, Eric W. Biederman
Cc: syzbot, akpm, dhowells, gs051095, linux-kernel, oleg,
pasha.tatashin, riel, rppt, syzkaller-bugs, wangkefeng.wang,
viro
On 2018/04/03 12:10, Eric Biggers wrote:
> On Mon, Apr 02, 2018 at 06:00:57PM -0500, Eric W. Biederman wrote:
>> syzbot <syzbot+7a1cff37dbbef9e7ba4c@syzkaller.appspotmail.com> writes:
>>
>>> Hello,
>>>
>>> syzbot hit the following crash on upstream commit
>>> 9dd2326890d89a5179967c947dab2bab34d7ddee (Fri Mar 30 17:29:47 2018 +0000)
>>> Merge tag 'ceph-for-4.16-rc8' of git://github.com/ceph/ceph-client
>>> syzbot dashboard link:
>>> https://syzkaller.appspot.com/bug?extid=7a1cff37dbbef9e7ba4c
>>>
>>> So far this crash happened 4 times on upstream.
>>>
>>> Unfortunately, I don't have any reproducer for this crash yet.
>>
>> Do you have any of the other traces? This looks like a something is
>> calling put_pid_ns more than it is calling get_pid_ns causing a
>> reference count mismatch.
>>
>> If this is not: 9ee332d99e4d5a97548943b81c54668450ce641b
Yes, that commit is the trigger. Al wrote patches. Let's check them.
http://lkml.kernel.org/r/20180402143415.GC30522@ZenIV.linux.org.uk
http://lkml.kernel.org/r/20180403052009.GH30522@ZenIV.linux.org.uk
----------
struct pid *alloc_pid(struct pid_namespace *ns) {
(...snipped...)
if (unlikely(is_child_reaper(pid))) {
if (pid_ns_prepare_proc(ns)) // ns is freed upon failure.
goto out_free;
}
(...snipped...)
out_free:
spin_lock_irq(&pidmap_lock);
while (++i <= ns->level) // <= ns is already freed by destroy_pid_namespace() explained below.
idr_remove(&ns->idr, (pid->numbers + i)->nr);
(...snipped...)
}
----------
----------
int pid_ns_prepare_proc(struct pid_namespace *ns) {
mnt = kern_mount_data(&proc_fs_type, ns) { // <= ns is passed as ns.
mnt = vfs_kern_mount(type, SB_KERNMOUNT, type->name, data) { // <= ns is passed as data.
root = mount_fs(type, SB_KERNMOUNT, name, data) { // <= ns is passed as data.
root = type->mount(type, SB_KERNMOUNT, name, data) = // <= ns is passed as data.
static struct dentry *proc_mount(struct file_system_type *fs_type, int flags, const char *dev_name, void *data) {
return mount_ns(fs_type, SB_KERNMOUNT, NULL, ns, ns->user_ns, proc_fill_super) { // <= ns is passed as ns.
sb = sget_userns(fs_type, ns_test_super, ns_set_super, SB_KERNMOUNT, user_ns, ns) { // <= ns is passed as ns.
err = set(s, data) = // <= ns is passed as data.
static int ns_set_super(struct super_block *sb, void *data) {
sb->s_fs_info = data; // ns is associated here.
}
err = register_shrinker(&s->s_shrink); // <= fail by fault injection.
deactivate_locked_super(s) {
fs->kill_sb(s) =
static void proc_kill_sb(struct super_block *sb) {
ns = (struct pid_namespace *)sb->s_fs_info;
put_pid_ns(ns) { // <= ns is passed as ns
kref_put(&ns->kref, free_pid_ns) { // <= ns refcount becomes 0
destroy_pid_namespace(ns) {
call_rcu(&ns->rcu, delayed_free_pidns) {
kmem_cache_free(pid_ns_cachep, ns); // <= ns is released here after RCU grace period
}
}
}
}
}
}
}
}
}
}
}
}
}
----------
>>
>> I could use a few more hints to help narrow down what is going wrong.
>>
>> It would be nice to know what the other 3 crashes looked like and
>> exactly which upstream they were on.
>>
>
> The other crashes are shown on the syzbot dashboard (link was given in the
> original email).
>
> Eric
>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: KASAN: use-after-free Read in alloc_pid
2018-04-01 8:21 KASAN: use-after-free Read in alloc_pid syzbot
2018-04-02 23:00 ` Eric W. Biederman
@ 2018-04-10 14:11 ` syzbot
2018-04-10 14:33 ` Tetsuo Handa
1 sibling, 1 reply; 8+ messages in thread
From: syzbot @ 2018-04-10 14:11 UTC (permalink / raw)
To: akpm, dhowells, ebiederm, ebiggers3, gs051095, ktkhai,
linux-kernel, oleg, pasha.tatashin, penguin-kernel, riel, rppt,
syzkaller-bugs, viro, wangkefeng.wang
syzbot has found reproducer for the following crash on upstream commit
c18bb396d3d261ebbb4efbc05129c5d354c541e4 (Tue Apr 10 00:04:10 2018 +0000)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
syzbot dashboard link:
https://syzkaller.appspot.com/bug?extid=7a1cff37dbbef9e7ba4c
So far this crash happened 7 times on upstream.
C reproducer: https://syzkaller.appspot.com/x/repro.c?id=5445199996125184
syzkaller reproducer:
https://syzkaller.appspot.com/x/repro.syz?id=5779667084640256
Raw console output:
https://syzkaller.appspot.com/x/log.txt?id=5571293525049344
Kernel config:
https://syzkaller.appspot.com/x/.config?id=-771321277174894814
compiler: gcc (GCC) 8.0.1 20180301 (experimental)
IMPORTANT: if you fix the bug, please add the following tag to the commit:
Reported-by: syzbot+7a1cff37dbbef9e7ba4c@syzkaller.appspotmail.com
It will help syzbot understand when the bug is fixed.
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS
Google 01/01/2011
Call Trace:
__dump_stack lib/dump_stack.c:77 [inline]
dump_stack+0x1b9/0x294 lib/dump_stack.c:113
==================================================================
fail_dump lib/fault-inject.c:51 [inline]
should_fail.cold.4+0xa/0x1a lib/fault-inject.c:149
BUG: KASAN: use-after-free in alloc_pid+0x9e8/0xa50 kernel/pid.c:236
Read of size 4 at addr ffff8801ad357898 by task syzkaller392486/4543
__should_failslab+0x124/0x180 mm/failslab.c:32
should_failslab+0x9/0x14 mm/slab_common.c:1522
slab_pre_alloc_hook mm/slab.h:423 [inline]
slab_alloc mm/slab.c:3378 [inline]
kmem_cache_alloc+0x2af/0x760 mm/slab.c:3552
__d_alloc+0xc1/0xc00 fs/dcache.c:1624
d_alloc+0x8e/0x370 fs/dcache.c:1702
d_alloc_name+0xb3/0x110 fs/dcache.c:1756
proc_setup_self+0xbe/0x375 fs/proc/self.c:43
proc_fill_super+0x24d/0x2f5 fs/proc/inode.c:514
mount_ns+0x12a/0x1d0 fs/super.c:1036
proc_mount+0x73/0xa0 fs/proc/root.c:101
mount_fs+0xae/0x328 fs/super.c:1222
vfs_kern_mount.part.34+0xd4/0x4d0 fs/namespace.c:1037
vfs_kern_mount fs/namespace.c:3303 [inline]
kern_mount_data+0x50/0xc0 fs/namespace.c:3303
pid_ns_prepare_proc+0x1e/0x90 fs/proc/root.c:222
alloc_pid+0x8cf/0xa50 kernel/pid.c:208
copy_process.part.38+0x36bf/0x6ee0 kernel/fork.c:1809
copy_process kernel/fork.c:1608 [inline]
_do_fork+0x291/0x12a0 kernel/fork.c:2089
SYSC_clone kernel/fork.c:2196 [inline]
SyS_clone+0x37/0x50 kernel/fork.c:2190
do_syscall_64+0x29e/0x9d0 arch/x86/entry/common.c:287
entry_SYSCALL_64_after_hwframe+0x42/0xb7
RIP: 0033:0x442639
RSP: 002b:00007ffd890f8138 EFLAGS: 00000206 ORIG_RAX: 0000000000000038
RAX: ffffffffffffffda RBX: 0000000000000001 RCX: 0000000000442639
RDX: 00000000200008c0 RSI: 0000000020000800 RDI: 000000002000c100
RBP: 00007ffd890f8250 R08: 0000000020000940 R09: 0000000400000000
R10: 0000000020000900 R11: 0000000000000206 R12: 0000000000000000
R13: 0000000000000000 R14: 0000000000001380 R15: 00007ffd890f8278
CPU: 1 PID: 4543 Comm: syzkaller392486 Not tainted 4.16.0+ #17
proc_fill_super: can't allocate /proc/self
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS
Google 01/01/2011
Call Trace:
__dump_stack lib/dump_stack.c:77 [inline]
dump_stack+0x1b9/0x294 lib/dump_stack.c:113
print_address_description+0x6c/0x20b mm/kasan/report.c:256
kasan_report_error mm/kasan/report.c:354 [inline]
kasan_report.cold.7+0xac/0x2f5 mm/kasan/report.c:412
__asan_report_load4_noabort+0x14/0x20 mm/kasan/report.c:432
alloc_pid+0x9e8/0xa50 kernel/pid.c:236
copy_process.part.38+0x36bf/0x6ee0 kernel/fork.c:1809
copy_process kernel/fork.c:1608 [inline]
_do_fork+0x291/0x12a0 kernel/fork.c:2089
SYSC_clone kernel/fork.c:2196 [inline]
SyS_clone+0x37/0x50 kernel/fork.c:2190
do_syscall_64+0x29e/0x9d0 arch/x86/entry/common.c:287
entry_SYSCALL_64_after_hwframe+0x42/0xb7
RIP: 0033:0x442639
RSP: 002b:00007ffd890f8138 EFLAGS: 00000206 ORIG_RAX: 0000000000000038
RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 0000000000442639
RDX: 00000000200008c0 RSI: 0000000020000800 RDI: 000000002000c100
RBP: 00007ffd890f8250 R08: 0000000020000940 R09: 0000000000000000
R10: 0000000020000900 R11: 0000000000000206 R12: 0000000000000000
R13: 0000000000000000 R14: 0000000000000000 R15: 00007ffd890f8278
Allocated by task 4543:
save_stack+0x43/0xd0 mm/kasan/kasan.c:448
set_track mm/kasan/kasan.c:460 [inline]
kasan_kmalloc+0xc4/0xe0 mm/kasan/kasan.c:553
kasan_slab_alloc+0x12/0x20 mm/kasan/kasan.c:490
kmem_cache_alloc+0x12e/0x760 mm/slab.c:3554
kmem_cache_zalloc include/linux/slab.h:691 [inline]
create_pid_namespace kernel/pid_namespace.c:97 [inline]
copy_pid_ns+0x2c3/0xb40 kernel/pid_namespace.c:156
create_new_namespaces+0x48a/0x8f0 kernel/nsproxy.c:94
copy_namespaces+0x3f7/0x4c0 kernel/nsproxy.c:165
copy_process.part.38+0x353a/0x6ee0 kernel/fork.c:1798
copy_process kernel/fork.c:1608 [inline]
_do_fork+0x291/0x12a0 kernel/fork.c:2089
SYSC_clone kernel/fork.c:2196 [inline]
SyS_clone+0x37/0x50 kernel/fork.c:2190
do_syscall_64+0x29e/0x9d0 arch/x86/entry/common.c:287
entry_SYSCALL_64_after_hwframe+0x42/0xb7
Freed by task 4397:
save_stack+0x43/0xd0 mm/kasan/kasan.c:448
set_track mm/kasan/kasan.c:460 [inline]
__kasan_slab_free+0x11a/0x170 mm/kasan/kasan.c:521
kasan_slab_free+0xe/0x10 mm/kasan/kasan.c:528
__cache_free mm/slab.c:3498 [inline]
kmem_cache_free+0x86/0x2d0 mm/slab.c:3756
delayed_free_pidns+0xaa/0xe0 kernel/pid_namespace.c:138
__rcu_reclaim kernel/rcu/rcu.h:178 [inline]
rcu_do_batch kernel/rcu/tree.c:2675 [inline]
invoke_rcu_callbacks kernel/rcu/tree.c:2930 [inline]
__rcu_process_callbacks kernel/rcu/tree.c:2897 [inline]
rcu_process_callbacks+0x941/0x15f0 kernel/rcu/tree.c:2914
__do_softirq+0x2e0/0xaf5 kernel/softirq.c:285
The buggy address belongs to the object at ffff8801ad357850
which belongs to the cache pid_namespace of size 240
The buggy address is located 72 bytes inside of
240-byte region [ffff8801ad357850, ffff8801ad357940)
The buggy address belongs to the page:
page:ffffea0006b4d5c0 count:1 mapcount:0 mapping:ffff8801ad357000 index:0x0
flags: 0x2fffc0000000100(slab)
raw: 02fffc0000000100 ffff8801ad357000 0000000000000000 000000010000000d
raw: ffffea0007641de0 ffff8801d47f3248 ffff8801d4f030c0 0000000000000000
page dumped because: kasan: bad access detected
Memory state around the buggy address:
ffff8801ad357780: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
ffff8801ad357800: 00 00 fc fc fc fc fc fc fc fc fb fb fb fb fb fb
> ffff8801ad357880: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
^
ffff8801ad357900: fb fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc
ffff8801ad357980: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
==================================================================
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: KASAN: use-after-free Read in alloc_pid
2018-04-10 14:11 ` syzbot
@ 2018-04-10 14:33 ` Tetsuo Handa
2018-04-21 10:43 ` Tetsuo Handa
0 siblings, 1 reply; 8+ messages in thread
From: Tetsuo Handa @ 2018-04-10 14:33 UTC (permalink / raw)
To: viro
Cc: syzbot+7a1cff37dbbef9e7ba4c, akpm, dhowells, ebiederm, ebiggers3,
gs051095, ktkhai, linux-kernel, oleg, pasha.tatashin, riel, rppt,
syzkaller-bugs, wangkefeng.wang
syzbot wrote:
> syzbot has found reproducer for the following crash on upstream commit
> c18bb396d3d261ebbb4efbc05129c5d354c541e4 (Tue Apr 10 00:04:10 2018 +0000)
> Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
> syzbot dashboard link:
> https://syzkaller.appspot.com/bug?extid=7a1cff37dbbef9e7ba4c
>
While we are waiting for
rpc_pipefs: fix double-dput()
rpc_pipefs: deal with early sget() failures
kernfs: deal with early sget() failures
procfs: deal with early sget() failures
orangefs_kill_sb(): deal with allocation failures
nfsd_umount(): deal with early sget() failures
nfs: avoid double-free on early sget() failures
jffs2_kill_sb(): deal with failed allocations
hypfs_kill_super(): deal with failed allocations
in https://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git/log/?h=for-linus ,
I think the patch at
WARNING in kill_block_super
https://syzkaller.appspot.com/bug?id=588996a25a2587be2e3a54e8646728fb9cae44e7
is better.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: KASAN: use-after-free Read in alloc_pid
2018-04-10 14:33 ` Tetsuo Handa
@ 2018-04-21 10:43 ` Tetsuo Handa
2018-04-24 16:33 ` Eric W. Biederman
0 siblings, 1 reply; 8+ messages in thread
From: Tetsuo Handa @ 2018-04-21 10:43 UTC (permalink / raw)
To: syzbot+7a1cff37dbbef9e7ba4c, syzkaller-bugs
Cc: viro, akpm, dhowells, ebiederm, ebiggers3, gs051095, ktkhai,
linux-kernel, oleg, pasha.tatashin, riel, rppt, wangkefeng.wang
On 2018/04/10 23:33, Tetsuo Handa wrote:
> syzbot wrote:
>> syzbot has found reproducer for the following crash on upstream commit
>> c18bb396d3d261ebbb4efbc05129c5d354c541e4 (Tue Apr 10 00:04:10 2018 +0000)
>> Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
>> syzbot dashboard link:
>> https://syzkaller.appspot.com/bug?extid=7a1cff37dbbef9e7ba4c
>>
> While we are waiting for
>
> rpc_pipefs: fix double-dput()
> rpc_pipefs: deal with early sget() failures
> kernfs: deal with early sget() failures
> procfs: deal with early sget() failures
> orangefs_kill_sb(): deal with allocation failures
> nfsd_umount(): deal with early sget() failures
> nfs: avoid double-free on early sget() failures
> jffs2_kill_sb(): deal with failed allocations
> hypfs_kill_super(): deal with failed allocations
>
> in https://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git/log/?h=for-linus ,
> I think the patch at
>
> WARNING in kill_block_super
> https://syzkaller.appspot.com/bug?id=588996a25a2587be2e3a54e8646728fb9cae44e7
>
> is better.
>
OK. The patch was sent to linux.git as commit 8e04944f0ea8b838.
#syz fix: mm,vmscan: Allow preallocating memory for register_shrinker().
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: KASAN: use-after-free Read in alloc_pid
2018-04-21 10:43 ` Tetsuo Handa
@ 2018-04-24 16:33 ` Eric W. Biederman
0 siblings, 0 replies; 8+ messages in thread
From: Eric W. Biederman @ 2018-04-24 16:33 UTC (permalink / raw)
To: Tetsuo Handa
Cc: syzbot+7a1cff37dbbef9e7ba4c, syzkaller-bugs, viro, akpm,
dhowells, ebiggers3, gs051095, ktkhai, linux-kernel, oleg,
pasha.tatashin, riel, rppt, wangkefeng.wang
Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp> writes:
> On 2018/04/10 23:33, Tetsuo Handa wrote:
>> syzbot wrote:
>>> syzbot has found reproducer for the following crash on upstream commit
>>> c18bb396d3d261ebbb4efbc05129c5d354c541e4 (Tue Apr 10 00:04:10 2018 +0000)
>>> Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
>>> syzbot dashboard link:
>>> https://syzkaller.appspot.com/bug?extid=7a1cff37dbbef9e7ba4c
>>>
>> While we are waiting for
>>
>> rpc_pipefs: fix double-dput()
>> rpc_pipefs: deal with early sget() failures
>> kernfs: deal with early sget() failures
>> procfs: deal with early sget() failures
>> orangefs_kill_sb(): deal with allocation failures
>> nfsd_umount(): deal with early sget() failures
>> nfs: avoid double-free on early sget() failures
>> jffs2_kill_sb(): deal with failed allocations
>> hypfs_kill_super(): deal with failed allocations
>>
>> in https://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git/log/?h=for-linus ,
>> I think the patch at
>>
>> WARNING in kill_block_super
>> https://syzkaller.appspot.com/bug?id=588996a25a2587be2e3a54e8646728fb9cae44e7
>>
>> is better.
>>
>
> OK. The patch was sent to linux.git as commit 8e04944f0ea8b838.
>
> #syz fix: mm,vmscan: Allow preallocating memory for
> register_shrinker().
Sigh no fixes tag on the commit you sent to Linus, and no
cc'ing of stable.
Can you please update the stable folks that 9ee332d99e4d ("sget():
handle failures of register_shrinker()") is fixed with the commit you
just sent to Linus?
Thank you,
Eric
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2018-04-24 16:34 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-04-01 8:21 KASAN: use-after-free Read in alloc_pid syzbot
2018-04-02 23:00 ` Eric W. Biederman
2018-04-03 3:10 ` Eric Biggers
2018-04-03 10:45 ` Tetsuo Handa
2018-04-10 14:11 ` syzbot
2018-04-10 14:33 ` Tetsuo Handa
2018-04-21 10:43 ` Tetsuo Handa
2018-04-24 16:33 ` Eric W. Biederman
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).