[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH] Fox for pcnet device model data corruption

  • To: <xen-devel@xxxxxxxxxxxxxxxxxxx>
  • From: "Kamble, Nitin A" <nitin.a.kamble@xxxxxxxxx>
  • Date: Fri, 24 Feb 2006 16:10:00 -0800
  • Cc: Ian Pratt <m+Ian.Pratt@xxxxxxxxxxxx>
  • Delivery-date: Sat, 25 Feb 2006 00:10:28 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>
  • Thread-index: AcY5n9Ev9Xadb9H0QfWHMMQR6SnhRQ==
  • Thread-topic: [PATCH] Fox for pcnet device model data corruption

Hi Ian,

   The attached patch fixes pcnet data corruption for VMX guests as reported by you.

All the packets go through the qemu generic packet interface to the specific device model. In this case the device model is pcnet.

   The pcnet device model receiver is registered with it like this.

qemu_add_read_packet(nd, pcnet_can_receive, pcnet_receive, d);

   pcnet_can_receive function is used to tell the generic qemu framework that the DM can receive packets. It is suppose block incoming packets in the cases such as when the pcnet driver is not yet started by the OS or pcnet device is suspended or stopped by the OS or it is not ready to receive more packets.

    When the traffic is heavy on the DM, its receive rings can get filled up, and it will has to drop the receiving packets. This patch detects this situation in the pcnet_can_receive() function and avoids dropping of packets. This mechanism is working as a bandwidth handshaking between device model and the sender. Dm is saying send me up to the rate at which I can handle it.


Signed-Off-By: Nitin A Kamble <nitin.a.kamble@xxxxxxxxx>


Thanks & Regards,



Open Source Technology Center, Intel Corp


Attachment: pcnet_corruption_fix.patch
Description: pcnet_corruption_fix.patch

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.