lkml.org 
[lkml]   [2012]   [Jun]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [patch 3.5-rc3] mm, mempolicy: fix mbind() to do synchronous migration
On Thu, 21 Jun 2012 17:46:52 -0700 Linus Torvalds <torvalds@linux-foundation.org> wrote:

> On Thu, Jun 21, 2012 at 4:46 PM, Andrew Morton
> <akpm@linux-foundation.org> wrote:
> >
> > I can't really do anything with this patch - it's a bug added by
> > Peter's "mm/mpol: Simplify do_mbind()" and added to linux-next via one
> > of Ingo's trees.
> >
> > And I can't cleanly take the patch over as it's all bound up with the
> > other changes for sched/numa balancing.
>
> I took the patch, it looked obviously correct (passing in a boolean
> was clearly crap).

Ah, OK, the bug was actually "retained" by "mm/mpol: Simplify do_mbind()".

I do still ask what the plans are for that patchset..

> I wonder if I should make sparse warn about any casts to/from enums.
> They tend to always be wrong.

I think it would be worth trying, see how much fallout there is. Also
casts from "enum a" to "enum b". We've had a few of those,
unintentionally.

And casts to/from bool, perhaps. To squish the warning we'd do things
like a_bool = !!a_int. That generates extra code, but gcc internally
generates extra code for a_bool = a_int anyway, and a quick test here
indicates that the generated code is identical (testl/setne).

It would be nice to find a way of converting an integer which is known
to be 1 or 0 into a bool without generating any code, but I haven't
found a way of tricking the compiler into doing that. It's all a bit
of a downside to using bool at all.


\
 
 \ /
  Last update: 2012-06-22 04:21    [from the cache]
©2003-2011 Jasper Spaans