All of lore.kernel.org
 help / color / mirror / Atom feed
From: Santiago Leon <santil@us.ibm.com>
To: Andrew Morton <akpm@osdl.org>
Cc: Linux Kernel list <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 2.6] ibmveth bug fixes 4/4
Date: Tue, 10 Aug 2004 19:40:10 -0500	[thread overview]
Message-ID: <41196AEA.1060700@us.ibm.com> (raw)
In-Reply-To: <41190E97.2050705@us.ibm.com>

[-- Attachment #1: Type: text/plain, Size: 289 bytes --]

Andrew...

I had discussion over email with Dave Hansen about this patch and after 
I explained the bug and the fix, he recommended that I include a comment 
in the patch.  So here's an updated patch. Please apply.

-- 
Santiago A. Leon
Power Linux Development
IBM Linux Technology Center

[-- Attachment #2: ibmveth_rmb.patch --]
[-- Type: text/plain, Size: 941 bytes --]

===== drivers/net/ibmveth.c 1.14 vs edited =====
--- 1.14/drivers/net/ibmveth.c	Tue Aug 10 19:09:45 2004
+++ edited/drivers/net/ibmveth.c	Tue Aug 10 19:30:10 2004
@@ -271,7 +271,6 @@
 	adapter->rx_no_buffer = *(u64*)(((char*)adapter->buffer_list_addr) + 4096 - 8);
 
 	atomic_inc(&adapter->not_replenishing);
-	ibmveth_assert(atomic_read(&adapter->not_replenishing) == 1);
 }
 
 /* kick the replenish tasklet if we need replenishing and it isn't already running */
@@ -733,6 +732,14 @@
 
 		if(ibmveth_rxq_pending_buffer(adapter)) {
 			struct sk_buff *skb;
+
+			/* This barrier is necessary because we might be 
+			   reading a control dword and then reading an old 
+			   cached correlator dword. Also, the hypervisor
+			   guarantees that the control field will be globally
+			   visible after all the other fields are visible, 
+			*/
+			rmb();
 
 			if(!ibmveth_rxq_buffer_valid(adapter)) {
 				wmb(); /* suggested by larson1 */

  reply	other threads:[~2004-08-11  0:40 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-08-10 18:06 [PATCH 2.6] ibmveth bug fixes 4/4 Santiago Leon
2004-08-11  0:40 ` Santiago Leon [this message]
2004-08-11  1:30   ` Santiago Leon
2004-08-15 20:01 ` Andrew Morton

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=41196AEA.1060700@us.ibm.com \
    --to=santil@us.ibm.com \
    --cc=akpm@osdl.org \
    --cc=linux-kernel@vger.kernel.org \
    /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.