On Tuesday 05 May 2009 14:19:54 David Howells wrote:
> In that case, you might want to move the prefetchw() calls in the following:
>
> pref = skb_array[x];
> - prefetchw(pref);
> - prefetchw(pref + EHEA_CACHE_LINE);
> + if (pref) {
> +
Hannes Hering wrote:
> this is an ehea driver problem, which is occuring when the receive queue runs
> empty. The faulting code is more specifically the following line:
>
> pref = (skb_array[x]->data);
In that case, you might want to move the prefetchw() calls in the following:
On Tuesday 05 May 2009 11:11:27 David Howells wrote:
> Hannes Hering wrote:
>
> > pref = skb_array[x];
> > - prefetchw(pref);
> > - prefetchw(pref + EHEA_CACHE_LINE);
> > + if (pref) {
> > + prefetchw(pref);
> > + prefetchw(pref + EHEA_CACHE_LINE);
>
> Ummm... Is p
Hannes Hering wrote:
> pref = skb_array[x];
> - prefetchw(pref);
> - prefetchw(pref + EHEA_CACHE_LINE);
> + if (pref) {
> + prefetchw(pref);
> + prefetchw(pref + EHEA_CACHE_LINE);
Ummm... Is prefetch() or prefetchw() faulting?
David
___
From: Hannes Hering
Date: Mon, 4 May 2009 18:02:30 +0200
> This patch fixes an invalid pointer access in case the receive queue holds no
> pointer to the next skb when the queue is empty.
>
> Signed-off-by: Hannes Hering
> Signed-off-by: Jan-Bernd Themann
Applied, thanks.
This patch fixes an invalid pointer access in case the receive queue holds no
pointer to the next skb when the queue is empty.
Signed-off-by: Hannes Hering
Signed-off-by: Jan-Bernd Themann
---
diff -Nurp -X dontdiff linux-2.6.30-rc4/drivers/net/ehea/ehea.h
patched_kernel/drivers/net/ehea/ehea.