Re: bug disabling guest interface

Jacek Milewicz
Fri, 08 Mar 2013 19:36:37 -0000

Hi All

>
> Is there any further information on a possible fix for this? Thoughts?
> Ideas? As it seems to be hitting multiple sites, I''d like to get
it
fixed asap...

There are 3 ways I can see this fixed:
- update guests so all have same MAX_SKB_FRAGS (that includes windows
drivers (windows drivers use 19 for MAX_SKB_FRAGS))
-add some sort of negotiation between host and guest
- change MAX_SKB_FRAGS to 19 to accommodate all guests

Unfortunately first one requires changes to the guest and most don''t
have
that luxury. So the only way I see it could be fixed without breaking
compatibility even more  is

diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
index 821c7f4..82de0f5 100644
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
@@ -143,8 +143,8 @@ struct sk_buff;
  * Since GRO uses frags we allocate at least 16 regardless of page
  * size.
  */
-#if (65536/PAGE_SIZE + 1) < 16
-#define MAX_SKB_FRAGS 16UL
+#if (65536/PAGE_SIZE + 1) < 19
+#define MAX_SKB_FRAGS 19UL
 #else
 #define MAX_SKB_FRAGS (65536/PAGE_SIZE + 1)
 #endif