Details
-
Improvement
-
Resolution: Fixed
-
Minor
-
None
-
None
-
9223372036854775807
Description
Several places in lustre use 'struct ptlrpc_thread' to "help" manage a kthread.
These places are not directly related to ptlrpc, so the naming is not help, and in general the usage of ptlrpc_thread does not improve the code.
By removing the use of ptlrpc_thread - particularly by avoiding startup synchornization and by using kthread_stop/ kthread_should_stop(), I can reduce code size by a couple of hundred lines.
Using the seemly uniform approach of ptlrpc_thread can lead to an impression that these threads are all managed much the same way, but this is not the case. There is substantial variety on how the threads work and exposing that clear will benefit maintainability.