All of lore.kernel.org
 help / color / mirror / Atom feed
From: "M. Warner Losh" <imp@bsdimp.com>
To: qemu-devel@nongnu.org, ryanwsmith@gmail.com
Subject: Re: [Qemu-devel] qemu networking help
Date: Sun, 30 Dec 2007 10:10:27 -0700 (MST)	[thread overview]
Message-ID: <20071230.101027.1474623298.imp@bsdimp.com> (raw)
In-Reply-To: <AAC9B78C-442D-428C-92F7-FB0F50B7E7EB@gmail.com>

In message: <AAC9B78C-442D-428C-92F7-FB0F50B7E7EB@gmail.com>
            Ryan W Smith <ryanwsmith@gmail.com> writes:
: I'm currently working on a project where we're using qemu to trace  
: information flow through the operating system.  One of the things  
: that we'd like to do is trace network data as it flows through the  
: operating system.  I've been reading through the code, and I've  
: gotten a bit lost.  I gather that slirp is where data comes and goes  
: from the host operating system, but I'm looking for the section of  
: code that sends and receives data from the guest operating system.  I  
: read through the network device code (ne2000.c), and my guess is that  
: the inb and outb functions are used to transfer data to the guest,  
: but I'm not quite certain how that is done.  Is there anything that  
: anyone can point me to that would explain the process of getting data  
: from the networking device to the guest operating system?  Also, is  
: there anything that explains the ne2k networking device a little  
: more, and could explain what all the registers are and how to use  
: them?  Thanks in advance for any help you may offer.

Well, the ne2000 has a shared memory area that the packets live in,
and a i/o port area that signals the host O/S what's going on.

I'd suggest reading the FreeBSD if_ed driver for some more information
about the card.  From it you'll see that the NE2000 has a DS8390
packet engine that does a DMA directly into the shared memory.  The
ds8390 datasheet can be foudn on the network.  You may also find good
comments in the Linux ne.c driver:
	http://www.gelato.unsw.edu.au/lxr/source/drivers/net/ne.c

Warner

      parent reply	other threads:[~2007-12-30 17:11 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-12-30  8:40 [Qemu-devel] qemu networking help Ryan W Smith
2007-12-30 11:55 ` Mulyadi Santosa
2007-12-30 17:10 ` M. Warner Losh [this message]

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=20071230.101027.1474623298.imp@bsdimp.com \
    --to=imp@bsdimp.com \
    --cc=qemu-devel@nongnu.org \
    --cc=ryanwsmith@gmail.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 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.