Message ID | 20090620183215.GA24936@lst.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Sun, 21 Jun 2009 04:02:15 am Christoph Hellwig wrote: > Looks like I sent a patch that doesn't actually compile because qui > decided to apply those fixes to a different one. Here's the correc > one: > > -- > > Subject: virtio_blk: don't bounce highmem requests > From: Christoph Hellwig <hch@lst.de> > > By default a block driver bounces highmem requests, but virtio-blk is > perfectly fine with any request that fit into it's 64 bit addressing > scheme, mapped in the kernel virtual space or not. Thanks, applied. I had no idea we had to set a bounce limit; wonder what else the driver doesn't do? Thanks, Rusty. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, Jun 23, 2009 at 04:42:52PM +0930, Rusty Russell wrote: > On Sun, 21 Jun 2009 04:02:15 am Christoph Hellwig wrote: > > Looks like I sent a patch that doesn't actually compile because qui > > decided to apply those fixes to a different one. Here's the correc > > one: > > > > -- > > > > Subject: virtio_blk: don't bounce highmem requests > > From: Christoph Hellwig <hch@lst.de> > > > > By default a block driver bounces highmem requests, but virtio-blk is > > perfectly fine with any request that fit into it's 64 bit addressing > > scheme, mapped in the kernel virtual space or not. > > Thanks, applied. Can you forward it to Linus for 2.6.31? It's a trivial fix for an issue causing a lot of pain to people with highmem enabled. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Index: linux-2.6/drivers/block/virtio_blk.c =================================================================== --- linux-2.6.orig/drivers/block/virtio_blk.c 2009-06-20 20:11:44.769929544 +0200 +++ linux-2.6/drivers/block/virtio_blk.c 2009-06-20 20:20:29.661804686 +0200 @@ -360,6 +360,9 @@ static int __devinit virtblk_probe(struc blk_queue_max_phys_segments(vblk->disk->queue, vblk->sg_elems-2); blk_queue_max_hw_segments(vblk->disk->queue, vblk->sg_elems-2); + /* No need to bounce any requests */ + blk_queue_bounce_limit(vblk->disk->queue, BLK_BOUNCE_ANY); + /* No real sector limit. */ blk_queue_max_sectors(vblk->disk->queue, -1U);