diff options
author | Hugh Dickins <hugh@veritas.com> | 2005-06-21 20:15:09 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-06-21 21:46:20 -0400 |
commit | 7c2f3fda5666c280bcd00ac3b86963270b23e796 (patch) | |
tree | 97404af53d1bb61912e5739690c053f8005bc299 /sound/oss/rme96xx.c | |
parent | 334795eca421287c41c257992027d29659dc0f97 (diff) |
[PATCH] rme96xx: fix PageReserved range
rme96xx busmaster_malloc miscalculates and fails to set PageReserved on any
page of char *buf; but busmaster_free does it right, so do the same (I
don't have the card, just noticed this while sifting for rmap BUGs).
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'sound/oss/rme96xx.c')
-rw-r--r-- | sound/oss/rme96xx.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sound/oss/rme96xx.c b/sound/oss/rme96xx.c index 76774bbc1436..b4278eecc917 100644 --- a/sound/oss/rme96xx.c +++ b/sound/oss/rme96xx.c | |||
@@ -807,7 +807,7 @@ static void* busmaster_malloc(int size) { | |||
807 | struct page* page, *last_page; | 807 | struct page* page, *last_page; |
808 | 808 | ||
809 | page = virt_to_page(buf); | 809 | page = virt_to_page(buf); |
810 | last_page = virt_to_page(buf + (1 << pg)); | 810 | last_page = page + (1 << pg); |
811 | DBG(printk("setting reserved bit\n")); | 811 | DBG(printk("setting reserved bit\n")); |
812 | while (page < last_page) { | 812 | while (page < last_page) { |
813 | SetPageReserved(page); | 813 | SetPageReserved(page); |