Messages in this thread | | | Date | Mon, 24 Sep 2012 21:52:14 +0100 | Subject | Re: Work queue questions | From | Deepawali Verma <> |
| |
Hi Tejun,
I do not have ordering as requirement. I can use system work queue as well. what is max_active by default for system wq per cpu?
Regards, Deepa
On Mon, Sep 24, 2012 at 9:08 PM, Tejun Heo <tj@kernel.org> wrote: > Hello, > > On Mon, Sep 24, 2012 at 08:57:40PM +0100, Deepawali Verma wrote: >> May be I misunderstood, I read in the documentation about max_active. >> In this case, max_active is 1, but I created three workqueues, do you > > I see. Why are you doing that? Is there ordering requirement? Why > not just use system_unbound_wq? > >> mean to say for this case, single thread can process three requests >> queued up in the three different workqueues. > > In the following execution log you posted, > > kworker/u:1-21 [000] 110.964895: task_event: MYTASKJOB2381 XStarted > kworker/u:1-21 [000] 110.964909: task_event: MYTASKJOB2381 Xstopped > kworker/u:1-21 [000] 110.965137: task_event: MYTASKJOB2382 XStarted > kworker/u:1-21 [000] 110.965154: task_event: MYTASKJOB2382 Xstopped > kworker/u:5-3724 [000] 110.965311: task_event: MYTASKJOB2383 XStarted > kworker/u:5-3724 [000] 110.965325: task_event: MYTASKJOB2383 Xstopped > > The first two got executed on the same worker thread but the third one > is on a different one. It really looks like you just don't have large > enough work for scheduler to interleave them or migrate workers to > different CPUs. > > Thanks. > > -- > tejun
| |