Re: [PATCH 5/6] workqueue: introduce NR_WORKER_POOLS and for_each_worker_pool()
From: Tejun Heo <tj@kernel.org>
Date: 2012-07-14 05:07:52
Also in:
linux-xfs, lkml
From: Tejun Heo <tj@kernel.org>
Date: 2012-07-14 05:07:52
Also in:
linux-xfs, lkml
Hey, Linus. On Fri, Jul 13, 2012 at 10:00:10PM -0700, Linus Torvalds wrote:
On Fri, Jul 13, 2012 at 9:44 PM, Tejun Heo [off-list ref] wrote:quoted
nr_running is atomic_t (*nr_running)[2]. Ignoring the pointer to array part, it's just returning the address of N'th element of the array. ARRAY + N == &ARRAY[N].None of this matters one whit. You did "&(x)[0]". That's insane. It's crazy. It doesn't even matter what "x" is in between, it's crazy regardless.
Eh, from my previous reply. | Ah okay, you're looking at the fifth patch in isolation. Upto this | point, the index is always 0. I'm puttin it in as a placeholder for | the next patch which makes use of non-zero index. This patch is | supposed to prepare everything for multiple pools and thus non-zero | index. The patch is about converting stuff to handle size-1 array without introducing any actual behavior change so that the next patch can bump the array size and just change the index. Thanks. -- tejun