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... Cheers, Rusty. _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/virtualization