Re: [PATCH] USB: core: hub: fix usb_hub worker blocking drain_all_pages() worker issue

From: Alan Stern
Date: Fri Feb 03 2023 - 09:47:34 EST


On Fri, Feb 03, 2023 at 03:28:19PM +0800, Zhu Zhongjie wrote:
> From: Zhongjie Zhu <zhongjiezhu1@xxxxxxxxx>
>
> When disconnecting a usb mass storege, if there are a lot of inodes
> like 10 thousands files need to be freed, the invalidate_inodes() will
> run for a loog time to freeing all inodes, this will block other worker
> to run in the cpu, so mark the usb_hub workqueue to WQ_CPU_INTENSIVE to
> avoid this situation.

Very infrequently this will happen. In the vast majority of cases, the
usb_hub workqueue uses very little CPU time. Marking it
WQ_CPU_INTENSIVE seems inappropriate.

Alan Stern