[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v2 2/2] libvchan: replace munmap with correct xc_gntshr_munmap



On 05/04/2013 06:10 PM, Marek Marczykowski wrote:
On linux it will end up in munmap anyway, but do not assume any
particular xc_gntshr_munmap implementation details.

Signed-off-by: Marek Marczykowski <marmarek@xxxxxxxxxxxxxxxxxxxxxx>

On a client, this ends up using xc_gntshr_munmap to unmap pages that
were mapped with xc_gnttab_map_* instead of using xc_gnttab_unmam

George: unless there is another OS besides Linux that implements the
xc_gntshr_* interfaces (I found none from a grep of the source), this
is just code clean-up and so could be postponed to 4.4.

---
  tools/libvchan/io.c | 6 ++++--
  1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/tools/libvchan/io.c b/tools/libvchan/io.c
index 5ec5fb9..3040099 100644
--- a/tools/libvchan/io.c
+++ b/tools/libvchan/io.c
@@ -324,9 +324,11 @@ void libxenvchan_close(struct libxenvchan *ctrl)
        if (!ctrl)
                return;
        if (ctrl->read.order >= PAGE_SHIFT)
-               munmap(ctrl->read.buffer, 1 << ctrl->read.order);
+               xc_gntshr_munmap(ctrl->gntshr, ctrl->read.buffer,
+                               1 << (ctrl->read.order - PAGE_SHIFT));
        if (ctrl->write.order >= PAGE_SHIFT)
-               munmap(ctrl->write.buffer, 1 << ctrl->write.order);
+               xc_gntshr_munmap(ctrl->gntshr, ctrl->write.buffer,
+                               1 << (ctrl->write.order - PAGE_SHIFT));
        if (ctrl->ring) {
                if (ctrl->is_server) {
                        ctrl->ring->srv_live = 0;

--
Daniel De Graaf
National Security Agency

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.