On Thu, 05 Jun 2014 11:44:45 -0700 David Daney <ddaney.cavm@xxxxxxxxx> wrote: > > But stddev is s64. Ah, but the compare is: > > > > (void)(((typeof((n)) *)0) == ((uint64_t *)0)); > > > > so it's complaining about a signed verses unsigned compare, not length. > > I think I can ignore this warning then. > > The pedant in me thinks that you should fix your code if using do_div() > on a signed object is undefined. But if you aren't planning on merging > the code, then it probably doesn't matter. It's undefined on signed 64 numbers? Where is that documented. I don't see it in the comments, and I don't see anything in the Documentation directory. It only states that n must be 64bit. It doesn't say unsigned 64 bit. And yes I do plan on merging this. It's in my 3.16 queue right now and in linux-next. But it's just a benchmark tracepoint that requires a config option to enable it. It will show up in your allmodconfig builds but nothing important. Worse comes to worse, I can add a (u64) to the call to do_div() I guess. > > > > > Thoughts? > > I think I will have lunch now... > I just came back from lunch. It was quite delicious! -- Steve