lkml.org 
[lkml]   [2006]   [May]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [patch 51/61] lock validator: special locking: sock_lock_init()
    On Mon, 29 May 2006 23:27:14 +0200
    Ingo Molnar <mingo@elte.hu> wrote:

    > From: Ingo Molnar <mingo@elte.hu>
    >
    > teach special (multi-initialized, per-address-family) locking code to the
    > lock validator. Has no effect on non-lockdep kernels.
    >
    > Index: linux/include/net/sock.h
    > ===================================================================
    > --- linux.orig/include/net/sock.h
    > +++ linux/include/net/sock.h
    > @@ -81,12 +81,6 @@ typedef struct {
    > wait_queue_head_t wq;
    > } socket_lock_t;
    >
    > -#define sock_lock_init(__sk) \
    > -do { spin_lock_init(&((__sk)->sk_lock.slock)); \
    > - (__sk)->sk_lock.owner = NULL; \
    > - init_waitqueue_head(&((__sk)->sk_lock.wq)); \
    > -} while(0)
    > -
    > struct sock;
    > struct proto;
    >
    > Index: linux/net/core/sock.c
    > ===================================================================
    > --- linux.orig/net/core/sock.c
    > +++ linux/net/core/sock.c
    > @@ -739,6 +739,27 @@ lenout:
    > return 0;
    > }
    >
    > +/*
    > + * Each address family might have different locking rules, so we have
    > + * one slock key per address family:
    > + */
    > +static struct lockdep_type_key af_family_keys[AF_MAX];
    > +
    > +static void noinline sock_lock_init(struct sock *sk)
    > +{
    > + spin_lock_init_key(&sk->sk_lock.slock, af_family_keys + sk->sk_family);
    > + sk->sk_lock.owner = NULL;
    > + init_waitqueue_head(&sk->sk_lock.wq);
    > +}

    OK, no code outside net/core/sock.c uses sock_lock_init().

    Hopefully the same is true of out-of-tree code...
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2006-05-30 03:38    [W:0.023 / U:90.060 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site