On Thu, Mar 07, 2013 at 11:33:19AM +1100, Rusty Russell wrote: > Asias He <asias@xxxxxxxxxx> writes: > > On Wed, Mar 06, 2013 at 04:23:24PM +1100, Rusty Russell wrote: > >> These are specialized versions of virtqueue_add_buf(), which cover > >> over 80% of cases and are far clearer. > >> > >> In particular, the scatterlists passed to these functions don't have > >> to be clean (ie. we ignore end markers). > >> > >> Signed-off-by: Rusty Russell <rusty@xxxxxxxxxxxxxxx> > > > > So, what is the plan for the following ideas discussed in the other > > thread? > > > > ''' > > > Looking at code, it seems that most users really have a single sg, in > > > low memory. So how about simply passing void * instead of sg? Whoever > > > has multiple sgs can use the rich interface. > > > > Good point, let's do that: > > 1) Make virtqueue_add_outbuf()/inbuf() take a void * and len. > > 2) Transfer users across to use that. > > 3) Make everyone else use clean scatterlists with virtqueue_add_sgs[]. > > 4) Remove virtqueue_add_bufs(). > > Networking performance: there is still a performance penalty in using > virtqueue_add_sgs(), and it can't use a simple void * and len. > > So I changed my mind. Again... Ah, OK. > Cheers, > Rusty. -- Asias _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/virtualization