smatch output

Dan Carpenter dan.carpenter at oracle.com
Mon Apr 28 07:18:29 PDT 2014


On Mon, Apr 28, 2014 at 04:39:16PM +0300, Artem Bityutskiy wrote:
> Well, frankly, I'd prefer if you split it and printed multiple lines.
> Just start each line with a white-space or several white-spaces. And
> print a single line number per line of output.
> 
> kernel/cgroup.c:2269 cgroup_release_agent_write() warn: inconsistent returns mutex:&cgroup_mutex.
>   Locked on:   line 2235
>                line 2237
>   Unlocked on: line 2269
> 
> This would be easy to parse.
> 
> Note, GCC also outputs so that when the next line belongs to the
> previous, and does not have a distinctive prefix, it starts with a
> white-space (I did not check gcc code to verify this, but this is what I
> observe).

Sure.  Now it looks something like this:

  CALL    scripts/checksyscalls.sh
  CHECK   kernel/cgroup.c
kernel/cgroup.c:2341 cgroup_release_agent_write() warn: inconsistent returns mutex:&cgroup_mutex.
  Locked on:   line 2335
  Unlocked on: line 2341
kernel/cgroup.c:4318 cgroup_create() warn: inconsistent returns mutex:&cgroup_mutex.
  Locked on:   line 4209
               line 4312
  Unlocked on: line 4303
               line 4318
kernel/cgroup.c:4643 cgroup_init_subsys() warn: should '1 << ss->id' be a 64 bit type?
  CC      kernel/cgroup.o

Maybe I should add single quotes around mutex:&cgroup_mutex?

I will push this tomorrow.

regards,
dan carpenter



More information about the aiaiai mailing list