Re: Issue: Can padata avoid dealing with CPU-related operations?

From: Daniel Jordan
Date: Wed Oct 04 2023 - 10:53:12 EST


Hi,

On Wed, Sep 27, 2023 at 09:25:54PM +0800, Wang Jinchao wrote:
> Hello, I have a few questions about the padata code I've been studying
> recently:
>
> - Why does padata use the WQ_UNBOUND attribute of the workqueue?

There's background in this series:
https://lore.kernel.org/all/20190813005224.30779-1-daniel.m.jordan@xxxxxxxxxx/

> Because I've noticed a significant maintenance cost related to CPUs.
> Are there any specific benefits?

Aside from what Steffen said about serialization, the pcrypt cpumasks
can be set from sysfs to control where parallel and serial jobs run.

> - In what scenarios is it necessary to specify a CPU for serial
> execution, or is ensuring the order sufficient?

I'm not sure that it's necessary. The way I read it, at least, it seems
pcrypt uses cb_cpu to load balance serialization across all CPUs allowed
in the serial cpumask.