lkml.org 
[lkml]   [2008]   [Apr]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 1/11] Add generic helpers for arch IPI function calls
    On Tue, Apr 22 2008, Linus Torvalds wrote:
    >
    >
    > On Tue, 22 Apr 2008, Jens Axboe wrote:
    > > +
    > > +static inline void csd_flag_wait(struct call_single_data *data)
    > > +{
    > > + /* Wait for response */
    > > + do {
    > > + /*
    > > + * We need to see the flags store in the IPI handler
    > > + */
    > > + smp_mb();
    > > + if (!(data->flags & CSD_FLAG_WAIT))
    > > + break;
    > > + cpu_relax();
    > > + } while (1);
    > > +}
    >
    > You forgot to free the "data" here? The waiter must also free the object,
    > since now the callee does not.

    The ipi interrupt handler does that, see kfree() in
    generic_smp_call_function_single_interrupt() or call_func_data_free() in
    generic_smp_call_function_interrupt().

    --
    Jens Axboe



    \
     
     \ /
      Last update: 2008-04-22 16:53    [W:0.031 / U:62.616 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site