On 2024/2/5 15:37, Muchun Song wrote:
Actually, I did not get it. Why the above code cannot work? The above code already make it serialized in one call, right? What do I miss here? Thanks.
PADATA consists of two distinct functionality: One part is `padata_do_multithreaded`, which disregards order and simply divides tasks into several groups for parallel execution. My patch use `padata_do_multithreaded`. The other part is composed of a set of APIs that, while handling data in an out-of-order parallel manner, can eventually return the data with ordered sequence. Only `crypto/pcrypt.c` use them. I guess these APIs are designed specifically for `crypto/pcrypt.c`. ``` padata_alloc padata_alloc_shell padata_do_parallel padata_do_serial padata_free_shell padata_free ```