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

[Xen-devel] GPL PV Windows xennet will BSOD



Running GPL PV Windows drivers on Windows 2003 Server Standard Edition SP2 -

The current GPL PV Windows xennet driver source found in the repository will BSOD if the option "Large Send Offload" is changed to disabled or if the driver is disabled.

Tracked down the issue via WinDbg –

If a buffer is in the free list prior to the function XenNet_RxBufferFree() being called via the function XenNet_RxShutdown() the array fl->page_list[] will be overwritten and the variable page_free will be stepped on.

A simple solution, which I have verified is to dispose of the free list buffers (if there are any) by calling the function XenFreelist_Dispose() prior to calling the function XenNet_RxBufferFree()

Here’s the fix for the function XenNet_RxShutdown(); add the following lines after KeAcquireSpinLock() and before  XenNet_RxBufferFree ()

  /* free any buffers in free list before freeing all rx buffers */

  XenFreelist_Dispose(&xi->rx_freelist);

 

Bart

 


Instantly invite friends from Facebook and other social networks to join you on Windows Live™ Messenger. Invite friends now!
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

 


Rackspace

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