On Fri, 2011-11-18 at 04:53 +0000, KY Srinivasan wrote: > > I still think you need to disable clustering and junk the bvec merge > > function. Your object seems to be to accumulate in page size multiples > > (and not aggregate over this) ... that's what clustering is designed to > > do. > > As part of addressing your first round of comments, I experimented with your > suggestions and I could not get rid of the code that does the bounce buffer handling. > I could generate I/O patterns that would require bounce buffer handling with your > suggestions in place. There are two separate things here. One is the scatter gather list bounce buffer processing, which is a bit nasty, but if you want to use < 4kb block size filesystems, I suppose I have to accept that you need it (although since it's a global fault of the hypervisor, perhaps it should sit in the hypervisor interface layer, so that every SG based transport can use it). The other is the biovec merge function addition. The purpose of this function seems to be to ensure you get one SG entry for every page (if I read it right)? In that case, you don't need any of this special casing. The flag DISABLE_CLUSTERING achieves the same thing. James -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html