[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20090312022445.354af358.akpm@linux-foundation.org>
Date: Thu, 12 Mar 2009 02:24:45 -0700
From: Andrew Morton <akpm@...ux-foundation.org>
To: Rusty Russell <rusty@...tcorp.com.au>
Cc: Nick Piggin <nickpiggin@...oo.com.au>,
Linus Torvalds <torvalds@...ux-foundation.org>,
linux-kernel@...r.kernel.org, Ingo Molnar <mingo@...e.hu>
Subject: Re: [PULL] Wrapper macros for struct task_struct and struct
mm_struct cpumask transition
On Thu, 12 Mar 2009 19:43:02 +1030 Rusty Russell <rusty@...tcorp.com.au> wrote:
> On Thursday 12 March 2009 18:07:09 Andrew Morton wrote:
> > On Thu, 12 Mar 2009 17:45:22 +1030 Rusty Russell <rusty@...tcorp.com.au> wrote:
> ...
> > Please prefer to put the patches in the email if practical? More
> > eyeballs and all that.
>
> Hmm, yes. Is there a preferred way of doing that with git request-pull?
> Or just append the diff?
You're asking me about git?
> > : +/* Future-safe accessor for struct mm_struct's cpu_vm_mask. */
> > : +#define mm_cpumask(mm) (&(mm)->cpu_vm_mask)
> > : +
> ...
> > It would be pretty perverse to run tsk_cpumask() against a `struct
> > cpuset*', but your proposed implementation would merrily permit that
> > mistake.
> >
> > Can we write the kernel in C please??
>
> You mean use an inline? No, it's a bad idea for two reasons. The minor
> reason is that this macro is a temporary so it makes more sense to fix the
> final version.
>
> But the major one is const correctness. Macros give a const value for
> const input.
hm. Sounds weaselly.
> We can enhance the macro to check, but that's even uglier:
>
> static inline int check_is_task_struct(const struct task_struct *t) { }
> #define tsk_cpumask(t) (sizeof(check_is_task_struct(t)), &(t)->cpu_vm_mask)
include/linux/typecheck.h has help?
> > yup, the patches are quite safe and mergeable. And if they'd been in the
> > email body, Linus might have seen that and pulled them ;)
>
> Probably not, as that's not what he complained about last time.
Linus? Complain?
> He might have
> been enlightened by the commit messages tho.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists