Hi, in an effort to avoid OOMs on virtual machines with not much memory (e.g. 1GB) I set the IO scheduler queue nr_requests to 2 (the device is a loop device on fuse). This causes the system to deadlock (with 4.4 - 4.10). E.g. following stack trace [ 1692.647562] Call Trace: [ 1692.647568] [<ffffffff8169d922>] ? __schedule+0x192/0x670 [ 1692.647571] [<ffffffff810a489a>] ? try_to_wake_up+0x4a/0x390 [ 1692.647572] [<ffffffff8169de36>] schedule+0x36/0x80 [ 1692.647574] [<ffffffff816a0f85>] schedule_timeout+0x235/0x3f0 [ 1692.647576] [<ffffffff810a4bf5>] ? wake_up_process+0x15/0x20 [ 1692.647579] [<ffffffff810235f5>] ? xen_clocksource_get_cycles+0x15/0x20 [ 1692.647581] [<ffffffff810ebf2c>] ? ktime_get+0x3c/0xb0 [ 1692.647583] [<ffffffff8169d724>] io_schedule_timeout+0xa4/0x110 [ 1692.647587] [<ffffffff813a9fdc>] bt_get.isra.6+0x10c/0x1a0 [ 1692.647589] [<ffffffff810bc210>] ? wake_atomic_t_function+0x70/0x70 [ 1692.647590] [<ffffffff813aa307>] blk_mq_get_tag+0x27/0x90 [ 1692.647592] [<ffffffff813a5b70>] __blk_mq_alloc_request+0x20/0x230 [ 1692.647594] [<ffffffff813a69fe>] blk_mq_map_request+0xbe/0x140 [ 1692.647595] [<ffffffff813a8c68>] blk_sq_make_request+0xb8/0x4a0 [ 1692.647598] [<ffffffff8139a727>] ? generic_make_request_checks+0x217/0x540 [ 1692.647600] [<ffffffff8139ceb0>] generic_make_request+0xd0/0x1a0 [ 1692.647601] [<ffffffff8139cffd>] submit_bio+0x7d/0x150 [ 1692.647604] [<ffffffff81235078>] mpage_bio_submit+0x58/0xb0 [ 1692.647606] [<ffffffff8123622c>] mpage_readpages+0x12c/0x150 [ 1692.647607] [<ffffffff8122ebd0>] ? I_BDEV+0x20/0x20 [ 1692.647609] [<ffffffff8122ebd0>] ? I_BDEV+0x20/0x20 [ 1692.647610] [<ffffffff8122f4ad>] blkdev_readpages+0x1d/0x20 [ 1692.647613] [<ffffffff811803a0>] __do_page_cache_readahead+0x160/0x1f0 [ 1692.647615] [<ffffffff8118079a>] force_page_cache_readahead+0xaa/0x100 [ 1692.647617] [<ffffffff811808b0>] SyS_readahead+0x70/0xa0 [ 1692.647619] [<ffffffff81003a8b>] do_syscall_64+0x5b/0xc0 [ 1692.647620] [<ffffffff816a262f>] entry_SYSCALL64_slow_path+0x25/0x25 Could this be made more user friendly, by not allowing values below a minimum (what is the minimum such that it does not deadlock?)? Regards, Martin Raiber
Attachment:
smime.p7s
Description: S/MIME Cryptographic Signature