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

[Xen-devel] [PATCH] linux/blktap2: eliminate bogus clearing of PG_reserved



While making sure PG_reserved is set for pages allocated from the
balloon driver (and to be used for I/O) is a necessary thing to do
(as 2.6.18's as well as pv-ops' balloon drivers don't guarantee this
for the pages returned from alloc_empty_pages_and_page_vec()),
clearing this flag again when a page is no longer in use for I/O is
bogus at best (after all, the page at that point is not associated
with any MFN anymore), and causes problems when the balloon driver
properly marks all such pages as reserved and checks, upon their
return, that they are still marked this way.

Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>
Cc: Jake Wires <Jake.Wires@xxxxxxxxxx>
Cc: Dutch Meyer <dmeyer@xxxxxxxxx>
Cc: Jeremy Fitzhardinge <jeremy@xxxxxxxx>

--- a/drivers/xen/blktap2/device.c
+++ b/drivers/xen/blktap2/device.c
@@ -281,7 +281,6 @@ blktap_device_fast_flush(struct blktap *
 
                page = map[offset];
                if (page) {
-                       ClearPageReserved(map[offset]);
                        if (PageBlkback(page)) {
                                ClearPageBlkback(page);
                                set_page_private(page, 0);
--- a/drivers/xen/blktap2/ring.c
+++ b/drivers/xen/blktap2/ring.c
@@ -112,12 +112,9 @@ blktap_ring_clear_pte(struct vm_area_str
 
        offset  = (int)((uvaddr - vma->vm_start) >> PAGE_SHIFT);
        page    = map[offset];
-       if (page) {
-               ClearPageReserved(page);
-               if (PageBlkback(page)) {
-                       ClearPageBlkback(page);
-                       set_page_private(page, 0);
-               }
+       if (page && PageBlkback(page)) {
+               ClearPageBlkback(page);
+               set_page_private(page, 0);
        }
        map[offset] = NULL;
 



Attachment: xenlinux-blktap2-ClearPageReserved.patch
Description: Text document

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

 


Rackspace

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