Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: David Rientjes <rientjes@...>
Cc: <Lee.Schermerhorn@...>, <akpm@...>, <clameter@...>, <ak@...>, <linux-kernel@...>, <mel@...>
Date: Thursday, February 14, 2008 - 8:27 am

I had taken a vow of silence on this one, but couldn't resist one more
round.

David wrote:

True -- the necessary overloaded ugliness of the kernel-user system
call API is propogated throughout mempolicy.c.  However, I wouldn't
necessarily call that an advantage.


... but does require the use of the new mpol_flags() and mpol_mode()
macros by code in mmshmem.c, outside of mm/mempolicy.c


This will cause a bug in the future, that escapes into the wild, when
someone forgets one of these.  I'll bet on that.  It's fragile, because
(1) such errors are easy to make, and (2) hard to catch.


Clear, robust code - that's the biggie.


True -- though by this argument, we'd routinely aggregate multiple flags
and small words into single integer parameters, just to minimize the
parameter count.  Putting two flags in one parameter is a false
simplification, unless required by circumstance, such as communicating
with deep space probes or across the system call boundary with existing
API's.

Across the system call boundary, we have little choice, for compatibility
reasons.  But kernel internal interfaces are not so constrained, and the
ugliness at the system call boundary can be quarantined from most of the
mempolicy.c code.


To be clear to others, as you know, we're not talking here about
growing the sizeof(struct mempolicy) at present, but rather about using
some currently unused bytes in the struct.

More often than not, when someone adds complexity that is not needed at
present, because it might be needed in the future, they are making it
harder to maintain the code, not easier.

The single most important thing we can do to improve future
maintainability of code is to make it more readable.

-- 
                  I won't rest till it's the best ...
                  Programmer, Linux Scalability
                  Paul Jackson <pj@sgi.com> 1.940.382.4214
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[patch 1/4] mempolicy: convert MPOL constants to enum, David Rientjes, (Mon Feb 11, 11:30 am)
Re: [patch 1/4] mempolicy: convert MPOL constants to enum, Lee Schermerhorn, (Tue Feb 12, 8:10 pm)
Re: [patch 1/4] mempolicy: convert MPOL constants to enum, Christoph Lameter, (Tue Feb 12, 9:04 pm)
Re: [patch 1/4] mempolicy: convert MPOL constants to enum, David Rientjes, (Tue Feb 12, 10:00 pm)
Re: [patch 1/4] mempolicy: convert MPOL constants to enum, Paul Jackson, (Tue Feb 12, 10:22 pm)
Re: [patch 1/4] mempolicy: convert MPOL constants to enum, David Rientjes, (Tue Feb 12, 10:42 pm)
Re: [patch 1/4] mempolicy: convert MPOL constants to enum, Paul Jackson, (Tue Feb 12, 10:59 pm)
Re: [patch 1/4] mempolicy: convert MPOL constants to enum, David Rientjes, (Tue Feb 12, 11:17 pm)
Re: [patch 1/4] mempolicy: convert MPOL constants to enum, Paul Jackson, (Tue Feb 12, 11:22 pm)
Re: [patch 1/4] mempolicy: convert MPOL constants to enum, David Rientjes, (Tue Feb 12, 8:53 pm)
Re: [patch 1/4] mempolicy: convert MPOL constants to enum, Christoph Lameter, (Mon Feb 11, 3:32 pm)
Re: [patch 1/4] mempolicy: convert MPOL constants to enum, David Rientjes, (Mon Feb 11, 3:40 pm)
Re: [patch 1/4] mempolicy: convert MPOL constants to enum, Christoph Lameter, (Mon Feb 11, 3:48 pm)
Re: [patch 1/4] mempolicy: convert MPOL constants to enum, David Rientjes, (Mon Feb 11, 4:02 pm)
Re: [patch 1/4] mempolicy: convert MPOL constants to enum, Christoph Lameter, (Mon Feb 11, 4:45 pm)
[patch 2/4] mempolicy: support optional mode flags, David Rientjes, (Mon Feb 11, 11:30 am)
Re: [patch 2/4] mempolicy: support optional mode flags, Lee Schermerhorn, (Tue Feb 12, 8:14 pm)
Re: [patch 2/4] mempolicy: support optional mode flags, David Rientjes, (Tue Feb 12, 8:25 pm)
[patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Mon Feb 11, 11:30 am)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Paul Jackson, (Thu Feb 14, 6:09 am)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Thu Feb 14, 5:38 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Paul Jackson, (Fri Feb 15, 5:27 am)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Fri Feb 15, 4:23 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Paul Jackson, (Fri Feb 15, 7:45 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Fri Feb 15, 7:55 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Paul Jackson, (Fri Feb 15, 8:11 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Fri Feb 15, 4:32 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Thu Feb 14, 3:40 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Thu Feb 14, 9:44 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Paul Jackson, (Fri Feb 15, 6:00 am)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Lee Schermerhorn, (Tue Feb 12, 8:22 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Wed Feb 13, 12:18 am)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Lee Schermerhorn, (Wed Feb 13, 12:14 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Wed Feb 13, 3:12 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Wed Feb 13, 1:06 am)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Lee Schermerhorn, (Wed Feb 13, 11:15 am)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Paul Jackson, (Tue Feb 12, 11:52 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Wed Feb 13, 12:03 am)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Paul Jackson, (Wed Feb 13, 12:13 am)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Wed Feb 13, 12:23 am)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Paul Jackson, (Wed Feb 13, 4:03 am)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Wed Feb 13, 5:36 am)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Paul Jackson, (Wed Feb 13, 1:04 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Wed Feb 13, 3:02 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Paul Jackson, (Wed Feb 13, 4:29 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Paul Jackson, (Thu Feb 14, 6:26 am)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Thu Feb 14, 3:45 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Paul Jackson, (Fri Feb 15, 6:19 am)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Fri Feb 15, 4:14 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Wed Feb 13, 5:35 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Paul Jackson, (Thu Feb 14, 8:27 am)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Paul Jackson, (Thu Feb 14, 7:12 am)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Lee Schermerhorn, (Wed Feb 13, 12:01 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Wed Feb 13, 2:48 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Lee Schermerhorn, (Wed Feb 13, 3:05 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Wed Feb 13, 3:17 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Paul Jackson, (Wed Feb 13, 2:58 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Christoph Lameter, (Mon Feb 11, 3:34 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, KOSAKI Motohiro, (Mon Feb 11, 2:25 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Mon Feb 11, 3:56 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, Lee Schermerhorn, (Tue Feb 12, 8:25 pm)
Re: [patch 3/4] mempolicy: add MPOL_F_STATIC_NODES flag, David Rientjes, (Tue Feb 12, 8:57 pm)
Re: [patch 2/4] mempolicy: support optional mode flags, Lee Schermerhorn, (Mon Feb 11, 12:36 pm)
Re: [patch 2/4] mempolicy: support optional mode flags, David Rientjes, (Mon Feb 11, 3:34 pm)
Re: [patch 2/4] mempolicy: support optional mode flags, Lee Schermerhorn, (Tue Feb 12, 11:31 am)
Re: [patch 2/4] mempolicy: support optional mode flags, David Rientjes, (Tue Feb 12, 3:14 pm)
Re: [patch 2/4] mempolicy: support optional mode flags, Paul Jackson, (Mon Feb 11, 4:55 pm)
Re: [patch 2/4] mempolicy: support optional mode flags, David Rientjes, (Mon Feb 11, 5:52 pm)
Re: [patch 2/4] mempolicy: support optional mode flags, Paul Jackson, (Mon Feb 11, 5:57 pm)
Re: [patch 1/4] mempolicy: convert MPOL constants to enum, David Rientjes, (Mon Feb 11, 3:25 pm)