xenbus: Support multiple grants ring with 64KB
authorJulien Grall <julien.grall@citrix.com>
Tue, 13 Oct 2015 16:50:13 +0000 (17:50 +0100)
committerDavid Vrabel <david.vrabel@citrix.com>
Fri, 23 Oct 2015 13:20:47 +0000 (14:20 +0100)
commit89bf4b4e4a8d9ab219cd03aada24e782cf0ac359
treeb4ca7d378810e5321d78178f15c46e77effc8c87
parentf73314b28148f9ee9f89a0ae961c8fb36e3269fa
xenbus: Support multiple grants ring with 64KB

The PV ring may use multiple grants and expect them to be mapped
contiguously in the virtual memory.

Although, the current code is relying on a Linux page will be mapped to
a single grant. On build where Linux is using a different page size than
the grant (i.e other than 4KB), the grant will always be mapped on the
first 4KB of each Linux page which make the final ring not contiguous in
the memory.

This can be fixed by mapping multiple grant in a same Linux page.

Signed-off-by: Julien Grall <julien.grall@citrix.com>
Signed-off-by: David Vrabel <david.vrabel@citrix.com>
drivers/xen/xenbus/xenbus_client.c