All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jeff Garzik <jeff@garzik.org>
To: Roland Dreier <rdreier@cisco.com>
Cc: netdev@vger.kernel.org, divy@chelsio.com, davem@davemloft.net
Subject: Re: cxgb3: Fix kernel crash caused by uninitialized l2t_entry.arpq
Date: Tue, 21 Oct 2008 02:10:17 -0400	[thread overview]
Message-ID: <48FD7249.5040001@garzik.org> (raw)
In-Reply-To: <ada63nqsyxp.fsf@cisco.com>

Roland Dreier wrote:
> Commit 147e70e6 ("cxgb3: Use SKB list interfaces instead of home-grown
> implementation.") causes a crash in t3_l2t_send_slow() when an iWARP
> connection request is received.  This is because the new l2t_entry.arpq
> skb queue is never initialized, and therefore trying to add an skb to
> it causes a NULL dereference.  With the old code there was no need to
> initialize the queues because the l2t_entry structures were zeroed,
> and the code used NULL to mean empty.
> 
> Fix this by adding __skb_queue_head_init() when all the l2t_entry
> structures get allocated.
> 
> Signed-off-by: Roland Dreier <rolandd@cisco.com>
> ---
> This should probably go to -stable as well, since it looks like the
> commit that broke things went into 2.6.27-rc6.
> 
>  drivers/net/cxgb3/l2t.c |    1 +
>  1 files changed, 1 insertions(+), 0 deletions(-)
> 
> diff --git a/drivers/net/cxgb3/l2t.c b/drivers/net/cxgb3/l2t.c
> index 4407ac9..ff1611f 100644
> --- a/drivers/net/cxgb3/l2t.c
> +++ b/drivers/net/cxgb3/l2t.c
> @@ -431,6 +431,7 @@ struct l2t_data *t3_init_l2t(unsigned int l2t_capacity)
>  	for (i = 0; i < l2t_capacity; ++i) {
>  		d->l2tab[i].idx = i;
>  		d->l2tab[i].state = L2T_STATE_UNUSED;
> +		__skb_queue_head_init(&d->l2tab[i].arpq);
>  		spin_lock_init(&d->l2tab[i].lock);
>  		atomic_set(&d->l2tab[i].refcnt, 0);

applied



      parent reply	other threads:[~2008-10-21  6:10 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-17 21:18 cxgb3: Fix kernel crash caused by uninitialized l2t_entry.arpq Roland Dreier
2008-10-17 23:31 ` David Miller
2008-10-20 17:10   ` Divy Le Ray
2008-10-21  6:10 ` Jeff Garzik [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=48FD7249.5040001@garzik.org \
    --to=jeff@garzik.org \
    --cc=davem@davemloft.net \
    --cc=divy@chelsio.com \
    --cc=netdev@vger.kernel.org \
    --cc=rdreier@cisco.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.