[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH net-next] xen-netfront: try linearizing SKB if it occupies too many slots
On Fri, May 30, 2014 at 12:28:53PM +0000, David Laight wrote: > From: Wei Liu > > On Fri, May 30, 2014 at 10:06:48AM +0200, Stefan Bader wrote: > > [...] > > > I had been idly wondering about this onwards. And trying to understand > > > the whole > > > skb handling environment, I tried to come up with some idea as well. It > > > may be > > > totally stupid and using the wrong assumptions. It seems to work in the > > > sense > > > that things did not blow up into my face immediately and somehow I did > > > not see > > > dropped packages due to the number of slots either. > > > But again, I am not sure I am doing the right thing. The idea was to just > > > try to > > > get rid of so many compound pages (which I believe are the only ones that > > > can > > > have an offset big enough to allow some alignment savings)... > > > > > > -Stefan > > > > > > > Thanks. I think the general idea is OK, but it still involves > > unnecessary page allocation. We don't actually need to get rid of > > compound page by replacing it with a new page, we just need to make sure > > the data inside is aligned. > > > > If you look at xennet_make_frags, it only grants the 4K page which > > contains data. I presume a simple memove would be better than alloc_page > > + memcpy. What do you think? > > > > Like: > > memmove(page_address(fpage), page_address(fpage)+offset, size); > > frag->page_offset = 0; > > Isn't the rest of the page likely to contain fragments of other ethernet > frames? Even possibly of other data? > You're right, this is a valid concern. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |