Dor Laor wrote: >>>> 2) We either need huge descriptors or some chaining >>>> >> mechanism to >> >>>> handle scatter-gather. >>>> >>>> >>> Or, my preference, have a small sglist in the descriptor; >>> >> Define "small" ;) >> >> There a certainly patterns that cannot/will-not take advantage of SG >> (for instance, your typical network rx path), and therefore the sg >> entries are wasted in some cases. Since they need to be (IMHO) u64, >> they suck down at least 8 bytes a piece. Because of this I elected to >> use the model of one pointer per descriptor, with an external >> > descriptor > >> for SG. What are your thoughts on this? >> > > Using Rusty's code there is no waste. > Each descriptor has a flag (head|next). Next flag stands for pointer to > the > next descriptor with u32 next index. So the waste is 4 bytes. > Sg descriptors are chained on the same descriptor ring. >
Block I/O can easily require 256 sglist entries, eating up your ring. -- error compiling committee.c: too many arguments to function ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel