lkml.org 
[lkml]   [2009]   [Feb]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: [PATCH 2/4] generic-smp: remove kmalloc usage


    On Tue, 17 Feb 2009, Peter Zijlstra wrote:
    >
    > Ah, no, I don't actually. I remove the kmalloc+call_rcu stuff in 2, not
    > the newly cfd mini rcu thing.

    I'm not talking about the "mini-rcu", I'm talking about the _existing_ rcu
    code that you play games with, just before you then remove it.

    See here:

    - patch 1/4:

    @@ -25,8 +40,11 @@ struct call_function_data {
    struct call_single_data csd;
    spinlock_t lock;
    unsigned int refs;
    - struct rcu_head rcu_head;
    - unsigned long cpumask_bits[];
    + union {
    + struct rcu_head rcu_head;
    + struct list_head free_list;
    + };
    + struct cpumask cpumask;
    };

    - patch 2/4:

    struct call_function_data {
    struct call_single_data csd;
    spinlock_t lock;
    unsigned int refs;
    - union {
    - struct rcu_head rcu_head;
    - struct list_head free_list;
    - };
    + struct list_head free_list;
    struct cpumask cpumask;
    };

    ie that ugly/complex/subtle union of rcu_head that you added in 1/4 you
    then remove immediately in 2/4. Making the patches just harder to read.

    Just remove it. I'd say fold 1+2 into one patch, instead of playing games
    with that thing. Just make the patch remove the kmalloc.

    Or at least get rid of the _games_ you play with that union. Now it just
    makes the patch unreadable.

    Linus

    \
     
     \ /
      Last update: 2009-02-18 12:23    [W:0.024 / U:31.992 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site