From: "Jim C. Brown" <jbrown106@phreaker.net>
To: qemu-devel@nongnu.org
Subject: [Qemu-devel] Re: openbsd image on freeoszoo
Date: Fri, 9 Jul 2004 21:27:34 -0400 [thread overview]
Message-ID: <20040710012734.GA19388@jbrown.mylinuxbox.org> (raw)
In-Reply-To: <20040709231808.GA17856@jbrown.mylinuxbox.org>
[-- Attachment #1: Type: text/plain, Size: 706 bytes --]
On Fri, Jul 09, 2004 at 07:18:08PM -0400, Jim C. Brown wrote:
>
> I also get lots of "remote transmit DMA failed to complete" errors, for
> both the ISA and the PCI nic. I haven't solved this one yet but it seems
> harmless. (For the ISA nic, it seems that it MUST be called ne2 btw or network
> won't work.) For the PCI nic, I also get "send_packet: Input/output error",
> not solved yet either.
Fixed in qemu. Attached is the patch that fixes it. This looks like a bug
in qemu, as it transfers an odd number of bytes in words, leaving a count of
-1 when done. But if so, it has never been caught before...
--
Infinite complexity begets infinite beauty.
Infinite precision begets infinite perfection.
[-- Attachment #2: nox.patch --]
[-- Type: text/plain, Size: 1701 bytes --]
--- qemu/hw/ne2000.c Mon Jun 21 15:42:46 2004
+++ qemu/hw/ne2000.c Fri Jul 9 20:57:32 2004
@@ -447,7 +447,7 @@
#ifdef DEBUG_NE2000
printf("NE2000: asic write val=0x%04x\n", val);
#endif
- if (s->rcnt == 0)
+ if ((s->rcnt == 0) || (s->rcnt == (uint16_t)-1))
return;
if (s->dcfg & 0x01) {
/* 16 bit access */
@@ -463,7 +463,7 @@
/* wrap */
if (s->rsar == s->stop)
s->rsar = s->start;
- if (s->rcnt == 0) {
+ if ((s->rcnt == 0) || (s->rcnt == (uint16_t)-1)) {
/* signal end of transfert */
s->isr |= ENISR_RDC;
ne2000_update_irq(s);
@@ -489,7 +489,7 @@
/* wrap */
if (s->rsar == s->stop)
s->rsar = s->start;
- if (s->rcnt == 0) {
+ if ((s->rcnt == 0) || (s->rcnt == (uint16_t)-1)) {
/* signal end of transfert */
s->isr |= ENISR_RDC;
ne2000_update_irq(s);
@@ -507,7 +507,7 @@
#ifdef DEBUG_NE2000
printf("NE2000: asic writel val=0x%04x\n", val);
#endif
- if (s->rcnt == 0)
+ if ((s->rcnt == 0) || (s->rcnt == (uint16_t)-1))
return;
/* 32 bit access */
ne2000_mem_writel(s, s->rsar, val);
@@ -516,7 +516,7 @@
/* wrap */
if (s->rsar == s->stop)
s->rsar = s->start;
- if (s->rcnt == 0) {
+ if ((s->rcnt == 0) || (s->rcnt == (uint16_t)-1)) {
/* signal end of transfert */
s->isr |= ENISR_RDC;
ne2000_update_irq(s);
@@ -536,7 +536,7 @@
/* wrap */
if (s->rsar == s->stop)
s->rsar = s->start;
- if (s->rcnt == 0) {
+ if ((s->rcnt == 0) || (s->rcnt == (uint16_t)-1)) {
/* signal end of transfert */
s->isr |= ENISR_RDC;
ne2000_update_irq(s);
next prev parent reply other threads:[~2004-07-10 1:30 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-07-09 23:18 [Qemu-devel] openbsd image on freeoszoo Jim C. Brown
2004-07-10 1:27 ` Jim C. Brown [this message]
2004-07-10 12:00 ` [Qemu-devel] " Julian Seward
2004-07-10 15:16 ` Jim C. Brown
2004-07-10 14:45 ` Fabrice Bellard
2004-07-10 20:52 ` Jim C. Brown
2004-07-10 21:46 ` [Qemu-devel] cvs cpu-exec.c (bug?) Renzo Davoli
2004-07-10 22:23 ` [Qemu-devel] Re: openbsd image on freeoszoo Julian Seward
2004-07-11 0:52 ` Jim C. Brown
2004-07-12 12:12 ` Julian Seward
2004-07-10 7:50 ` [Qemu-devel] " Raphaël Enrici
2004-07-11 0:16 ` Stefano Marinelli
2004-07-11 0:53 ` Jim C. Brown
2004-07-11 7:22 ` Stefano Marinelli
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=20040710012734.GA19388@jbrown.mylinuxbox.org \
--to=jbrown106@phreaker.net \
--cc=qemu-devel@nongnu.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 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).