linux-block.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* for-next branch and throttling
@ 2018-12-06 16:39 Bart Van Assche
  2018-12-06 16:47 ` Jens Axboe
  0 siblings, 1 reply; 2+ messages in thread
From: Bart Van Assche @ 2018-12-06 16:39 UTC (permalink / raw)
  To: Jens Axboe; +Cc: linux-block@vger.kernel.org

Hello,

If I merge Jens' for-next branch with Linus' master branch and boot the
resulting kernel in a VM then the call trace shown below appears. This call
trace does not appear when building and booting the code from Linus' master
branch. Is this perhaps a regression?

WARNING: CPU: 1 PID: 257 at block/blk-throttle.c:2128 blk_throtl_bio+0xc00/0x1120
Modules linked in: floppy(+) virtio_blk(+) virtio_net net_failover failover i2c_piix4 pata_acpi
CPU: 1 PID: 257 Comm: systemd-udevd Not tainted 4.20.0-rc5-dbg+ #1
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1 04/01/2014
RIP: 0010:blk_throtl_bio+0xc00/0x1120
Call Trace:
 ? create_task_io_context+0x1a2/0x1e0
 ? lock_downgrade+0x2e0/0x2e0
 ? kasan_check_read+0x11/0x20
 ? do_raw_spin_unlock+0xa8/0x140
 ? preempt_count_sub+0x18/0xd0
 generic_make_request_checks+0x432/0xcc0
 ? trace_event_raw_event_block_rq_requeue+0x290/0x290
 ? __lock_acquire+0x5b0/0x17e0
 ? __bio_associate_blkg.isra.33+0x1d0/0x3c0
 generic_make_request+0x151/0x950
 ? blk_queue_enter+0x7e0/0x7e0
 submit_bio+0x9b/0x250
 ? submit_bio+0x9b/0x250
 ? generic_make_request+0x950/0x950
 ? guard_bio_eod+0x120/0x2d0
 submit_bh_wbc+0x2df/0x310
 block_read_full_page+0x34c/0x4c0
 ? I_BDEV+0x20/0x20
 ? __bread_gfp+0x170/0x170
 ? add_to_page_cache_locked+0x20/0x20
 ? blkdev_writepages+0x10/0x10
 ? blkdev_writepages+0x10/0x10
 blkdev_readpage+0x18/0x20
 do_read_cache_page+0x5ed/0xbf0
 ? blkdev_writepages+0x10/0x10
 ? find_valid_gpt+0x1a8/0x8b0
 ? efi_partition+0x147/0x6c1
 ? check_partition+0x1b2/0x314
 ? blkdev_get+0x1f2/0x5a0
 ? __device_add_disk+0x6c1/0x7e0
 ? device_add_disk+0x13/0x20
 ? pagecache_get_page+0x420/0x420
 ? driver_probe_device+0x118/0x180
 ? __driver_attach+0x167/0x190
 ? bus_for_each_dev+0x105/0x160
 ? driver_attach+0x2b/0x30
 ? bus_add_driver+0x23d/0x350
 ? driver_register+0xdc/0x160
 ? register_virtio_driver+0x3c/0x60
 ? init+0x51/0x1000 [virtio_blk]
 ? do_one_initcall+0xb4/0x3a1
 ? do_init_module+0x103/0x360
 ? load_module+0x443e/0x4630
 ? __do_sys_finit_module+0x12d/0x1b0
 ? __x64_sys_finit_module+0x43/0x50
 ? do_syscall_64+0x71/0x210
 ? entry_SYSCALL_64_after_hwframe+0x49/0xbe
 ? match_held_lock+0x20/0x250
 ? match_held_lock+0x35/0x250
 ? blkdev_writepages+0x10/0x10
 read_cache_page+0x3a/0x50
 read_dev_sector+0x64/0x170
 read_lba+0x1f9/0x3a0
 ? msdos_partition+0x1370/0x1370
 ? find_valid_gpt+0x1a8/0x8b0
 ? kmem_cache_alloc_trace+0x151/0x340
 ? find_valid_gpt+0x1a8/0x8b0
 find_valid_gpt+0x1c6/0x8b0
 ? is_gpt_valid.part.5+0x640/0x640
 ? __alloc_pages_nodemask+0x1c4/0x4d0
 ? lockdep_hardirqs_on+0x182/0x260
 ? get_page_from_freelist+0x648/0x2070
 ? mark_lock+0x69/0x8d0
 ? trace_hardirqs_on+0x24/0x130
 ? kasan_unpoison_shadow+0x35/0x50
 ? get_page_from_freelist+0x648/0x2070
 ? __asan_loadN+0xf/0x20
 ? widen_string+0x73/0x170
 ? __asan_loadN+0xf/0x20
 ? widen_string+0x73/0x170
 ? get_page_from_freelist+0x1eea/0x2070
 ? set_precision+0x90/0x90
 ? string+0x135/0x180
 efi_partition+0x147/0x6c1
 ? format_decode+0xce/0x550
 ? enable_ptr_key_workfn+0x30/0x30
 ? find_valid_gpt+0x8b0/0x8b0
 ? vsnprintf+0x11d/0x820
 ? pointer+0x4d0/0x4d0
 ? snprintf+0x88/0xa0
 ? snprintf+0x88/0xa0
 ? vsprintf+0x20/0x20
 ? find_valid_gpt+0x8b0/0x8b0
 check_partition+0x1b2/0x314
 rescan_partitions+0x13b/0x440
 __blkdev_get+0x61f/0x930
 ? check_disk_change+0xa0/0xa0
 ? lock_downgrade+0x2e0/0x2e0
 ? var_wake_function+0x90/0x90
 blkdev_get+0x1f2/0x5a0
 ? preempt_count_sub+0x18/0xd0
 ? _raw_spin_unlock+0x31/0x50
 ? bd_may_claim+0x80/0x80
 ? bdget+0x26b/0x280
 ? blkdev_writepage+0x20/0x20
 ? kasan_check_read+0x11/0x20
 ? kobject_put+0x23/0x220
 __device_add_disk+0x6c1/0x7e0
 ? blk_alloc_devt+0x150/0x150
 ? __asan_storeN+0x12/0x20
 device_add_disk+0x13/0x20
 virtblk_probe+0x839/0xace [virtio_blk]
 ? virtblk_restore+0xd0/0xd0 [virtio_blk]
 ? mutex_unlock+0x12/0x20
 ? kernfs_activate+0xd0/0xe0
 ? kasan_check_write+0x14/0x20
 ? kernfs_put+0x2c/0x280
 ? vring_transport_features+0x19/0x70
 ? vp_finalize_features+0xe6/0x160
 ? vp_get_status+0x29/0x30
 ? virtio_finalize_features+0xbe/0xe0
 virtio_dev_probe+0x27d/0x390
 really_probe+0x191/0x560
 ? driver_probe_device+0x180/0x180
 driver_probe_device+0x118/0x180
 ? driver_probe_device+0x180/0x180
 __driver_attach+0x167/0x190
 bus_for_each_dev+0x105/0x160
 ? subsys_dev_iter_exit+0x10/0x10
 ? kasan_check_read+0x11/0x20
 ? preempt_count_sub+0x18/0xd0
 ? _raw_spin_unlock+0x31/0x50
 driver_attach+0x2b/0x30
 bus_add_driver+0x23d/0x350
 driver_register+0xdc/0x160
 ? 0xffffffffa0070000
 register_virtio_driver+0x3c/0x60
 init+0x51/0x1000 [virtio_blk]
 do_one_initcall+0xb4/0x3a1
 ? trace_event_raw_event_initcall_finish+0x120/0x120
 ? kasan_unpoison_shadow+0x35/0x50
 ? __asan_register_globals+0x7b/0xa0
 do_init_module+0x103/0x360
 load_module+0x443e/0x4630
 ? module_frob_arch_sections+0x20/0x20
 ? vfs_read+0xe6/0x1e0
 ? kernel_read+0x79/0xa0
 ? kasan_check_write+0x14/0x20
 ? kernel_read_file+0x259/0x310
 ? do_mmap+0x431/0x6c0
 __do_sys_finit_module+0x12d/0x1b0
 ? __do_sys_finit_module+0x12d/0x1b0
 ? __do_sys_init_module+0x200/0x200
 ? kasan_check_write+0x14/0x20
 ? fput+0x1d/0xc0
 ? do_syscall_64+0x19/0x210
 ? entry_SYSCALL_64_after_hwframe+0x49/0xbe
 __x64_sys_finit_module+0x43/0x50
 do_syscall_64+0x71/0x210
 entry_SYSCALL_64_after_hwframe+0x49/0xbe

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: for-next branch and throttling
  2018-12-06 16:39 for-next branch and throttling Bart Van Assche
@ 2018-12-06 16:47 ` Jens Axboe
  0 siblings, 0 replies; 2+ messages in thread
From: Jens Axboe @ 2018-12-06 16:47 UTC (permalink / raw)
  To: Bart Van Assche; +Cc: linux-block@vger.kernel.org, Dennis Zhou

On 12/6/18 9:39 AM, Bart Van Assche wrote:
> Hello,
> 
> If I merge Jens' for-next branch with Linus' master branch and boot the
> resulting kernel in a VM then the call trace shown below appears. This call
> trace does not appear when building and booting the code from Linus' master
> branch. Is this perhaps a regression?
> 
> WARNING: CPU: 1 PID: 257 at block/blk-throttle.c:2128 blk_throtl_bio+0xc00/0x1120
> Modules linked in: floppy(+) virtio_blk(+) virtio_net net_failover failover i2c_piix4 pata_acpi
> CPU: 1 PID: 257 Comm: systemd-udevd Not tainted 4.20.0-rc5-dbg+ #1
> Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1 04/01/2014
> RIP: 0010:blk_throtl_bio+0xc00/0x1120

It's some over-zealous rcu removal, simple fix is coming. CC Dennis.

-- 
Jens Axboe


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2018-12-06 16:48 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-12-06 16:39 for-next branch and throttling Bart Van Assche
2018-12-06 16:47 ` Jens Axboe

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).