From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: Is: SKB_MAX_LEN bites again. Was: Re: bug disabling guest interface Date: Fri, 8 Mar 2013 15:36:36 -0500 Message-ID: <20130308203636.GA5422@phenom.dumpdata.com> References: <5139A56D.30107@crc.id.au> <00bf01ce1c34$395a4f20$ac0eed60$@jacekowski.org> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline In-Reply-To: <00bf01ce1c34$395a4f20$ac0eed60$@jacekowski.org> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Jacek Milewicz , Wei.Liu2@citrix.com Cc: Ian Campbell , annie li , 'Steven Haigh' , xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org On Fri, Mar 08, 2013 at 08:36:37PM +0100, Jacek Milewicz wrote: > 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 Ugh. The negotiations between host and guest is probably the best choice. The issues you are going to hit are that you might need to redo the skbs to match what the frontend's max is. Annie, Wei, Ian - were there some RFC patches floating around for this? > > 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 > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xen.org > http://lists.xen.org/xen-devel >