Re: [PATCH] 9p/trans_virtio.c: Fix broken zero-copy on vmalloc() buffers

2013-12-06 Thread Will Deacon
On Fri, Dec 06, 2013 at 02:38:28PM +, Richard Yao wrote: > On 12/06/2013 06:14 AM, Will Deacon wrote: > > On Wed, Dec 04, 2013 at 08:43:18PM +, Richard Yao wrote: > >> diff --git a/net/9p/trans_virtio.c b/net/9p/trans_virtio.c > >> index 9c5a1aa..5d1d04b 100644 > >> --- a/net/9p/trans_virti

Re: [PATCH] 9p/trans_virtio.c: Fix broken zero-copy on vmalloc() buffers

2013-12-06 Thread Richard Yao
On 12/06/2013 06:14 AM, Will Deacon wrote: > On Wed, Dec 04, 2013 at 08:43:18PM +, Richard Yao wrote: >> The 9p-virtio transport does zero copy on things larger than 1024 bytes >> in size. It accomplishes this by returning the physical addresses of >> pages to the virtio-pci device. At present,

Re: [PATCH] 9p/trans_virtio.c: Fix broken zero-copy on vmalloc() buffers

2013-12-06 Thread Will Deacon
On Wed, Dec 04, 2013 at 08:43:18PM +, Richard Yao wrote: > The 9p-virtio transport does zero copy on things larger than 1024 bytes > in size. It accomplishes this by returning the physical addresses of > pages to the virtio-pci device. At present, the translation is usually a > bit shift. > >

Re: [PATCH] 9p/trans_virtio.c: Fix broken zero-copy on vmalloc() buffers

2013-12-04 Thread Alexander Graf
On 04.12.2013, at 21:43, Richard Yao wrote: > The 9p-virtio transport does zero copy on things larger than 1024 bytes > in size. It accomplishes this by returning the physical addresses of > pages to the virtio-pci device. At present, the translation is usually a > bit shift. > > However, that

[PATCH] 9p/trans_virtio.c: Fix broken zero-copy on vmalloc() buffers

2013-12-04 Thread Richard Yao
The 9p-virtio transport does zero copy on things larger than 1024 bytes in size. It accomplishes this by returning the physical addresses of pages to the virtio-pci device. At present, the translation is usually a bit shift. However, that approach produces an invalid page address when we read/writ