[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] Fix blktap "bad page state" bug.
# HG changeset patch # User kaf24@xxxxxxxxxxxxxxxxxxxx # Node ID 3e5a203c548982a7fdca77aa78ce837a8329f5c4 # Parent 369bdfa1e04aa5097440eb0cd548d4e2033365ae Fix blktap "bad page state" bug. Signed-off-by: Andrew Warfield <andrew.warfield@xxxxxxxxxxxx> Signed-off-by: Ewan Mellor <ewan@xxxxxxxxxxxxx> diff -r 369bdfa1e04a -r 3e5a203c5489 linux-2.6-xen-sparse/mm/memory.c --- a/linux-2.6-xen-sparse/mm/memory.c Sun Apr 30 09:32:21 2006 +0100 +++ b/linux-2.6-xen-sparse/mm/memory.c Sun Apr 30 09:39:04 2006 +0100 @@ -968,6 +968,7 @@ int get_user_pages(struct task_struct *t { int i; unsigned int vm_flags; + int xenpage = 0; /* * Require read or write permissions. @@ -1025,10 +1026,14 @@ int get_user_pages(struct task_struct *t if (vma && (vma->vm_flags & VM_FOREIGN)) { struct page **map = vma->vm_private_data; int offset = (start - vma->vm_start) >> PAGE_SHIFT; - + xenpage =1; if (map[offset] != NULL) { - if (pages) - pages[i] = map[offset]; + if (pages) { + struct page *page = map[offset]; + + pages[i] = page; + get_page(page); + } if (vmas) vmas[i] = vma; i++; _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |