qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] NE2000 problem found
@ 2004-06-09  8:25 Mike Nordell
  2004-06-09 19:43 ` Fabrice Bellard
  0 siblings, 1 reply; 2+ messages in thread
From: Mike Nordell @ 2004-06-09  8:25 UTC (permalink / raw)
  To: qemu-devel

ne2000_asic_ioport_write:
    if (s->dcfg & 0x01) {
        /* 16 bit access */
+        assert(s->rcnt >= 2);
+        assert(s->rsar + 2 <= s->stop);
        ne2000_mem_writew(s, s->rsar, val);
        s->rsar += 2;
        s->rcnt -= 2;
    }

First assert triggered with:
s->dcfg: 0x49
s->rcnt: 1
s->rsar: 0x4156
s->stop: 0xc000

What surprises me the most is that it's coming from an outb, not outw. Is
this really correct, or is the ne2000 emulation perhaps missing a
differentiation between 16- and 8-bit I/O?

I'll add *readb/writeb locally, to see if things go better, and report
findings/patch.

/Mike

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [Qemu-devel] NE2000 problem found
  2004-06-09  8:25 [Qemu-devel] NE2000 problem found Mike Nordell
@ 2004-06-09 19:43 ` Fabrice Bellard
  0 siblings, 0 replies; 2+ messages in thread
From: Fabrice Bellard @ 2004-06-09 19:43 UTC (permalink / raw)
  To: qemu-devel

Mike Nordell wrote:
> ne2000_asic_ioport_write:
>     if (s->dcfg & 0x01) {
>         /* 16 bit access */
> +        assert(s->rcnt >= 2);
> +        assert(s->rsar + 2 <= s->stop);
>         ne2000_mem_writew(s, s->rsar, val);
>         s->rsar += 2;
>         s->rcnt -= 2;
>     }
> 
> First assert triggered with:
> s->dcfg: 0x49
> s->rcnt: 1
> s->rsar: 0x4156
> s->stop: 0xc000
> 
> What surprises me the most is that it's coming from an outb, not outw. Is
> this really correct, or is the ne2000 emulation perhaps missing a
> differentiation between 16- and 8-bit I/O?

It is correct : the size of the transfer is determined by dcfg, not by 
the width of the I/O instruction.

> I'll add *readb/writeb locally, to see if things go better, and report
> findings/patch.

Can you tell me exactly in which case you have problems with NE2000 ?

BTW, did someone find why Windows XP has security problems in QEMU ? It 
seems related to the networking (the Safe mode without networking works, 
but not the one with networking), but I don't have enough knowledge of 
Windows to go further.

Fabrice.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2004-06-09 19:42 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-06-09  8:25 [Qemu-devel] NE2000 problem found Mike Nordell
2004-06-09 19:43 ` Fabrice Bellard

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).