lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Wed, 20 Jul 2016 21:36:33 -0600
From:	Jens Axboe <axboe@...nel.dk>
To:	Tahsin Erdogan <tahsin@...gle.com>
Cc:	kbuild test robot <lkp@...el.com>, linux-block@...r.kernel.org,
	linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2] block: do not merge requests without consulting with
 io scheduler

On 07/07/2016 12:48 PM, Tahsin Erdogan wrote:
> Before merging a bio into an existing request, io scheduler is called to
> get its approval first. However, the requests that come from a plug
> flush may get merged by block layer without consulting with io
> scheduler.
>
> In case of CFQ, this can cause fairness problems. For instance, if a
> request gets merged into a low weight cgroup's request, high weight cgroup
> now will depend on low weight cgroup to get scheduled. If high weigt cgroup
> needs that io request to complete before submitting more requests, then it
> will also lose its timeslice.
>
> Following script demonstrates the problem. Group g1 has a low weight, g2
> and g3 have equal high weights but g2's requests are adjacent to g1's
> requests so they are subject to merging. Due to these merges, g2 gets
> poor disk time allocation.

Looks (and seems) sane to me, no reason why the plug path should be 
different. Applied for 4.8, thanks.

-- 
Jens Axboe

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ