qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Bill Paul <wpaul@windriver.com>
To: "Richard W.M. Jones" <rjones@redhat.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] bug report + fix: e1000.c in 0.10.5 does not properly emulate real hardware
Date: Tue, 9 Jun 2009 12:42:56 -0700	[thread overview]
Message-ID: <200906091243.09093.wpaul@windriver.com> (raw)
In-Reply-To: <20090609145906.GA9134@amd.home.annexia.org>

Of all the gin joints in all the towns in all the world, Richard W.M. Jones 
had to walk into mine and say:

> On Mon, Jun 08, 2009 at 08:39:26PM -0700, Bill Paul wrote:
> > I can generate a unified diff, but I'm not sure I understand what is
> > meant by "Signed-off-by." Can you elaborate? (Sorry, I'm not familiar
> > with the QEMU development process. I just wanted to send a bug report. :)
>
> It's just a convention started on the Linux kernel mailing lists a
> few years back.  Just put this in your email with the patch:
>
>   Signed-off-by: Your Name <your@email.example.com>
>
> See also: http://kerneltrap.org/node/3929
>
> Rich.

Ah, ok. Will do.

Note: this diff is against the 0.10.5 released sources. not the latest code in 
the repository (though the same bugs are still there, I'm sure).

-Bill

-- 
=============================================================================
-Bill Paul            (510) 749-2329 | Senior Engineer, Master of Unix-Fu
                 wpaul@windriver.com | Wind River Systems
=============================================================================
   "I put a dollar in a change machine. Nothing changed." - George Carlin
=============================================================================


Signed-off-by: Bill Paul <wpaul@windriver.com>
---

--- e1000.c.orig	2009-05-20 13:46:59.000000000 -0700
+++ e1000.c	2009-06-08 14:23:24.000000000 -0700
@@ -155,6 +155,7 @@
     if (val)
         val |= E1000_ICR_INT_ASSERTED;
     s->mac_reg[ICR] = val;
+    s->mac_reg[ICS] = val;
     qemu_set_irq(s->dev.irq[0], (s->mac_reg[IMS] & s->mac_reg[ICR]) != 0);
 }
 
@@ -275,10 +276,14 @@
 {
     unsigned int index, r = s->mac_reg[EERD] & ~E1000_EEPROM_RW_REG_START;
 
+    if ((s->mac_reg[EERD] & E1000_EEPROM_RW_REG_START) == 0)
+        return (s->mac_reg[EERD]);
+
     if ((index = r >> E1000_EEPROM_RW_ADDR_SHIFT) > EEPROM_CHECKSUM_REG)
-        return 0;
-    return (s->eeprom_data[index] << E1000_EEPROM_RW_REG_DATA) |
-           E1000_EEPROM_RW_REG_DONE | r;
+        return (E1000_EEPROM_RW_REG_DONE | r);
+
+    return ((s->eeprom_data[index] << E1000_EEPROM_RW_REG_DATA) |
+           E1000_EEPROM_RW_REG_DONE | r);
 }
 
 static void
@@ -767,7 +772,7 @@
     getreg(WUFC),	getreg(TDT),	getreg(CTRL),	getreg(LEDCTL),
     getreg(MANC),	getreg(MDIC),	getreg(SWSM),	getreg(STATUS),
     getreg(TORL),	getreg(TOTL),	getreg(IMS),	getreg(TCTL),
-    getreg(RDH),	getreg(RDT),	getreg(VET),
+    getreg(RDH),	getreg(RDT),	getreg(VET),	getreg(ICS),
 
     [TOTH] = mac_read_clr8,	[TORH] = mac_read_clr8,	[GPRC] = mac_read_clr4,
     [GPTC] = mac_read_clr4,	[TPR] = mac_read_clr4,	[TPT] = mac_read_clr4,

  reply	other threads:[~2009-06-09 19:43 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-09  1:48 [Qemu-devel] bug report + fix: e1000.c in 0.10.5 does not properly emulate real hardware Bill Paul
2009-06-09  2:07 ` Anthony Liguori
2009-06-09  3:39   ` Bill Paul
2009-06-09 14:59     ` Richard W.M. Jones
2009-06-09 19:42       ` Bill Paul [this message]
2009-07-28 21:17         ` Bill Paul
2009-07-28 21:59           ` Anthony Liguori
2009-07-28 22:21             ` Bill Paul
2009-07-28 22:54               ` Anthony Liguori
2009-07-29 18:09                 ` Bill Paul

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=200906091243.09093.wpaul@windriver.com \
    --to=wpaul@windriver.com \
    --cc=qemu-devel@nongnu.org \
    --cc=rjones@redhat.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).