Re: [patch 3.5-rc3] mm, mempolicy: fix mbind() to do synchronous migration

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 21 Jun 2012 17:46:52 -0700 Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:

> On Thu, Jun 21, 2012 at 4:46 PM, Andrew Morton
> <akpm@xxxxxxxxxxxxxxxxxxxx> 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.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]