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

[Xen-changelog] [linux-2.6.18-xen] xenbus: Fix memory leak on release



# HG changeset patch
# User Keir Fraser <keir@xxxxxxx>
# Date 1292837095 0
# Node ID 5c0b28125957507fbf69d23da50b9f655a04c630
# Parent  072d5b122c53852b4b09c33fdd63b6ca4b1c58e7
xenbus: Fix memory leak on release

Pending responses were leaked on close.

Signed-off-by: Daniel De Graaf <dgdegra@xxxxxxxxxxxxx>
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>
---
 drivers/xen/xenbus/xenbus_dev.c |    5 +++++
 1 files changed, 5 insertions(+)

diff -r 072d5b122c53 -r 5c0b28125957 drivers/xen/xenbus/xenbus_dev.c
--- a/drivers/xen/xenbus/xenbus_dev.c   Fri Dec 17 16:40:58 2010 +0000
+++ b/drivers/xen/xenbus/xenbus_dev.c   Mon Dec 20 09:24:55 2010 +0000
@@ -359,6 +359,7 @@ static int xenbus_dev_release(struct ino
        struct xenbus_dev_data *u = filp->private_data;
        struct xenbus_dev_transaction *trans, *tmp;
        struct watch_adapter *watch, *tmp_watch;
+       struct read_buffer *rb, *tmp_rb;
 
        list_for_each_entry_safe(trans, tmp, &u->transactions, list) {
                xenbus_transaction_end(trans->handle, 1);
@@ -372,6 +373,10 @@ static int xenbus_dev_release(struct ino
                free_watch_adapter(watch);
        }
 
+       list_for_each_entry_safe(rb, tmp_rb, &u->read_buffers, list) {
+               list_del(&rb->list);
+               kfree(rb);
+       }
        kfree(u);
 
        return 0;

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

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