Re: [PATCH 5/8] lguest: trivial guest network driver

2007-02-14 Thread Rusty Russell
On Thu, 2007-02-15 at 00:57 +1100, Herbert Xu wrote: > On Wed, Feb 14, 2007 at 03:47:55PM +1100, Rusty Russell wrote: > > > > It's also used to generate dma structs for outgoing packets. In that > > case, skb_headlen() == 0: > > I see, in that case you're guaranteed to have no fragments. > Still

Re: [PATCH 5/8] lguest: trivial guest network driver

2007-02-14 Thread Herbert Xu
On Wed, Feb 14, 2007 at 03:47:55PM +1100, Rusty Russell wrote: > > It's also used to generate dma structs for outgoing packets. In that > case, skb_headlen() == 0: I see, in that case you're guaranteed to have no fragments. Still it feels a bit weird to have a length field that only applies to t

Re: [PATCH 5/8] lguest: trivial guest network driver

2007-02-13 Thread Rusty Russell
On Wed, 2007-02-14 at 01:06 +1100, Herbert Xu wrote: > On Tue, Feb 13, 2007 at 01:15:18PM +1100, Rusty Russell wrote: > > > > Good spotting! This function needs to be passed skb_headlen(skb), > > rather than skb->len. Patch is below (I renamed the parameter as well, > > for clarity). > > How ab

Re: [PATCH 5/8] lguest: trivial guest network driver

2007-02-13 Thread Herbert Xu
On Tue, Feb 13, 2007 at 01:15:18PM +1100, Rusty Russell wrote: > > Good spotting! This function needs to be passed skb_headlen(skb), > rather than skb->len. Patch is below (I renamed the parameter as well, > for clarity). How about just dropping that parameter and using skb_headlen(skb) directl

Re: [PATCH 5/8] lguest: trivial guest network driver

2007-02-12 Thread Rusty Russell
On Tue, 2007-02-13 at 02:55 +1100, Herbert Xu wrote: > On Mon, Feb 12, 2007 at 02:52:01PM +1100, Rusty Russell wrote: > > > > +static void skb_to_dma(const struct sk_buff *skb, unsigned int len, > > + struct lguest_dma *dma) > > +{ > > + unsigned int i, seg; > > + > > + for (i

Re: [PATCH 5/8] lguest: trivial guest network driver

2007-02-12 Thread Herbert Xu
On Mon, Feb 12, 2007 at 02:52:01PM +1100, Rusty Russell wrote: > > +static void skb_to_dma(const struct sk_buff *skb, unsigned int len, > +struct lguest_dma *dma) > +{ > + unsigned int i, seg; > + > + for (i = seg = 0; i < len; seg++, i += rest_of_page(skb->data + i)) {

[PATCH 5/8] lguest: trivial guest network driver

2007-02-11 Thread Rusty Russell
This network driver operates both to the host process, and to other guests. It's pretty trivial. Signed-off-by: Rusty Russell <[EMAIL PROTECTED]> === --- a/drivers/net/Makefile +++ b/drivers/net/Makefile @@ -217,3 +217,4 @@ obj-$(CO