Re: [PATCH v2 1/5] padata: make flushing work with async users

2019-09-18 Thread Daniel Jordan
On Thu, Sep 05, 2019 at 06:37:56PM -0400, Daniel Jordan wrote: > On Thu, Sep 05, 2019 at 02:17:35PM +1000, Herbert Xu wrote: > > I don't think waiting is an option. In a pathological case the > > hardware may not return at all. We cannot and should not hold off > > CPU hotplug for an arbitrary am

Re: [PATCH v2 1/5] padata: make flushing work with async users

2019-09-05 Thread Daniel Jordan
On Thu, Sep 05, 2019 at 02:17:35PM +1000, Herbert Xu wrote: > On Wed, Aug 28, 2019 at 06:14:21PM -0400, Daniel Jordan wrote: > > > > @@ -453,24 +456,15 @@ static void padata_free_pd(struct parallel_data *pd) > > /* Flush all objects out of the padata queues. */ > > static void padata_flush_queues

Re: [PATCH v2 1/5] padata: make flushing work with async users

2019-09-04 Thread Herbert Xu
On Wed, Aug 28, 2019 at 06:14:21PM -0400, Daniel Jordan wrote: > > @@ -453,24 +456,15 @@ static void padata_free_pd(struct parallel_data *pd) > /* Flush all objects out of the padata queues. */ > static void padata_flush_queues(struct parallel_data *pd) > { > - int cpu; > - struct padata

[PATCH v2 1/5] padata: make flushing work with async users

2019-08-28 Thread Daniel Jordan
padata_flush_queues() is broken for an async ->parallel() function because flush_work() can't wait on it: # modprobe tcrypt alg="pcrypt(cryptd(rfc4106(gcm_base(ctr(aes-generic),ghash-generic" type=3 # modprobe tcrypt mode=215 sec=1 & # sleep 5; echo 7 > /sys/kernel/pcrypt/pencrypt/paral