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 for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <550B30D5.9080207@kernel.dk>
Date:	Thu, 19 Mar 2015 14:25:57 -0600
From:	Jens Axboe <axboe@...nel.dk>
To:	Tejun Heo <tj@...nel.org>, kent.overstreet@...il.com,
	Benjamin LaHaise <bcrl@...ck.org>
CC:	linux-kernel@...r.kernel.org
Subject: Re: serial percpu_ref draining in exit_aio()

On 03/19/2015 11:34 AM, Tejun Heo wrote:
> Hello,
>
> So, Jens noticed that fio process exiting takes seconds when there are
> multiple aio contexts and the culprit seems to be the serial
> percpu_ref draining in exit_aio().  It's generally a bad idea to
> expose RCU latencies to userland because they add up really quickly
> and are unrelated to other performance parameters.  Can you guys
> please at least update the code so that it waits for all percpu_refs
> to drain at the same time rather than one after another?  That should
> resolve the worst part of the problem.

This works for me. Before:

real	0m5.872s
user	0m0.020s
sys	0m0.040s

after

real	0m0.246s
user	0m0.020s
sys	0m0.040s

It solves the exit_aio() issue, but if the app calls io_destroy(), then 
we are back to square one...

-- 
Jens Axboe


View attachment "aio-exit-parallel.patch" of type "text/x-patch" (1687 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ