FYI, we noticed the below changes on
https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git for-4.4/io-poll
commit fccce5610a68137c8e974d51719a81344b16750b ("directio: add block polling support")
[ 1667.891609] WARNING: CPU: 0 PID: 4493 at kernel/sched/core.c:7533 __might_sleep+0x60/0x7c()
[ 1667.893783] do not call blocking ops when !TASK_RUNNING; state=2 set at [<ffffffff8122e49e>] do_blockdev_direct_IO+0xad5/0xc03
[ 1667.903111] Modules linked in:
[ 1667.903913] CPU: 0 PID: 4493 Comm: xfs_io Tainted: G W 4.3.0-06686-gfccce56 #1
[ 1667.906139] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Debian-1.8.2-1 04/01/2014
[ 1667.908049] 0000000000000000 ffff88001c183880 ffffffff81734662 ffff88001c1838c8
[ 1667.909852] ffff88001c1838b8 ffffffff810d77de ffffffff810f9564 ffffffff83a72b20
[ 1667.911666] 00000000000004a7 0000000000000000 0000000000000014 ffff88001c183920
[ 1667.920421] Call Trace:
[ 1667.921097] [<ffffffff81734662>] dump_stack+0x4b/0x63
[ 1667.922112] [<ffffffff810d77de>] warn_slowpath_common+0x99/0xb2
[ 1667.923521] [<ffffffff810f9564>] ? __might_sleep+0x60/0x7c
[ 1667.924878] [<ffffffff810d783f>] warn_slowpath_fmt+0x48/0x50
[ 1667.926234] [<ffffffff8122e49e>] ? do_blockdev_direct_IO+0xad5/0xc03
[ 1667.936206] [<ffffffff8122e49e>] ? do_blockdev_direct_IO+0xad5/0xc03
[ 1667.937509] [<ffffffff810f9564>] __might_sleep+0x60/0x7c
[ 1667.938777] [<ffffffff810964af>] __do_page_fault+0x24d/0x412
[ 1667.942327] [<ffffffff810967e6>] trace_do_page_fault+0x14b/0x1ee
[ 1667.943889] [<ffffffff81090d9a>] do_async_page_fault+0x31/0x63
[ 1667.946861] [<ffffffff82e15938>] async_page_fault+0x28/0x30
[ 1667.947989] [<ffffffff8122e4d0>] ? do_blockdev_direct_IO+0xb07/0xc03
[ 1667.951321] [<ffffffff811145f5>] ? __lock_acquire+0x65b/0xdee
[ 1667.952486] [<ffffffff815f768f>] ? btrfs_page_exists_in_range+0x1ce/0x1ce
[ 1667.957004] [<ffffffff815f2627>] ? finish_ordered_fn+0x17/0x17
[ 1667.958410] [<ffffffff8122e5fd>] __blockdev_direct_IO+0x31/0x33
[ 1667.962900] [<ffffffff8122e5fd>] ? __blockdev_direct_IO+0x31/0x33
[ 1667.966229] [<ffffffff815f2627>] ? finish_ordered_fn+0x17/0x17
[ 1667.967416] [<ffffffff815ed4db>] btrfs_direct_IO+0x1b6/0x252
[ 1667.970738] [<ffffffff815f2627>] ? finish_ordered_fn+0x17/0x17
[ 1667.974253] [<ffffffff811a5d02>] generic_file_direct_write+0xb3/0x128
[ 1667.975749] [<ffffffff815fcf32>] btrfs_file_write_iter+0x22c/0x40e
[ 1667.980342] [<ffffffff81111312>] ? __lock_is_held+0x3c/0x57
[ 1667.981579] [<ffffffff811fbec1>] __vfs_write+0x7c/0xa5
[ 1667.984778] [<ffffffff811fc662>] vfs_write+0xa0/0xeb
[ 1667.985853] [<ffffffff811fcf7b>] SyS_pwrite64+0x65/0x84
[ 1668.008257] [<ffffffff82e13732>] entry_SYSCALL_64_fastpath+0x12/0x76
[ 1668.009596] ---[ end trace 5d6c4ecce3f0aa36 ]---
[ 1668.010695] BUG: unable to handle kernel NULL pointer dereference at 0000000000000110
[ 1668.012237] IP: [<ffffffff8122e4d0>] do_blockdev_direct_IO+0xb07/0xc03
[ 1668.012237] PGD 22fce067 PUD 25117067 PMD 0
[ 1668.012237] Oops: 0000 [#1] SMP DEBUG_PAGEALLOC
[ 1668.012237] Modules linked in:
[ 1668.012237] CPU: 0 PID: 4493 Comm: xfs_io Tainted: G W 4.3.0-06686-gfccce56 #1
[ 1668.012237] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Debian-1.8.2-1 04/01/2014
[ 1668.012237] task: ffff880016670d40 ti: ffff88001c180000 task.ti: ffff88001c180000
[ 1668.012237] RIP: 0010:[<ffffffff8122e4d0>] [<ffffffff8122e4d0>] do_blockdev_direct_IO+0xb07/0xc03
[ 1668.012237] RSP: 0018:ffff88001c183ab0 EFLAGS: 00010286
[ 1668.012237] RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000018456060d06
[ 1668.012237] RDX: 0000018456060d07 RSI: 00000000ffffffff RDI: 0000000000000246
[ 1668.012237] RBP: ffff88001c183ca0 R08: ffff880057a0dfa0 R09: 0000000000000010
[ 1668.012237] R10: ffff88001c183a10 R11: ffff880028d8fd90 R12: ffff880016670d40
[ 1668.012237] R13: 0000000000000000 R14: ffff880028d8fd40 R15: ffff88001c183d70
[ 1668.012237] FS: 00007f31075dd700(0000) GS:ffff880057a00000(0000) knlGS:0000000000000000
[ 1668.012237] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 1668.012237] CR2: 0000000000000110 CR3: 0000000022f0e000 CR4: 00000000000406f0
[ 1668.012237] Stack:
[ 1668.012237] ffff88001c183c60 ffff880022396000 0000000000001000 ffffffff811145f5
[ 1668.012237] 0000000000001000 fffffffffffff000 0000000000000fff ffff880016670d40
[ 1668.012237] ffff880016670d40 0000000000001000 0000000000001000 ffffffff00001000
[ 1668.012237] Call Trace:
[ 1668.012237] [<ffffffff811145f5>] ? __lock_acquire+0x65b/0xdee
[ 1668.012237] [<ffffffff815f768f>] ? btrfs_page_exists_in_range+0x1ce/0x1ce
[ 1668.012237] [<ffffffff815f2627>] ? finish_ordered_fn+0x17/0x17
[ 1668.012237] [<ffffffff8122e5fd>] __blockdev_direct_IO+0x31/0x33
[ 1668.012237] [<ffffffff8122e5fd>] ? __blockdev_direct_IO+0x31/0x33
[ 1668.012237] [<ffffffff815f2627>] ? finish_ordered_fn+0x17/0x17
[ 1668.012237] [<ffffffff815ed4db>] btrfs_direct_IO+0x1b6/0x252
[ 1668.012237] [<ffffffff815f2627>] ? finish_ordered_fn+0x17/0x17
[ 1668.012237] [<ffffffff811a5d02>] generic_file_direct_write+0xb3/0x128
[ 1668.012237] [<ffffffff815fcf32>] btrfs_file_write_iter+0x22c/0x40e
[ 1668.012237] [<ffffffff81111312>] ? __lock_is_held+0x3c/0x57
[ 1668.012237] [<ffffffff811fbec1>] __vfs_write+0x7c/0xa5
[ 1668.012237] [<ffffffff811fc662>] vfs_write+0xa0/0xeb
[ 1668.012237] [<ffffffff811fcf7b>] SyS_pwrite64+0x65/0x84
[ 1668.012237] [<ffffffff82e13732>] entry_SYSCALL_64_fastpath+0x12/0x76
[ 1668.012237] Code: 48 89 c6 49 c7 84 24 70 24 00 00 9e e4 22 81 49 c7 04 24 02 00 00 00 4d 89 a6 a0 00 00 00 e8 ca 48 be 01 49 8b 46 10 41 8b 76 08 <48> 8b 80 10 01 00 00 48 8b b8 c8 05 00 00 e8 25 42 4e 00 84 c0
[ 1668.012237] RIP [<ffffffff8122e4d0>] do_blockdev_direct_IO+0xb07/0xc03
[ 1668.012237] RSP <ffff88001c183ab0>
[ 1668.012237] CR2: 0000000000000110
[ 1668.184945] ---[ end trace 5d6c4ecce3f0aa37 ]---
To reproduce:
git clone git://git.kernel.org/pub/scm/linux/kernel/git/wfg/lkp-tests.git
cd lkp-tests
bin/lkp install job.yaml # job file is attached in this email
bin/lkp run job.yaml
Thanks,
Ying Huang
On 11/09/2015 07:03 PM, kernel test robot wrote:
> FYI, we noticed the below changes on
>
> https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git for-4.4/io-poll
> commit fccce5610a68137c8e974d51719a81344b16750b ("directio: add block polling support")
>
>
> [ 1667.891609] WARNING: CPU: 0 PID: 4493 at kernel/sched/core.c:7533 __might_sleep+0x60/0x7c()
> [ 1667.893783] do not call blocking ops when !TASK_RUNNING; state=2 set at [<ffffffff8122e49e>] do_blockdev_direct_IO+0xad5/0xc03
> [ 1667.903111] Modules linked in:
> [ 1667.903913] CPU: 0 PID: 4493 Comm: xfs_io Tainted: G W 4.3.0-06686-gfccce56 #1
> [ 1667.906139] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Debian-1.8.2-1 04/01/2014
> [ 1667.908049] 0000000000000000 ffff88001c183880 ffffffff81734662 ffff88001c1838c8
> [ 1667.909852] ffff88001c1838b8 ffffffff810d77de ffffffff810f9564 ffffffff83a72b20
> [ 1667.911666] 00000000000004a7 0000000000000000 0000000000000014 ffff88001c183920
> [ 1667.920421] Call Trace:
> [ 1667.921097] [<ffffffff81734662>] dump_stack+0x4b/0x63
> [ 1667.922112] [<ffffffff810d77de>] warn_slowpath_common+0x99/0xb2
> [ 1667.923521] [<ffffffff810f9564>] ? __might_sleep+0x60/0x7c
> [ 1667.924878] [<ffffffff810d783f>] warn_slowpath_fmt+0x48/0x50
> [ 1667.926234] [<ffffffff8122e49e>] ? do_blockdev_direct_IO+0xad5/0xc03
> [ 1667.936206] [<ffffffff8122e49e>] ? do_blockdev_direct_IO+0xad5/0xc03
> [ 1667.937509] [<ffffffff810f9564>] __might_sleep+0x60/0x7c
> [ 1667.938777] [<ffffffff810964af>] __do_page_fault+0x24d/0x412
> [ 1667.942327] [<ffffffff810967e6>] trace_do_page_fault+0x14b/0x1ee
> [ 1667.943889] [<ffffffff81090d9a>] do_async_page_fault+0x31/0x63
> [ 1667.946861] [<ffffffff82e15938>] async_page_fault+0x28/0x30
> [ 1667.947989] [<ffffffff8122e4d0>] ? do_blockdev_direct_IO+0xb07/0xc03
> [ 1667.951321] [<ffffffff811145f5>] ? __lock_acquire+0x65b/0xdee
> [ 1667.952486] [<ffffffff815f768f>] ? btrfs_page_exists_in_range+0x1ce/0x1ce
> [ 1667.957004] [<ffffffff815f2627>] ? finish_ordered_fn+0x17/0x17
> [ 1667.958410] [<ffffffff8122e5fd>] __blockdev_direct_IO+0x31/0x33
> [ 1667.962900] [<ffffffff8122e5fd>] ? __blockdev_direct_IO+0x31/0x33
> [ 1667.966229] [<ffffffff815f2627>] ? finish_ordered_fn+0x17/0x17
> [ 1667.967416] [<ffffffff815ed4db>] btrfs_direct_IO+0x1b6/0x252
> [ 1667.970738] [<ffffffff815f2627>] ? finish_ordered_fn+0x17/0x17
> [ 1667.974253] [<ffffffff811a5d02>] generic_file_direct_write+0xb3/0x128
> [ 1667.975749] [<ffffffff815fcf32>] btrfs_file_write_iter+0x22c/0x40e
> [ 1667.980342] [<ffffffff81111312>] ? __lock_is_held+0x3c/0x57
> [ 1667.981579] [<ffffffff811fbec1>] __vfs_write+0x7c/0xa5
> [ 1667.984778] [<ffffffff811fc662>] vfs_write+0xa0/0xeb
> [ 1667.985853] [<ffffffff811fcf7b>] SyS_pwrite64+0x65/0x84
> [ 1668.008257] [<ffffffff82e13732>] entry_SYSCALL_64_fastpath+0x12/0x76
Thanks, fixed:
http://git.kernel.dk/cgit/linux-block/commit/?h=for-4.4/io-poll&id=c1c534609fe8a859f9c8108a5591e6e8a97e34d1
--
Jens Axboe