* Re: kernel/workqueue.c:4434:61: sparse: expression using sizeof bool
[not found] ` <20130403215718.GH3411@htj.dyndns.org>
@ 2013-04-04 1:42 ` Fengguang Wu
2013-04-04 15:43 ` Tejun Heo
0 siblings, 1 reply; 2+ messages in thread
From: Fengguang Wu @ 2013-04-04 1:42 UTC (permalink / raw)
To: Tejun Heo; +Cc: Christopher Li, LKML
CC Christopher and LKML.
On Wed, Apr 03, 2013 at 02:57:18PM -0700, Tejun Heo wrote:
> Hello, Fengguang.
Hi Tejun!
> On Sat, Mar 30, 2013 at 08:29:47PM +0800, kbuild test robot wrote:
> > tree: git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq.git review-better-dbg
> > head: ea44ca757342b769c176fd6d0b3fb525b22eeda9
> > commit: c04655aeae70173688bca4c62b35737ab6958e82 workqueue: include workqueue info when printing debug dump of a worker task
> > date: 10 hours ago
> >
> >
> > sparse warnings: (new ones prefixed by >>)
> >
> > kernel/workqueue.c:287:8: sparse: symbol 'cpu_worker_pools' was not declared. Should it be static?
> > kernel/workqueue.c:300:25: sparse: symbol 'system_highpri_wq' was not declared. Should it be static?
> > >> kernel/workqueue.c:4434:61: sparse: expression using sizeof bool
> > kernel/workqueue.c:2060:32: sparse: context imbalance in 'manage_workers' - unexpected unlock
> >
> > vim +4434 kernel/workqueue.c
> >
> ...
> > 4433 /* copy worker description */
> > > 4434 probe_kernel_read(&desc_valid, &worker->desc_valid, sizeof(desc_valid));
> > 4435 if (desc_valid)
>
> I don't know what to make of this warning. Yes, it's probing a bool
> variable and of course using sizeof(bool) to do that. Why does sparse
> complain about this?
I guess sparse warns on sizeof(bool) because it is compiler defined.
It may be 1, 4, or even 8 depending on the gcc version and platform.
Thanks,
Fengguang
^ permalink raw reply [flat|nested] 2+ messages in thread