* kernel BUG at mm/rmap.c:480 in 2.6.10-rc3-bk7
@ 2004-12-14 16:45 Greg KH
2004-12-14 23:26 ` Hugh Dickins
0 siblings, 1 reply; 18+ messages in thread
From: Greg KH @ 2004-12-14 16:45 UTC (permalink / raw)
To: linux-kernel
So I finally try to get dri working on my laptop and I get the following
kernel bug when killing X (the program gish was running at the time):
Any ideas?
thanks,
greg k-h
------------[ cut here ]------------
kernel BUG at mm/rmap.c:480!
invalid operand: 0000 [#1]
Modules linked in: orinoco_pci orinoco hermes radeon ehci_hcd ohci_hcd usbcore
CPU: 0
EIP: 0060:[<c0147d72>] Not tainted VLI
EFLAGS: 00010286 (2.6.10-rc3-bk7)
EIP is at page_remove_rmap+0x32/0x40
eax: ffffffff ebx: 00000000 ecx: c1143440 edx: c1143440
esi: c821144c edi: 00200000 ebp: c1143440 esp: c8aebd94
ds: 007b es: 007b ss: 0068
Process gish (pid: 10864, threadinfo=c8aea000 task=c7c2c040)
Stack: c0141495 c1143440 00000000 c8aebdc4 c0114720 0a1a2067 b6d13000 c7c03b6c
b6b13000 00000000 c0141651 c03d97f8 c7c03b68 b6913000 00200000 00000000
c03d97f8 b6913000 c7c03b6c b6b13000 00000000 c01416c3 c03d97f8 c7c03b68
Call Trace:
[<c0141495>] zap_pte_range+0x135/0x290
[<c0114720>] recalc_task_prio+0xc0/0x1c0
[<c0141651>] zap_pmd_range+0x61/0x80
[<c01416c3>] unmap_page_range+0x53/0x90
[<c0141801>] unmap_vmas+0x101/0x1e0
[<c0145f41>] exit_mmap+0x71/0x140
[<c01163c4>] mmput+0x24/0x80
[<c011a756>] do_exit+0x146/0x370
[<c011a9f7>] do_group_exit+0x37/0x80
[<c012339a>] get_signal_to_deliver+0x1da/0x2d0
[<c0102d1b>] do_signal+0x9b/0x170
[<c01633b0>] __pollwait+0x0/0xd0
[<c0163c74>] sys_select+0x3f4/0x540
[<c0132a69>] handle_IRQ_event+0x39/0x70
[<c0102e27>] do_notify_resume+0x37/0x3c
[<c0102f6e>] work_notifysig+0x13/0x15
Code: c4 08 75 1d 83 42 08 ff 0f 98 c0 84 c0 74 11 8b 42 08 40 78 16 9c 58 fa ff 0d 90 34 3f c0 50 9d c3 0f 0b dd 01 e3 3e 2d c0 eb d9 <0f> 0b e0 01 e3 3e 2d c0 eb e0 8d 74 26 00 83 ec 20 b8 01 00 00
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: kernel BUG at mm/rmap.c:480 in 2.6.10-rc3-bk7
2004-12-14 16:45 kernel BUG at mm/rmap.c:480 in 2.6.10-rc3-bk7 Greg KH
@ 2004-12-14 23:26 ` Hugh Dickins
2004-12-15 0:10 ` Nick Piggin
` (2 more replies)
0 siblings, 3 replies; 18+ messages in thread
From: Hugh Dickins @ 2004-12-14 23:26 UTC (permalink / raw)
To: Greg KH; +Cc: Andrew Morton, linux-kernel
On Tue, 14 Dec 2004, Greg KH wrote:
>
> So I finally try to get dri working on my laptop and I get the following
> kernel bug when killing X (the program gish was running at the time):
>
> kernel BUG at mm/rmap.c:480!
> EIP is at page_remove_rmap+0x32/0x40
> Process gish (pid: 10864, threadinfo=c8aea000 task=c7c2c040)
> [<c0141495>] zap_pte_range+0x135/0x290
>...
> [<c0145f41>] exit_mmap+0x71/0x140
> [<c01163c4>] mmput+0x24/0x80
> [<c011a756>] do_exit+0x146/0x370
>...
It's my BUG_ON(page_mapcount(page) < 0).
We've had about one report per month, over the last six months.
But this is the first citing "gish"; sometimes it's been "cc1".
I've given it a lot of thought, but I'm still mystified. The last
report turned out to be attributable to bad memory; but this BUG_ON
is too persistent and specific to be put down to that in all cases.
One case that's easy to explain: if it was preceded (perhaps hours
earlier) by a "Bad page state" message and stacktrace, referring to
the same page (in ecx, edx, ebp in your dump), which showed non-zero
mapcount, then this is an after-effect of bad_page resetting mapcount.
And the real problem was probably a double free, which bad_page noted,
but carried on regardless. Worth checking your logs for, let us know,
but there have been several reports where that's definitely not so.
I presume this was just a one-off? If you can repeat it from time to
time, I'll try to devise some printk'ing to shed more light. You might
wonder why I haven't got such a patch already prepared: precisely
because I'm mystified and have no hypothesis worth testing out.
In the meantime, any similar or related traces,
please do send me to scan for commonalities.
Thanks!
Hugh
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: kernel BUG at mm/rmap.c:480 in 2.6.10-rc3-bk7
2004-12-14 23:26 ` Hugh Dickins
@ 2004-12-15 0:10 ` Nick Piggin
2004-12-15 0:19 ` Greg KH
2004-12-15 0:43 ` Andrea Arcangeli
2 siblings, 0 replies; 18+ messages in thread
From: Nick Piggin @ 2004-12-15 0:10 UTC (permalink / raw)
To: Hugh Dickins; +Cc: Greg KH, Andrew Morton, linux-kernel
On Tue, 2004-12-14 at 23:26 +0000, Hugh Dickins wrote:
> On Tue, 14 Dec 2004, Greg KH wrote:
> >
> > So I finally try to get dri working on my laptop and I get the following
> > kernel bug when killing X (the program gish was running at the time):
> >
> > kernel BUG at mm/rmap.c:480!
> > EIP is at page_remove_rmap+0x32/0x40
> > Process gish (pid: 10864, threadinfo=c8aea000 task=c7c2c040)
> > [<c0141495>] zap_pte_range+0x135/0x290
> >...
> > [<c0145f41>] exit_mmap+0x71/0x140
> > [<c01163c4>] mmput+0x24/0x80
> > [<c011a756>] do_exit+0x146/0x370
> >...
>
> It's my BUG_ON(page_mapcount(page) < 0).
>
> We've had about one report per month, over the last six months.
> But this is the first citing "gish"; sometimes it's been "cc1".
>
> I've given it a lot of thought, but I'm still mystified. The last
> report turned out to be attributable to bad memory; but this BUG_ON
> is too persistent and specific to be put down to that in all cases.
>
> One case that's easy to explain: if it was preceded (perhaps hours
> earlier) by a "Bad page state" message and stacktrace, referring to
> the same page (in ecx, edx, ebp in your dump), which showed non-zero
> mapcount, then this is an after-effect of bad_page resetting mapcount.
> And the real problem was probably a double free, which bad_page noted,
> but carried on regardless. Worth checking your logs for, let us know,
> but there have been several reports where that's definitely not so.
>
"EIP: 0060:[<c0147d72>] Not tainted VLI"
^^^^^^^^^^^
Just FYI, that kernel should be tainting on bad_page...
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: kernel BUG at mm/rmap.c:480 in 2.6.10-rc3-bk7
2004-12-14 23:26 ` Hugh Dickins
2004-12-15 0:10 ` Nick Piggin
@ 2004-12-15 0:19 ` Greg KH
2004-12-15 1:11 ` Greg KH
2004-12-15 0:43 ` Andrea Arcangeli
2 siblings, 1 reply; 18+ messages in thread
From: Greg KH @ 2004-12-15 0:19 UTC (permalink / raw)
To: Hugh Dickins; +Cc: Andrew Morton, linux-kernel
On Tue, Dec 14, 2004 at 11:26:48PM +0000, Hugh Dickins wrote:
> One case that's easy to explain: if it was preceded (perhaps hours
> earlier) by a "Bad page state" message and stacktrace, referring to
> the same page (in ecx, edx, ebp in your dump), which showed non-zero
> mapcount, then this is an after-effect of bad_page resetting mapcount.
> And the real problem was probably a double free, which bad_page noted,
> but carried on regardless. Worth checking your logs for, let us know,
> but there have been several reports where that's definitely not so.
Nope, nothing like that in my logs, sorry.
> I presume this was just a one-off? If you can repeat it from time to
> time, I'll try to devise some printk'ing to shed more light.
I'll try to see if I can reproduce it. If so, I'll let you know.
thanks,
greg k-h
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: kernel BUG at mm/rmap.c:480 in 2.6.10-rc3-bk7
2004-12-14 23:26 ` Hugh Dickins
2004-12-15 0:10 ` Nick Piggin
2004-12-15 0:19 ` Greg KH
@ 2004-12-15 0:43 ` Andrea Arcangeli
2 siblings, 0 replies; 18+ messages in thread
From: Andrea Arcangeli @ 2004-12-15 0:43 UTC (permalink / raw)
To: Hugh Dickins; +Cc: Greg KH, Andrew Morton, linux-kernel
On Tue, Dec 14, 2004 at 11:26:48PM +0000, Hugh Dickins wrote:
> On Tue, 14 Dec 2004, Greg KH wrote:
> >
> > So I finally try to get dri working on my laptop and I get the following
> > kernel bug when killing X (the program gish was running at the time):
> >
> > kernel BUG at mm/rmap.c:480!
> > EIP is at page_remove_rmap+0x32/0x40
> > Process gish (pid: 10864, threadinfo=c8aea000 task=c7c2c040)
> > [<c0141495>] zap_pte_range+0x135/0x290
> >...
> > [<c0145f41>] exit_mmap+0x71/0x140
> > [<c01163c4>] mmput+0x24/0x80
> > [<c011a756>] do_exit+0x146/0x370
> >...
>
> It's my BUG_ON(page_mapcount(page) < 0).
>
> We've had about one report per month, over the last six months.
> But this is the first citing "gish"; sometimes it's been "cc1".
>
> I've given it a lot of thought, but I'm still mystified. The last
> report turned out to be attributable to bad memory; but this BUG_ON
> is too persistent and specific to be put down to that in all cases.
The killing X smells like it could be related to drm or other kernel X
drivers. Could you try not to load the drm/agp stuff and see if it goes
away?
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: kernel BUG at mm/rmap.c:480 in 2.6.10-rc3-bk7
2004-12-15 0:19 ` Greg KH
@ 2004-12-15 1:11 ` Greg KH
2004-12-15 17:23 ` Hugh Dickins
0 siblings, 1 reply; 18+ messages in thread
From: Greg KH @ 2004-12-15 1:11 UTC (permalink / raw)
To: Hugh Dickins; +Cc: Andrew Morton, linux-kernel
On Tue, Dec 14, 2004 at 04:19:12PM -0800, Greg KH wrote:
> On Tue, Dec 14, 2004 at 11:26:48PM +0000, Hugh Dickins wrote:
> > One case that's easy to explain: if it was preceded (perhaps hours
> > earlier) by a "Bad page state" message and stacktrace, referring to
> > the same page (in ecx, edx, ebp in your dump), which showed non-zero
> > mapcount, then this is an after-effect of bad_page resetting mapcount.
> > And the real problem was probably a double free, which bad_page noted,
> > but carried on regardless. Worth checking your logs for, let us know,
> > but there have been several reports where that's definitely not so.
>
> Nope, nothing like that in my logs, sorry.
>
> > I presume this was just a one-off? If you can repeat it from time to
> > time, I'll try to devise some printk'ing to shed more light.
>
> I'll try to see if I can reproduce it. If so, I'll let you know.
Yes, I can duplicate it easily now:
- running X with drm and the radeon driver
- start a gish game up in 640x480 mode and start the initial
level.
- as the laptop just can't handle the cpu demands of this
program, everything runs way too slow.
- switch back to the console that I started X up on and hit
ctrl-C.
- X dies, and the kernel oops happens.
And yes, it does only show up when I'm using drm/agp for me, as this is
the only way I've ever seen this error. I can't really even get gish to
start up without drm, but I guess I could try to see if I can do that
later tonight.
Any testing you want me to do?
Oh, and this also happens on 2.6.10-rc3-bk8.
thanks,
greg k-h
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: kernel BUG at mm/rmap.c:480 in 2.6.10-rc3-bk7
2004-12-15 1:11 ` Greg KH
@ 2004-12-15 17:23 ` Hugh Dickins
2004-12-15 17:58 ` Greg KH
0 siblings, 1 reply; 18+ messages in thread
From: Hugh Dickins @ 2004-12-15 17:23 UTC (permalink / raw)
To: Greg KH; +Cc: Andrew Morton, Andrea Arcangeli, linux-kernel
On Tue, 14 Dec 2004, Greg KH wrote:
>
> Yes, I can duplicate it easily now:
> - running X with drm and the radeon driver
> - start a gish game up in 640x480 mode and start the initial
> level.
> - as the laptop just can't handle the cpu demands of this
> program, everything runs way too slow.
> - switch back to the console that I started X up on and hit
> ctrl-C.
> - X dies, and the kernel oops happens.
>
> And yes, it does only show up when I'm using drm/agp for me, as this is
> the only way I've ever seen this error. I can't really even get gish to
> start up without drm, but I guess I could try to see if I can do that
> later tonight.
Great you can duplicate it, useful info, thanks a lot.
I think it very likely that your page_remove_rmap BUGs are caused by
the first idea that occurred to me, months back, which intervening
reports didn't seem to fit with: PageReserved(page) when the page is
mapped into userspace, but !PageReserved(page) when it gets unmapped.
Which would suggest some kind of refcounting bug in drivers/char/drm/,
such that the reserved pages get unreserved and freed before their
last unmap. I've started looking for that, but drivers/char/drm/ is
unfamiliar territory to me, so I'd be glad for someone to beat me to it.
> Any testing you want me to do?
It would be sensible to test out whether that hypothesis fits, so please
rebuild a kernel with the patch below (for testing, on i386, only), and
try out your procedure above. But while running gish, before killing X,
please take a copy of /proc/$(pidof gish)/maps to mail me. Then when
you kill X, there should be a number (perhaps an irritatingly large
number: but because pages have been wrongly freed so perhaps reused,
relying on a single page report seems unwise) of "Bad rmap" messages.
Please mail all those along with gish's maps to me (may well be too
much for lkml), I'll report back whether they confirm or refute the
hypothesis.
> Oh, and this also happens on 2.6.10-rc3-bk8.
I've made the patch against -bk8 but expect it'll be good for either.
There looks to be little change in drivers/char/drm/ since 2.6.9,
so I'd expect the same problem in that too, if not even earlier.
But of course I may prove quite wrong to be placing blame there.
Thanks,
Hugh
--- 2.6.10-rc3-bk8/include/linux/rmap.h 2004-12-05 12:56:10.000000000 +0000
+++ linux/include/linux/rmap.h 2004-12-15 15:54:32.842874344 +0000
@@ -72,7 +72,7 @@ void __anon_vma_link(struct vm_area_stru
*/
void page_add_anon_rmap(struct page *, struct vm_area_struct *, unsigned long);
void page_add_file_rmap(struct page *);
-void page_remove_rmap(struct page *);
+void page_remove_rmap(struct page *, struct vm_area_struct *, unsigned long);
/**
* page_dup_rmap - duplicate pte mapping to a page
--- 2.6.10-rc3-bk8/mm/fremap.c 2004-12-05 12:56:12.000000000 +0000
+++ linux/mm/fremap.c 2004-12-15 15:50:11.464609880 +0000
@@ -37,7 +37,7 @@ static inline void zap_pte(struct mm_str
if (!PageReserved(page)) {
if (pte_dirty(pte))
set_page_dirty(page);
- page_remove_rmap(page);
+ page_remove_rmap(page, vma, addr);
page_cache_release(page);
mm->rss--;
}
--- 2.6.10-rc3-bk8/mm/memory.c 2004-12-05 12:56:12.000000000 +0000
+++ linux/mm/memory.c 2004-12-15 16:03:21.143560432 +0000
@@ -366,6 +366,7 @@ nomem:
}
static void zap_pte_range(struct mmu_gather *tlb,
+ struct vm_area_struct *vma,
pmd_t *pmd, unsigned long address,
unsigned long size, struct zap_details *details)
{
@@ -431,7 +432,7 @@ static void zap_pte_range(struct mmu_gat
else if (pte_young(pte))
mark_page_accessed(page);
tlb->freed++;
- page_remove_rmap(page);
+ page_remove_rmap(page, vma, address+offset);
tlb_remove_page(tlb, page);
continue;
}
@@ -449,6 +450,7 @@ static void zap_pte_range(struct mmu_gat
}
static void zap_pmd_range(struct mmu_gather *tlb,
+ struct vm_area_struct *vma,
pgd_t * dir, unsigned long address,
unsigned long size, struct zap_details *details)
{
@@ -467,7 +469,7 @@ static void zap_pmd_range(struct mmu_gat
if (end > ((address + PGDIR_SIZE) & PGDIR_MASK))
end = ((address + PGDIR_SIZE) & PGDIR_MASK);
do {
- zap_pte_range(tlb, pmd, address, end - address, details);
+ zap_pte_range(tlb, vma, pmd, address, end - address, details);
address = (address + PMD_SIZE) & PMD_MASK;
pmd++;
} while (address && (address < end));
@@ -483,7 +485,7 @@ static void unmap_page_range(struct mmu_
dir = pgd_offset(vma->vm_mm, address);
tlb_start_vma(tlb, vma);
do {
- zap_pmd_range(tlb, dir, address, end - address, details);
+ zap_pmd_range(tlb, vma, dir, address, end - address, details);
address = (address + PGDIR_SIZE) & PGDIR_MASK;
dir++;
} while (address && (address < end));
@@ -1114,7 +1116,7 @@ static int do_wp_page(struct mm_struct *
if (PageReserved(old_page))
++mm->rss;
else
- page_remove_rmap(old_page);
+ page_remove_rmap(old_page, vma, address);
break_cow(vma, new_page, address, page_table);
lru_cache_add_active(new_page);
page_add_anon_rmap(new_page, vma, address);
--- 2.6.10-rc3-bk8/mm/rmap.c 2004-12-05 12:56:12.000000000 +0000
+++ linux/mm/rmap.c 2004-12-15 16:36:06.772739376 +0000
@@ -461,6 +461,10 @@ void page_add_file_rmap(struct page *pag
BUG_ON(PageAnon(page));
if (!pfn_valid(page_to_pfn(page)) || PageReserved(page))
return;
+ if (PageReserved(page)) {
+ set_bit(PG_arch_1, &page->flags);
+ return;
+ }
if (atomic_inc_and_test(&page->_mapcount))
inc_page_state(nr_mapped);
@@ -472,12 +476,22 @@ void page_add_file_rmap(struct page *pag
*
* Caller needs to hold the mm->page_table_lock.
*/
-void page_remove_rmap(struct page *page)
+void page_remove_rmap(struct page *page,
+ struct vm_area_struct *vma, unsigned long address)
{
BUG_ON(PageReserved(page));
+ if (page_mapcount(page) <= 0 || page_count(page) <= 0 ||
+ test_bit(PG_arch_1, &page->flags)) {
+ printk("Bad rmap in %s: page %p flags %lx "
+ "count %d mapcount %d addr %lx vm_flags %lx\n",
+ current->comm, page, (unsigned long)page->flags,
+ page_count(page), page_mapcount(page), address,
+ vma->vm_flags);
+ get_page(page);
+ return;
+ }
if (atomic_add_negative(-1, &page->_mapcount)) {
- BUG_ON(page_mapcount(page) < 0);
/*
* It would be tidy to reset the PageAnon mapping here,
* but that might overwrite a racing page_add_anon_rmap
@@ -593,7 +607,7 @@ static int try_to_unmap_one(struct page
}
mm->rss--;
- page_remove_rmap(page);
+ page_remove_rmap(page, vma, address);
page_cache_release(page);
out_unmap:
@@ -690,7 +704,7 @@ static void try_to_unmap_cluster(unsigne
if (pte_dirty(pteval))
set_page_dirty(page);
- page_remove_rmap(page);
+ page_remove_rmap(page, vma, address);
page_cache_release(page);
mm->rss--;
(*mapcount)--;
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: kernel BUG at mm/rmap.c:480 in 2.6.10-rc3-bk7
2004-12-15 17:23 ` Hugh Dickins
@ 2004-12-15 17:58 ` Greg KH
2004-12-15 18:48 ` Hugh Dickins
2004-12-15 19:03 ` Andrea Arcangeli
0 siblings, 2 replies; 18+ messages in thread
From: Greg KH @ 2004-12-15 17:58 UTC (permalink / raw)
To: Hugh Dickins; +Cc: Andrew Morton, Andrea Arcangeli, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 50994 bytes --]
On Wed, Dec 15, 2004 at 05:23:14PM +0000, Hugh Dickins wrote:
> On Tue, 14 Dec 2004, Greg KH wrote:
>
> Great you can duplicate it, useful info, thanks a lot.
>
> I think it very likely that your page_remove_rmap BUGs are caused by
> the first idea that occurred to me, months back, which intervening
> reports didn't seem to fit with: PageReserved(page) when the page is
> mapped into userspace, but !PageReserved(page) when it gets unmapped.
>
> Which would suggest some kind of refcounting bug in drivers/char/drm/,
> such that the reserved pages get unreserved and freed before their
> last unmap. I've started looking for that, but drivers/char/drm/ is
> unfamiliar territory to me, so I'd be glad for someone to beat me to it.
Yeah, that's some scary code...
> It would be sensible to test out whether that hypothesis fits, so please
> rebuild a kernel with the patch below (for testing, on i386, only), and
> try out your procedure above. But while running gish, before killing X,
> please take a copy of /proc/$(pidof gish)/maps to mail me. Then when
> you kill X, there should be a number (perhaps an irritatingly large
> number: but because pages have been wrongly freed so perhaps reused,
> relying on a single page report seems unwise) of "Bad rmap" messages.
> Please mail all those along with gish's maps to me (may well be too
> much for lkml), I'll report back whether they confirm or refute the
> hypothesis.
Here's the files. gish.map has the map file and I've put the dmesg
output inline below.
If there's anything else I can do to help out, please let me know.
thanks,
greg k-h
CLASS: Unregistering class device. ID = 'vcs7'
kobject_hotplug
fill_kobj_path: path = '/class/vc/vcs7'
class_hotplug - name = vcs7
kobject_hotplug: /sbin/hotplug vc seq=971 HOME=/ PATH=/sbin:/bin:/usr/sbin:/usr/bin ACTION=remove DEVPATH=/class/vc/vcs7 SUBSYSTEM=vc
udev[8649]: removing device node '/dev/vcc/7'
kobject vcs7: cleaning up
device class 'vcs7': release.
CLASS: Unregistering class device. ID = 'vcsa7'
kobject_hotplug
fill_kobj_path: path = '/class/vc/vcsa7'
class_hotplug - name = vcsa7
kobject_hotplug: /sbin/hotplug vc seq=972 HOME=/ PATH=/sbin:/bin:/usr/sbin:/usr/bin ACTION=remove DEVPATH=/class/vc/vcsa7 SUBSYSTEM=vc
udev[8657]: removing device node '/dev/vcc/a7'
kobject vcsa7: cleaning up
device class 'vcsa7': release.
Bad rmap in gish: page c1279380 flags 20000014 count 3 mapcount 0 addr b6913000 vm_flags 800fb
Bad rmap in gish: page c12793a0 flags 20000014 count 2 mapcount 0 addr b6914000 vm_flags 800fb
Bad rmap in gish: page c12793c0 flags 20000014 count 2 mapcount 0 addr b6915000 vm_flags 800fb
Bad rmap in gish: page c12793e0 flags 20000014 count 2 mapcount 0 addr b6916000 vm_flags 800fb
Bad rmap in gish: page c1279400 flags 20000014 count 1 mapcount 0 addr b6917000 vm_flags 800fb
Bad rmap in gish: page c1279420 flags 20000014 count 1 mapcount 0 addr b6918000 vm_flags 800fb
Bad rmap in gish: page c1279440 flags 20000014 count 1 mapcount 0 addr b6919000 vm_flags 800fb
Bad rmap in gish: page c1279460 flags 20000014 count 1 mapcount 0 addr b691a000 vm_flags 800fb
Bad rmap in gish: page c1279480 flags 20000014 count 1 mapcount 0 addr b691b000 vm_flags 800fb
Bad rmap in gish: page c12794a0 flags 20000014 count 1 mapcount 0 addr b691c000 vm_flags 800fb
Bad rmap in gish: page c12794c0 flags 20000014 count 1 mapcount 0 addr b691d000 vm_flags 800fb
Bad rmap in gish: page c12794e0 flags 20000014 count 1 mapcount 0 addr b691e000 vm_flags 800fb
Bad rmap in gish: page c1279500 flags 20000014 count 1 mapcount 0 addr b691f000 vm_flags 800fb
Bad rmap in gish: page c1279520 flags 20000014 count 1 mapcount 0 addr b6920000 vm_flags 800fb
Bad rmap in gish: page c1279540 flags 20000014 count 1 mapcount 0 addr b6921000 vm_flags 800fb
Bad rmap in gish: page c1279560 flags 20000014 count 1 mapcount 0 addr b6922000 vm_flags 800fb
Bad rmap in gish: page c1279580 flags 20000014 count 2 mapcount 0 addr b6923000 vm_flags 800fb
Bad rmap in gish: page c12795a0 flags 20000014 count 2 mapcount 0 addr b6924000 vm_flags 800fb
Bad rmap in gish: page c12795c0 flags 20000014 count 2 mapcount 0 addr b6925000 vm_flags 800fb
Bad rmap in gish: page c12795e0 flags 20000014 count 2 mapcount 0 addr b6926000 vm_flags 800fb
Bad rmap in gish: page c1279600 flags 20000014 count 2 mapcount 0 addr b6927000 vm_flags 800fb
Bad rmap in gish: page c1279620 flags 20000014 count 2 mapcount 0 addr b6928000 vm_flags 800fb
Bad rmap in gish: page c1279640 flags 20000014 count 2 mapcount 0 addr b6929000 vm_flags 800fb
Bad rmap in gish: page c1279660 flags 20000014 count 2 mapcount 0 addr b692a000 vm_flags 800fb
Bad rmap in gish: page c1279680 flags 20000014 count 2 mapcount 0 addr b692b000 vm_flags 800fb
Bad rmap in gish: page c12796a0 flags 20000014 count 2 mapcount 0 addr b692c000 vm_flags 800fb
Bad rmap in gish: page c12796c0 flags 20000014 count 2 mapcount 0 addr b692d000 vm_flags 800fb
Bad rmap in gish: page c12796e0 flags 20000014 count 2 mapcount 0 addr b692e000 vm_flags 800fb
Bad rmap in gish: page c1279700 flags 20000014 count 2 mapcount 0 addr b692f000 vm_flags 800fb
Bad rmap in gish: page c1279720 flags 20000014 count 2 mapcount 0 addr b6930000 vm_flags 800fb
Bad rmap in gish: page c1279740 flags 20000014 count 2 mapcount 0 addr b6931000 vm_flags 800fb
Bad rmap in gish: page c1279760 flags 20000014 count 2 mapcount 0 addr b6932000 vm_flags 800fb
Bad rmap in gish: page c1279780 flags 20000014 count 2 mapcount 0 addr b6933000 vm_flags 800fb
Bad rmap in gish: page c12797a0 flags 20000014 count 2 mapcount 0 addr b6934000 vm_flags 800fb
Bad rmap in gish: page c12797c0 flags 20000014 count 2 mapcount 0 addr b6935000 vm_flags 800fb
Bad rmap in gish: page c12797e0 flags 20000014 count 2 mapcount 0 addr b6936000 vm_flags 800fb
Bad rmap in gish: page c1279800 flags 20000014 count 2 mapcount 0 addr b6937000 vm_flags 800fb
Bad rmap in gish: page c1279820 flags 20000014 count 2 mapcount 0 addr b6938000 vm_flags 800fb
Bad rmap in gish: page c1279840 flags 20000014 count 2 mapcount 0 addr b6939000 vm_flags 800fb
Bad rmap in gish: page c1279860 flags 20000014 count 2 mapcount 0 addr b693a000 vm_flags 800fb
Bad rmap in gish: page c1279880 flags 20000014 count 2 mapcount 0 addr b693b000 vm_flags 800fb
Bad rmap in gish: page c12798a0 flags 20000014 count 2 mapcount 0 addr b693c000 vm_flags 800fb
Bad rmap in gish: page c12798c0 flags 20000014 count 2 mapcount 0 addr b693d000 vm_flags 800fb
Bad rmap in gish: page c12798e0 flags 20000014 count 2 mapcount 0 addr b693e000 vm_flags 800fb
Bad rmap in gish: page c1279900 flags 20000014 count 2 mapcount 0 addr b693f000 vm_flags 800fb
Bad rmap in gish: page c1279920 flags 20000014 count 2 mapcount 0 addr b6940000 vm_flags 800fb
Bad rmap in gish: page c1279940 flags 20000014 count 2 mapcount 0 addr b6941000 vm_flags 800fb
Bad rmap in gish: page c1279960 flags 20000014 count 2 mapcount 0 addr b6942000 vm_flags 800fb
Bad rmap in gish: page c1279980 flags 20000014 count 2 mapcount 0 addr b6943000 vm_flags 800fb
Bad rmap in gish: page c12799a0 flags 20000014 count 2 mapcount 0 addr b6944000 vm_flags 800fb
Bad rmap in gish: page c12799c0 flags 20000014 count 2 mapcount 0 addr b6945000 vm_flags 800fb
Bad rmap in gish: page c12799e0 flags 20000014 count 2 mapcount 0 addr b6946000 vm_flags 800fb
Bad rmap in gish: page c1279a00 flags 20000014 count 2 mapcount 0 addr b6947000 vm_flags 800fb
Bad rmap in gish: page c1279a20 flags 20000014 count 2 mapcount 0 addr b6948000 vm_flags 800fb
Bad rmap in gish: page c1279a40 flags 20000014 count 2 mapcount 0 addr b6949000 vm_flags 800fb
Bad rmap in gish: page c1279a60 flags 20000014 count 2 mapcount 0 addr b694a000 vm_flags 800fb
Bad rmap in gish: page c1279a80 flags 20000014 count 2 mapcount 0 addr b694b000 vm_flags 800fb
Bad rmap in gish: page c1279aa0 flags 20000014 count 2 mapcount 0 addr b694c000 vm_flags 800fb
Bad rmap in gish: page c1279ac0 flags 20000014 count 2 mapcount 0 addr b694d000 vm_flags 800fb
Bad rmap in gish: page c1279ae0 flags 20000014 count 2 mapcount 0 addr b694e000 vm_flags 800fb
Bad rmap in gish: page c1279b00 flags 20000014 count 2 mapcount 0 addr b694f000 vm_flags 800fb
Bad rmap in gish: page c1279b20 flags 20000014 count 2 mapcount 0 addr b6950000 vm_flags 800fb
Bad rmap in gish: page c1279b40 flags 20000014 count 2 mapcount 0 addr b6951000 vm_flags 800fb
Bad rmap in gish: page c1279b60 flags 20000014 count 2 mapcount 0 addr b6952000 vm_flags 800fb
Bad rmap in gish: page c1279b80 flags 20000014 count 2 mapcount 0 addr b6953000 vm_flags 800fb
Bad rmap in gish: page c1279ba0 flags 20000014 count 2 mapcount 0 addr b6954000 vm_flags 800fb
Bad rmap in gish: page c1279bc0 flags 20000014 count 2 mapcount 0 addr b6955000 vm_flags 800fb
Bad rmap in gish: page c1279be0 flags 20000014 count 2 mapcount 0 addr b6956000 vm_flags 800fb
Bad rmap in gish: page c1279c00 flags 20000014 count 2 mapcount 0 addr b6957000 vm_flags 800fb
Bad rmap in gish: page c1279c20 flags 20000014 count 2 mapcount 0 addr b6958000 vm_flags 800fb
Bad rmap in gish: page c1279c40 flags 20000014 count 2 mapcount 0 addr b6959000 vm_flags 800fb
Bad rmap in gish: page c1279c60 flags 20000014 count 2 mapcount 0 addr b695a000 vm_flags 800fb
Bad rmap in gish: page c1279c80 flags 20000014 count 2 mapcount 0 addr b695b000 vm_flags 800fb
Bad rmap in gish: page c1279ca0 flags 20000014 count 2 mapcount 0 addr b695c000 vm_flags 800fb
Bad rmap in gish: page c1279cc0 flags 20000014 count 2 mapcount 0 addr b695d000 vm_flags 800fb
Bad rmap in gish: page c1279ce0 flags 20000014 count 2 mapcount 0 addr b695e000 vm_flags 800fb
Bad rmap in gish: page c1279d00 flags 20000014 count 2 mapcount 0 addr b695f000 vm_flags 800fb
Bad rmap in gish: page c1279d20 flags 20000014 count 2 mapcount 0 addr b6960000 vm_flags 800fb
Bad rmap in gish: page c1279d40 flags 20000014 count 2 mapcount 0 addr b6961000 vm_flags 800fb
Bad rmap in gish: page c1279d60 flags 20000014 count 2 mapcount 0 addr b6962000 vm_flags 800fb
Bad rmap in gish: page c1279d80 flags 20000014 count 2 mapcount 0 addr b6963000 vm_flags 800fb
Bad rmap in gish: page c1279da0 flags 20000014 count 2 mapcount 0 addr b6964000 vm_flags 800fb
Bad rmap in gish: page c1279dc0 flags 20000014 count 2 mapcount 0 addr b6965000 vm_flags 800fb
Bad rmap in gish: page c1279de0 flags 20000014 count 2 mapcount 0 addr b6966000 vm_flags 800fb
Bad rmap in gish: page c1279e00 flags 20000014 count 2 mapcount 0 addr b6967000 vm_flags 800fb
Bad rmap in gish: page c1279e20 flags 20000014 count 2 mapcount 0 addr b6968000 vm_flags 800fb
Bad rmap in gish: page c1279e40 flags 20000014 count 1 mapcount 0 addr b6969000 vm_flags 800fb
Bad rmap in gish: page c1279e60 flags 20000014 count 1 mapcount 0 addr b696a000 vm_flags 800fb
Bad rmap in gish: page c1279e80 flags 20000014 count 1 mapcount 0 addr b696b000 vm_flags 800fb
Bad rmap in gish: page c1279ea0 flags 20000014 count 1 mapcount 0 addr b696c000 vm_flags 800fb
Bad rmap in gish: page c1279ec0 flags 20000014 count 1 mapcount 0 addr b696d000 vm_flags 800fb
Bad rmap in gish: page c1279ee0 flags 20000014 count 1 mapcount 0 addr b696e000 vm_flags 800fb
Bad rmap in gish: page c1279f00 flags 20000014 count 1 mapcount 0 addr b696f000 vm_flags 800fb
Bad rmap in gish: page c1279f20 flags 20000014 count 1 mapcount 0 addr b6970000 vm_flags 800fb
Bad rmap in gish: page c1279f40 flags 20000014 count 1 mapcount 0 addr b6971000 vm_flags 800fb
Bad rmap in gish: page c1279f60 flags 20000014 count 1 mapcount 0 addr b6972000 vm_flags 800fb
Bad rmap in gish: page c1279f80 flags 20000014 count 2 mapcount 0 addr b6973000 vm_flags 800fb
Bad rmap in gish: page c1279fa0 flags 20000014 count 2 mapcount 0 addr b6974000 vm_flags 800fb
Bad rmap in gish: page c1279fc0 flags 20000014 count 2 mapcount 0 addr b6975000 vm_flags 800fb
Bad rmap in gish: page c1279fe0 flags 20000014 count 2 mapcount 0 addr b6976000 vm_flags 800fb
Bad rmap in gish: page c127a000 flags 20000014 count 2 mapcount 0 addr b6977000 vm_flags 800fb
Bad rmap in gish: page c127a020 flags 20000014 count 2 mapcount 0 addr b6978000 vm_flags 800fb
Bad rmap in gish: page c127a040 flags 20000014 count 2 mapcount 0 addr b6979000 vm_flags 800fb
Bad rmap in gish: page c127a060 flags 20000014 count 2 mapcount 0 addr b697a000 vm_flags 800fb
Bad rmap in gish: page c127a080 flags 20000014 count 2 mapcount 0 addr b697b000 vm_flags 800fb
Bad rmap in gish: page c127a0a0 flags 20000014 count 2 mapcount 0 addr b697c000 vm_flags 800fb
Bad rmap in gish: page c127a0c0 flags 20000014 count 2 mapcount 0 addr b697d000 vm_flags 800fb
Bad rmap in gish: page c127a0e0 flags 20000014 count 2 mapcount 0 addr b697e000 vm_flags 800fb
Bad rmap in gish: page c127a100 flags 20000014 count 2 mapcount 0 addr b697f000 vm_flags 800fb
Bad rmap in gish: page c127a120 flags 20000014 count 2 mapcount 0 addr b6980000 vm_flags 800fb
Bad rmap in gish: page c127a140 flags 20000014 count 2 mapcount 0 addr b6981000 vm_flags 800fb
Bad rmap in gish: page c127a160 flags 20000014 count 2 mapcount 0 addr b6982000 vm_flags 800fb
Bad rmap in gish: page c127a180 flags 20000014 count 2 mapcount 0 addr b6983000 vm_flags 800fb
Bad rmap in gish: page c127a1a0 flags 20000014 count 2 mapcount 0 addr b6984000 vm_flags 800fb
Bad rmap in gish: page c127a1c0 flags 20000014 count 2 mapcount 0 addr b6985000 vm_flags 800fb
Bad rmap in gish: page c127a1e0 flags 20000014 count 2 mapcount 0 addr b6986000 vm_flags 800fb
Bad rmap in gish: page c127a200 flags 20000014 count 2 mapcount 0 addr b6987000 vm_flags 800fb
Bad rmap in gish: page c127a220 flags 20000014 count 2 mapcount 0 addr b6988000 vm_flags 800fb
Bad rmap in gish: page c127a240 flags 20000014 count 2 mapcount 0 addr b6989000 vm_flags 800fb
Bad rmap in gish: page c127a260 flags 20000014 count 2 mapcount 0 addr b698a000 vm_flags 800fb
Bad rmap in gish: page c127a280 flags 20000014 count 2 mapcount 0 addr b698b000 vm_flags 800fb
Bad rmap in gish: page c127a2a0 flags 20000014 count 2 mapcount 0 addr b698c000 vm_flags 800fb
Bad rmap in gish: page c127a2c0 flags 20000014 count 2 mapcount 0 addr b698d000 vm_flags 800fb
Bad rmap in gish: page c127a2e0 flags 20000014 count 2 mapcount 0 addr b698e000 vm_flags 800fb
Bad rmap in gish: page c127a300 flags 20000014 count 2 mapcount 0 addr b698f000 vm_flags 800fb
Bad rmap in gish: page c127a320 flags 20000014 count 2 mapcount 0 addr b6990000 vm_flags 800fb
Bad rmap in gish: page c127a340 flags 20000014 count 2 mapcount 0 addr b6991000 vm_flags 800fb
Bad rmap in gish: page c127a360 flags 20000014 count 2 mapcount 0 addr b6992000 vm_flags 800fb
Bad rmap in gish: page c127a380 flags 20000014 count 2 mapcount 0 addr b6993000 vm_flags 800fb
Bad rmap in gish: page c127a3a0 flags 20000014 count 2 mapcount 0 addr b6994000 vm_flags 800fb
Bad rmap in gish: page c127a3c0 flags 20000014 count 2 mapcount 0 addr b6995000 vm_flags 800fb
Bad rmap in gish: page c127a3e0 flags 20000014 count 2 mapcount 0 addr b6996000 vm_flags 800fb
Bad rmap in gish: page c127a400 flags 20000014 count 2 mapcount 0 addr b6997000 vm_flags 800fb
Bad rmap in gish: page c127a420 flags 20000014 count 2 mapcount 0 addr b6998000 vm_flags 800fb
Bad rmap in gish: page c127a440 flags 20000014 count 2 mapcount 0 addr b6999000 vm_flags 800fb
Bad rmap in gish: page c127a460 flags 20000014 count 2 mapcount 0 addr b699a000 vm_flags 800fb
Bad rmap in gish: page c127a480 flags 20000014 count 2 mapcount 0 addr b699b000 vm_flags 800fb
Bad rmap in gish: page c127a4a0 flags 20000014 count 2 mapcount 0 addr b699c000 vm_flags 800fb
Bad rmap in gish: page c127a4c0 flags 20000014 count 2 mapcount 0 addr b699d000 vm_flags 800fb
Bad rmap in gish: page c127a4e0 flags 20000014 count 2 mapcount 0 addr b699e000 vm_flags 800fb
Bad rmap in gish: page c127a500 flags 20000014 count 2 mapcount 0 addr b699f000 vm_flags 800fb
Bad rmap in gish: page c127a520 flags 20000014 count 2 mapcount 0 addr b69a0000 vm_flags 800fb
Bad rmap in gish: page c127a540 flags 20000014 count 2 mapcount 0 addr b69a1000 vm_flags 800fb
Bad rmap in gish: page c127a560 flags 20000014 count 2 mapcount 0 addr b69a2000 vm_flags 800fb
Bad rmap in gish: page c127a580 flags 20000014 count 2 mapcount 0 addr b69a3000 vm_flags 800fb
Bad rmap in gish: page c127a5a0 flags 20000014 count 2 mapcount 0 addr b69a4000 vm_flags 800fb
Bad rmap in gish: page c127a5c0 flags 20000014 count 2 mapcount 0 addr b69a5000 vm_flags 800fb
Bad rmap in gish: page c127a5e0 flags 20000014 count 2 mapcount 0 addr b69a6000 vm_flags 800fb
Bad rmap in gish: page c127a600 flags 20000014 count 2 mapcount 0 addr b69a7000 vm_flags 800fb
Bad rmap in gish: page c127a620 flags 20000014 count 2 mapcount 0 addr b69a8000 vm_flags 800fb
Bad rmap in gish: page c127a640 flags 20000014 count 2 mapcount 0 addr b69a9000 vm_flags 800fb
Bad rmap in gish: page c127a660 flags 20000014 count 2 mapcount 0 addr b69aa000 vm_flags 800fb
Bad rmap in gish: page c127a680 flags 20000014 count 2 mapcount 0 addr b69ab000 vm_flags 800fb
Bad rmap in gish: page c127a6a0 flags 20000014 count 2 mapcount 0 addr b69ac000 vm_flags 800fb
Bad rmap in gish: page c127a6c0 flags 20000014 count 2 mapcount 0 addr b69ad000 vm_flags 800fb
Bad rmap in gish: page c127a6e0 flags 20000014 count 2 mapcount 0 addr b69ae000 vm_flags 800fb
Bad rmap in gish: page c127a700 flags 20000014 count 2 mapcount 0 addr b69af000 vm_flags 800fb
Bad rmap in gish: page c127a720 flags 20000014 count 2 mapcount 0 addr b69b0000 vm_flags 800fb
Bad rmap in gish: page c127a740 flags 20000014 count 2 mapcount 0 addr b69b1000 vm_flags 800fb
Bad rmap in gish: page c127a760 flags 20000014 count 2 mapcount 0 addr b69b2000 vm_flags 800fb
Bad rmap in gish: page c127a780 flags 20000014 count 2 mapcount 0 addr b69b3000 vm_flags 800fb
Bad rmap in gish: page c127a7a0 flags 20000014 count 2 mapcount 0 addr b69b4000 vm_flags 800fb
Bad rmap in gish: page c127a7c0 flags 20000014 count 2 mapcount 0 addr b69b5000 vm_flags 800fb
Bad rmap in gish: page c127a7e0 flags 20000014 count 1 mapcount 0 addr b69b6000 vm_flags 800fb
Bad rmap in gish: page c127a800 flags 20000014 count 1 mapcount 0 addr b69b7000 vm_flags 800fb
Bad rmap in gish: page c127a820 flags 20000014 count 1 mapcount 0 addr b69b8000 vm_flags 800fb
Bad rmap in gish: page c127a840 flags 20000014 count 1 mapcount 0 addr b69b9000 vm_flags 800fb
Bad rmap in gish: page c127a860 flags 20000014 count 1 mapcount 0 addr b69ba000 vm_flags 800fb
Bad rmap in gish: page c127a880 flags 20000014 count 1 mapcount 0 addr b69bb000 vm_flags 800fb
Bad rmap in gish: page c127a8a0 flags 20000014 count 1 mapcount 0 addr b69bc000 vm_flags 800fb
Bad rmap in gish: page c127a8c0 flags 20000014 count 1 mapcount 0 addr b69bd000 vm_flags 800fb
Bad rmap in gish: page c127a8e0 flags 20000014 count 1 mapcount 0 addr b69be000 vm_flags 800fb
Bad rmap in gish: page c127a900 flags 20000014 count 1 mapcount 0 addr b69bf000 vm_flags 800fb
Bad rmap in gish: page c127a920 flags 20000014 count 1 mapcount 0 addr b69c0000 vm_flags 800fb
Bad rmap in gish: page c127a940 flags 20000014 count 1 mapcount 0 addr b69c1000 vm_flags 800fb
Bad rmap in gish: page c127a960 flags 20000014 count 1 mapcount 0 addr b69c2000 vm_flags 800fb
Bad rmap in gish: page c127a980 flags 20000014 count 2 mapcount 0 addr b69c3000 vm_flags 800fb
Bad rmap in gish: page c127a9a0 flags 20000014 count 2 mapcount 0 addr b69c4000 vm_flags 800fb
Bad rmap in gish: page c127a9c0 flags 20000014 count 2 mapcount 0 addr b69c5000 vm_flags 800fb
Bad rmap in gish: page c127a9e0 flags 20000014 count 2 mapcount 0 addr b69c6000 vm_flags 800fb
Bad rmap in gish: page c127aa00 flags 20000014 count 2 mapcount 0 addr b69c7000 vm_flags 800fb
Bad rmap in gish: page c127aa20 flags 20000014 count 2 mapcount 0 addr b69c8000 vm_flags 800fb
Bad rmap in gish: page c127aa40 flags 20000014 count 2 mapcount 0 addr b69c9000 vm_flags 800fb
Bad rmap in gish: page c127aa60 flags 20000014 count 2 mapcount 0 addr b69ca000 vm_flags 800fb
Bad rmap in gish: page c127aa80 flags 20000014 count 2 mapcount 0 addr b69cb000 vm_flags 800fb
Bad rmap in gish: page c127aaa0 flags 20000014 count 2 mapcount 0 addr b69cc000 vm_flags 800fb
Bad rmap in gish: page c127aac0 flags 20000014 count 2 mapcount 0 addr b69cd000 vm_flags 800fb
Bad rmap in gish: page c127aae0 flags 20000014 count 2 mapcount 0 addr b69ce000 vm_flags 800fb
Bad rmap in gish: page c127ab00 flags 20000014 count 2 mapcount 0 addr b69cf000 vm_flags 800fb
Bad rmap in gish: page c127ab20 flags 20000014 count 2 mapcount 0 addr b69d0000 vm_flags 800fb
Bad rmap in gish: page c127ab40 flags 20000014 count 2 mapcount 0 addr b69d1000 vm_flags 800fb
Bad rmap in gish: page c127ab60 flags 20000014 count 2 mapcount 0 addr b69d2000 vm_flags 800fb
Bad rmap in gish: page c127ab80 flags 20000014 count 2 mapcount 0 addr b69d3000 vm_flags 800fb
Bad rmap in gish: page c127aba0 flags 20000014 count 2 mapcount 0 addr b69d4000 vm_flags 800fb
Bad rmap in gish: page c127abc0 flags 20000014 count 2 mapcount 0 addr b69d5000 vm_flags 800fb
Bad rmap in gish: page c127abe0 flags 20000014 count 2 mapcount 0 addr b69d6000 vm_flags 800fb
Bad rmap in gish: page c127ac00 flags 20000014 count 2 mapcount 0 addr b69d7000 vm_flags 800fb
Bad rmap in gish: page c127ac20 flags 20000014 count 2 mapcount 0 addr b69d8000 vm_flags 800fb
Bad rmap in gish: page c127ac40 flags 20000014 count 2 mapcount 0 addr b69d9000 vm_flags 800fb
Bad rmap in gish: page c127ac60 flags 20000014 count 2 mapcount 0 addr b69da000 vm_flags 800fb
Bad rmap in gish: page c127ac80 flags 20000014 count 2 mapcount 0 addr b69db000 vm_flags 800fb
Bad rmap in gish: page c127aca0 flags 20000014 count 2 mapcount 0 addr b69dc000 vm_flags 800fb
Bad rmap in gish: page c127acc0 flags 20000014 count 2 mapcount 0 addr b69dd000 vm_flags 800fb
Bad rmap in gish: page c127ace0 flags 20000014 count 2 mapcount 0 addr b69de000 vm_flags 800fb
Bad rmap in gish: page c127ad00 flags 20000014 count 2 mapcount 0 addr b69df000 vm_flags 800fb
Bad rmap in gish: page c127ad20 flags 20000014 count 2 mapcount 0 addr b69e0000 vm_flags 800fb
Bad rmap in gish: page c127ad40 flags 20000014 count 2 mapcount 0 addr b69e1000 vm_flags 800fb
Bad rmap in gish: page c127ad60 flags 20000014 count 2 mapcount 0 addr b69e2000 vm_flags 800fb
Bad rmap in gish: page c127ad80 flags 20000014 count 2 mapcount 0 addr b69e3000 vm_flags 800fb
Bad rmap in gish: page c127ada0 flags 20000014 count 2 mapcount 0 addr b69e4000 vm_flags 800fb
Bad rmap in gish: page c127adc0 flags 20000014 count 2 mapcount 0 addr b69e5000 vm_flags 800fb
Bad rmap in gish: page c127ade0 flags 20000014 count 2 mapcount 0 addr b69e6000 vm_flags 800fb
Bad rmap in gish: page c127ae00 flags 20000014 count 2 mapcount 0 addr b69e7000 vm_flags 800fb
Bad rmap in gish: page c127ae20 flags 20000014 count 2 mapcount 0 addr b69e8000 vm_flags 800fb
Bad rmap in gish: page c127ae40 flags 20000014 count 2 mapcount 0 addr b69e9000 vm_flags 800fb
Bad rmap in gish: page c127ae60 flags 20000014 count 2 mapcount 0 addr b69ea000 vm_flags 800fb
Bad rmap in gish: page c127ae80 flags 20000014 count 2 mapcount 0 addr b69eb000 vm_flags 800fb
Bad rmap in gish: page c127aea0 flags 20000014 count 2 mapcount 0 addr b69ec000 vm_flags 800fb
Bad rmap in gish: page c127aec0 flags 20000014 count 2 mapcount 0 addr b69ed000 vm_flags 800fb
Bad rmap in gish: page c127aee0 flags 20000014 count 2 mapcount 0 addr b69ee000 vm_flags 800fb
Bad rmap in gish: page c127af00 flags 20000014 count 2 mapcount 0 addr b69ef000 vm_flags 800fb
Bad rmap in gish: page c127af20 flags 20000014 count 2 mapcount 0 addr b69f0000 vm_flags 800fb
Bad rmap in gish: page c127af40 flags 20000014 count 2 mapcount 0 addr b69f1000 vm_flags 800fb
Bad rmap in gish: page c127af60 flags 20000014 count 2 mapcount 0 addr b69f2000 vm_flags 800fb
Bad rmap in gish: page c127af80 flags 20000014 count 2 mapcount 0 addr b69f3000 vm_flags 800fb
Bad rmap in gish: page c127afa0 flags 20000014 count 2 mapcount 0 addr b69f4000 vm_flags 800fb
Bad rmap in gish: page c127afc0 flags 20000014 count 2 mapcount 0 addr b69f5000 vm_flags 800fb
Bad rmap in gish: page c127afe0 flags 20000014 count 2 mapcount 0 addr b69f6000 vm_flags 800fb
Bad rmap in gish: page c127b000 flags 20000014 count 2 mapcount 0 addr b69f7000 vm_flags 800fb
Bad rmap in gish: page c127b020 flags 20000014 count 2 mapcount 0 addr b69f8000 vm_flags 800fb
Bad rmap in gish: page c127b040 flags 20000014 count 2 mapcount 0 addr b69f9000 vm_flags 800fb
Bad rmap in gish: page c127b060 flags 20000014 count 2 mapcount 0 addr b69fa000 vm_flags 800fb
Bad rmap in gish: page c127b080 flags 20000014 count 2 mapcount 0 addr b69fb000 vm_flags 800fb
Bad rmap in gish: page c127b0a0 flags 20000014 count 2 mapcount 0 addr b69fc000 vm_flags 800fb
Bad rmap in gish: page c127b0c0 flags 20000014 count 2 mapcount 0 addr b69fd000 vm_flags 800fb
Bad rmap in gish: page c127b0e0 flags 20000014 count 2 mapcount 0 addr b69fe000 vm_flags 800fb
Bad rmap in gish: page c127b100 flags 20000014 count 2 mapcount 0 addr b69ff000 vm_flags 800fb
Bad rmap in gish: page c127b120 flags 20000014 count 2 mapcount 0 addr b6a00000 vm_flags 800fb
Bad rmap in gish: page c127b140 flags 20000014 count 2 mapcount 0 addr b6a01000 vm_flags 800fb
Bad rmap in gish: page c127b160 flags 20000014 count 2 mapcount 0 addr b6a02000 vm_flags 800fb
Bad rmap in gish: page c127b180 flags 20000014 count 2 mapcount 0 addr b6a03000 vm_flags 800fb
Bad rmap in gish: page c127b1a0 flags 20000014 count 2 mapcount 0 addr b6a04000 vm_flags 800fb
Bad rmap in gish: page c127b1c0 flags 20000014 count 2 mapcount 0 addr b6a05000 vm_flags 800fb
Bad rmap in gish: page c127b1e0 flags 20000014 count 1 mapcount 0 addr b6a06000 vm_flags 800fb
Bad rmap in gish: page c127b200 flags 20000014 count 1 mapcount 0 addr b6a07000 vm_flags 800fb
Bad rmap in gish: page c127b220 flags 20000014 count 1 mapcount 0 addr b6a08000 vm_flags 800fb
Bad rmap in gish: page c127b240 flags 20000014 count 1 mapcount 0 addr b6a09000 vm_flags 800fb
Bad rmap in gish: page c127b260 flags 20000014 count 1 mapcount 0 addr b6a0a000 vm_flags 800fb
Bad rmap in gish: page c127b280 flags 20000014 count 1 mapcount 0 addr b6a0b000 vm_flags 800fb
Bad rmap in gish: page c127b2a0 flags 20000014 count 1 mapcount 0 addr b6a0c000 vm_flags 800fb
Bad rmap in gish: page c127b2c0 flags 20000014 count 1 mapcount 0 addr b6a0d000 vm_flags 800fb
Bad rmap in gish: page c127b2e0 flags 20000014 count 1 mapcount 0 addr b6a0e000 vm_flags 800fb
Bad rmap in gish: page c127b300 flags 20000014 count 1 mapcount 0 addr b6a0f000 vm_flags 800fb
Bad rmap in gish: page c127b320 flags 20000014 count 1 mapcount 0 addr b6a10000 vm_flags 800fb
Bad rmap in gish: page c127b340 flags 20000014 count 1 mapcount 0 addr b6a11000 vm_flags 800fb
Bad rmap in gish: page c127b360 flags 20000014 count 1 mapcount 0 addr b6a12000 vm_flags 800fb
Bad rmap in gish: page c127b380 flags 20000014 count 2 mapcount 0 addr b6a13000 vm_flags 800fb
Bad rmap in gish: page c127b3a0 flags 20000014 count 2 mapcount 0 addr b6a14000 vm_flags 800fb
Bad rmap in gish: page c127b3c0 flags 20000014 count 2 mapcount 0 addr b6a15000 vm_flags 800fb
Bad rmap in gish: page c127b3e0 flags 20000014 count 2 mapcount 0 addr b6a16000 vm_flags 800fb
Bad rmap in gish: page c127b400 flags 20000014 count 2 mapcount 0 addr b6a17000 vm_flags 800fb
Bad rmap in gish: page c127b420 flags 20000014 count 2 mapcount 0 addr b6a18000 vm_flags 800fb
Bad rmap in gish: page c127b440 flags 20000014 count 2 mapcount 0 addr b6a19000 vm_flags 800fb
Bad rmap in gish: page c127b460 flags 20000014 count 2 mapcount 0 addr b6a1a000 vm_flags 800fb
Bad rmap in gish: page c127b480 flags 20000014 count 2 mapcount 0 addr b6a1b000 vm_flags 800fb
Bad rmap in gish: page c127b4a0 flags 20000014 count 2 mapcount 0 addr b6a1c000 vm_flags 800fb
Bad rmap in gish: page c127b4c0 flags 20000014 count 2 mapcount 0 addr b6a1d000 vm_flags 800fb
Bad rmap in gish: page c127b4e0 flags 20000014 count 2 mapcount 0 addr b6a1e000 vm_flags 800fb
Bad rmap in gish: page c127b500 flags 20000014 count 2 mapcount 0 addr b6a1f000 vm_flags 800fb
Bad rmap in gish: page c127b520 flags 20000014 count 2 mapcount 0 addr b6a20000 vm_flags 800fb
Bad rmap in gish: page c127b540 flags 20000014 count 2 mapcount 0 addr b6a21000 vm_flags 800fb
Bad rmap in gish: page c127b560 flags 20000014 count 2 mapcount 0 addr b6a22000 vm_flags 800fb
Bad rmap in gish: page c127b580 flags 20000014 count 2 mapcount 0 addr b6a23000 vm_flags 800fb
Bad rmap in gish: page c127b5a0 flags 20000014 count 2 mapcount 0 addr b6a24000 vm_flags 800fb
Bad rmap in gish: page c127b5c0 flags 20000014 count 2 mapcount 0 addr b6a25000 vm_flags 800fb
Bad rmap in gish: page c127b5e0 flags 20000014 count 2 mapcount 0 addr b6a26000 vm_flags 800fb
Bad rmap in gish: page c127b600 flags 20000014 count 2 mapcount 0 addr b6a27000 vm_flags 800fb
Bad rmap in gish: page c127b620 flags 20000014 count 2 mapcount 0 addr b6a28000 vm_flags 800fb
Bad rmap in gish: page c127b640 flags 20000014 count 2 mapcount 0 addr b6a29000 vm_flags 800fb
Bad rmap in gish: page c127b660 flags 20000014 count 2 mapcount 0 addr b6a2a000 vm_flags 800fb
Bad rmap in gish: page c127b680 flags 20000014 count 2 mapcount 0 addr b6a2b000 vm_flags 800fb
Bad rmap in gish: page c127b6a0 flags 20000014 count 2 mapcount 0 addr b6a2c000 vm_flags 800fb
Bad rmap in gish: page c127b6c0 flags 20000014 count 2 mapcount 0 addr b6a2d000 vm_flags 800fb
Bad rmap in gish: page c127b6e0 flags 20000014 count 2 mapcount 0 addr b6a2e000 vm_flags 800fb
Bad rmap in gish: page c127b700 flags 20000014 count 2 mapcount 0 addr b6a2f000 vm_flags 800fb
Bad rmap in gish: page c127b720 flags 20000014 count 2 mapcount 0 addr b6a30000 vm_flags 800fb
Bad rmap in gish: page c127b740 flags 20000014 count 2 mapcount 0 addr b6a31000 vm_flags 800fb
Bad rmap in gish: page c127b760 flags 20000014 count 2 mapcount 0 addr b6a32000 vm_flags 800fb
Bad rmap in gish: page c127b780 flags 20000014 count 2 mapcount 0 addr b6a33000 vm_flags 800fb
Bad rmap in gish: page c127b7a0 flags 20000014 count 2 mapcount 0 addr b6a34000 vm_flags 800fb
Bad rmap in gish: page c127b7c0 flags 20000014 count 2 mapcount 0 addr b6a35000 vm_flags 800fb
Bad rmap in gish: page c127b7e0 flags 20000014 count 2 mapcount 0 addr b6a36000 vm_flags 800fb
Bad rmap in gish: page c127b800 flags 20000014 count 2 mapcount 0 addr b6a37000 vm_flags 800fb
Bad rmap in gish: page c127b820 flags 20000014 count 2 mapcount 0 addr b6a38000 vm_flags 800fb
Bad rmap in gish: page c127b840 flags 20000014 count 2 mapcount 0 addr b6a39000 vm_flags 800fb
Bad rmap in gish: page c127b860 flags 20000014 count 2 mapcount 0 addr b6a3a000 vm_flags 800fb
Bad rmap in gish: page c127b880 flags 20000014 count 2 mapcount 0 addr b6a3b000 vm_flags 800fb
Bad rmap in gish: page c127b8a0 flags 20000014 count 2 mapcount 0 addr b6a3c000 vm_flags 800fb
Bad rmap in gish: page c127b8c0 flags 20000014 count 2 mapcount 0 addr b6a3d000 vm_flags 800fb
Bad rmap in gish: page c127b8e0 flags 20000014 count 2 mapcount 0 addr b6a3e000 vm_flags 800fb
Bad rmap in gish: page c127b900 flags 20000014 count 2 mapcount 0 addr b6a3f000 vm_flags 800fb
Bad rmap in gish: page c127b920 flags 20000014 count 2 mapcount 0 addr b6a40000 vm_flags 800fb
Bad rmap in gish: page c127b940 flags 20000014 count 2 mapcount 0 addr b6a41000 vm_flags 800fb
Bad rmap in gish: page c127b960 flags 20000014 count 2 mapcount 0 addr b6a42000 vm_flags 800fb
Bad rmap in gish: page c127b980 flags 20000014 count 2 mapcount 0 addr b6a43000 vm_flags 800fb
Bad rmap in gish: page c127b9a0 flags 20000014 count 2 mapcount 0 addr b6a44000 vm_flags 800fb
Bad rmap in gish: page c127b9c0 flags 20000014 count 2 mapcount 0 addr b6a45000 vm_flags 800fb
Bad rmap in gish: page c127b9e0 flags 20000014 count 2 mapcount 0 addr b6a46000 vm_flags 800fb
Bad rmap in gish: page c127ba00 flags 20000014 count 2 mapcount 0 addr b6a47000 vm_flags 800fb
Bad rmap in gish: page c127ba20 flags 20000014 count 2 mapcount 0 addr b6a48000 vm_flags 800fb
Bad rmap in gish: page c127ba40 flags 20000014 count 2 mapcount 0 addr b6a49000 vm_flags 800fb
Bad rmap in gish: page c127ba60 flags 20000014 count 2 mapcount 0 addr b6a4a000 vm_flags 800fb
Bad rmap in gish: page c127ba80 flags 20000014 count 2 mapcount 0 addr b6a4b000 vm_flags 800fb
Bad rmap in gish: page c127baa0 flags 20000014 count 2 mapcount 0 addr b6a4c000 vm_flags 800fb
Bad rmap in gish: page c127bac0 flags 20000014 count 2 mapcount 0 addr b6a4d000 vm_flags 800fb
Bad rmap in gish: page c127bae0 flags 20000014 count 2 mapcount 0 addr b6a4e000 vm_flags 800fb
Bad rmap in gish: page c127bb00 flags 20000014 count 2 mapcount 0 addr b6a4f000 vm_flags 800fb
Bad rmap in gish: page c127bb20 flags 20000014 count 2 mapcount 0 addr b6a50000 vm_flags 800fb
Bad rmap in gish: page c127bb40 flags 20000014 count 2 mapcount 0 addr b6a51000 vm_flags 800fb
Bad rmap in gish: page c127bb60 flags 20000014 count 2 mapcount 0 addr b6a52000 vm_flags 800fb
Bad rmap in gish: page c127bb80 flags 20000014 count 2 mapcount 0 addr b6a53000 vm_flags 800fb
Bad rmap in gish: page c127bba0 flags 20000014 count 2 mapcount 0 addr b6a54000 vm_flags 800fb
Bad rmap in gish: page c127bbc0 flags 20000014 count 2 mapcount 0 addr b6a55000 vm_flags 800fb
Bad rmap in gish: page c127bbe0 flags 20000014 count 2 mapcount 0 addr b6a56000 vm_flags 800fb
Bad rmap in gish: page c127bc00 flags 20000014 count 2 mapcount 0 addr b6a57000 vm_flags 800fb
Bad rmap in gish: page c127bc20 flags 20000014 count 2 mapcount 0 addr b6a58000 vm_flags 800fb
Bad rmap in gish: page c127bc40 flags 20000014 count 2 mapcount 0 addr b6a59000 vm_flags 800fb
Bad rmap in gish: page c127bc60 flags 20000014 count 2 mapcount 0 addr b6a5a000 vm_flags 800fb
Bad rmap in gish: page c127bc80 flags 20000014 count 2 mapcount 0 addr b6a5b000 vm_flags 800fb
Bad rmap in gish: page c127bca0 flags 20000014 count 2 mapcount 0 addr b6a5c000 vm_flags 800fb
Bad rmap in gish: page c127bcc0 flags 20000014 count 2 mapcount 0 addr b6a5d000 vm_flags 800fb
Bad rmap in gish: page c127bce0 flags 20000014 count 2 mapcount 0 addr b6a5e000 vm_flags 800fb
Bad rmap in gish: page c127bd00 flags 20000014 count 2 mapcount 0 addr b6a5f000 vm_flags 800fb
Bad rmap in gish: page c127bd20 flags 20000014 count 2 mapcount 0 addr b6a60000 vm_flags 800fb
Bad rmap in gish: page c127bd40 flags 20000014 count 2 mapcount 0 addr b6a61000 vm_flags 800fb
Bad rmap in gish: page c127bd60 flags 20000014 count 2 mapcount 0 addr b6a62000 vm_flags 800fb
Bad rmap in gish: page c127bd80 flags 20000014 count 2 mapcount 0 addr b6a63000 vm_flags 800fb
Bad rmap in gish: page c127bda0 flags 20000014 count 2 mapcount 0 addr b6a64000 vm_flags 800fb
Bad rmap in gish: page c127bdc0 flags 20000014 count 2 mapcount 0 addr b6a65000 vm_flags 800fb
Bad rmap in gish: page c127bde0 flags 20000014 count 2 mapcount 0 addr b6a66000 vm_flags 800fb
Bad rmap in gish: page c127be00 flags 20000014 count 2 mapcount 0 addr b6a67000 vm_flags 800fb
Bad rmap in gish: page c127be20 flags 20000014 count 2 mapcount 0 addr b6a68000 vm_flags 800fb
Bad rmap in gish: page c127be40 flags 20000014 count 2 mapcount 0 addr b6a69000 vm_flags 800fb
Bad rmap in gish: page c127be60 flags 20000014 count 2 mapcount 0 addr b6a6a000 vm_flags 800fb
Bad rmap in gish: page c127be80 flags 20000014 count 2 mapcount 0 addr b6a6b000 vm_flags 800fb
Bad rmap in gish: page c127bea0 flags 20000014 count 2 mapcount 0 addr b6a6c000 vm_flags 800fb
Bad rmap in gish: page c127bec0 flags 20000014 count 2 mapcount 0 addr b6a6d000 vm_flags 800fb
Bad rmap in gish: page c127bee0 flags 20000014 count 2 mapcount 0 addr b6a6e000 vm_flags 800fb
Bad rmap in gish: page c127bf00 flags 20000014 count 2 mapcount 0 addr b6a6f000 vm_flags 800fb
Bad rmap in gish: page c127bf20 flags 20000014 count 2 mapcount 0 addr b6a70000 vm_flags 800fb
Bad rmap in gish: page c127bf40 flags 20000014 count 2 mapcount 0 addr b6a71000 vm_flags 800fb
Bad rmap in gish: page c127bf60 flags 20000014 count 2 mapcount 0 addr b6a72000 vm_flags 800fb
Bad rmap in gish: page c127bf80 flags 20000014 count 2 mapcount 0 addr b6a73000 vm_flags 800fb
Bad rmap in gish: page c127bfa0 flags 20000014 count 2 mapcount 0 addr b6a74000 vm_flags 800fb
Bad rmap in gish: page c127bfc0 flags 20000014 count 2 mapcount 0 addr b6a75000 vm_flags 800fb
Bad rmap in gish: page c127bfe0 flags 20000014 count 2 mapcount 0 addr b6a76000 vm_flags 800fb
Bad rmap in gish: page c127c000 flags 20000014 count 2 mapcount 0 addr b6a77000 vm_flags 800fb
Bad rmap in gish: page c127c020 flags 20000014 count 2 mapcount 0 addr b6a78000 vm_flags 800fb
Bad rmap in gish: page c127c040 flags 20000014 count 2 mapcount 0 addr b6a79000 vm_flags 800fb
Bad rmap in gish: page c127c060 flags 20000014 count 2 mapcount 0 addr b6a7a000 vm_flags 800fb
Bad rmap in gish: page c127c080 flags 20000014 count 2 mapcount 0 addr b6a7b000 vm_flags 800fb
Bad rmap in gish: page c127c0a0 flags 20000014 count 2 mapcount 0 addr b6a7c000 vm_flags 800fb
Bad rmap in gish: page c127c0c0 flags 20000014 count 2 mapcount 0 addr b6a7d000 vm_flags 800fb
Bad rmap in gish: page c127c0e0 flags 20000014 count 2 mapcount 0 addr b6a7e000 vm_flags 800fb
Bad rmap in gish: page c127c100 flags 20000014 count 2 mapcount 0 addr b6a7f000 vm_flags 800fb
Bad rmap in gish: page c127c120 flags 20000014 count 2 mapcount 0 addr b6a80000 vm_flags 800fb
Bad rmap in gish: page c127c140 flags 20000014 count 2 mapcount 0 addr b6a81000 vm_flags 800fb
Bad rmap in gish: page c127c160 flags 20000014 count 2 mapcount 0 addr b6a82000 vm_flags 800fb
Bad rmap in gish: page c127c180 flags 20000014 count 2 mapcount 0 addr b6a83000 vm_flags 800fb
Bad rmap in gish: page c127c1a0 flags 20000014 count 2 mapcount 0 addr b6a84000 vm_flags 800fb
Bad rmap in gish: page c127c1c0 flags 20000014 count 2 mapcount 0 addr b6a85000 vm_flags 800fb
Bad rmap in gish: page c127c1e0 flags 20000014 count 2 mapcount 0 addr b6a86000 vm_flags 800fb
Bad rmap in gish: page c127c200 flags 20000014 count 2 mapcount 0 addr b6a87000 vm_flags 800fb
Bad rmap in gish: page c127c220 flags 20000014 count 2 mapcount 0 addr b6a88000 vm_flags 800fb
Bad rmap in gish: page c127c240 flags 20000014 count 2 mapcount 0 addr b6a89000 vm_flags 800fb
Bad rmap in gish: page c127c260 flags 20000014 count 2 mapcount 0 addr b6a8a000 vm_flags 800fb
Bad rmap in gish: page c127c280 flags 20000014 count 2 mapcount 0 addr b6a8b000 vm_flags 800fb
Bad rmap in gish: page c127c2a0 flags 20000014 count 2 mapcount 0 addr b6a8c000 vm_flags 800fb
Bad rmap in gish: page c127c2c0 flags 20000014 count 2 mapcount 0 addr b6a8d000 vm_flags 800fb
Bad rmap in gish: page c127c2e0 flags 20000014 count 2 mapcount 0 addr b6a8e000 vm_flags 800fb
Bad rmap in gish: page c127c300 flags 20000014 count 2 mapcount 0 addr b6a8f000 vm_flags 800fb
Bad rmap in gish: page c127c320 flags 20000014 count 2 mapcount 0 addr b6a90000 vm_flags 800fb
Bad rmap in gish: page c127c340 flags 20000014 count 2 mapcount 0 addr b6a91000 vm_flags 800fb
Bad rmap in gish: page c127c360 flags 20000014 count 2 mapcount 0 addr b6a92000 vm_flags 800fb
Bad rmap in gish: page c127c380 flags 20000014 count 2 mapcount 0 addr b6a93000 vm_flags 800fb
Bad rmap in gish: page c127c3a0 flags 20000014 count 2 mapcount 0 addr b6a94000 vm_flags 800fb
Bad rmap in gish: page c127c3c0 flags 20000014 count 2 mapcount 0 addr b6a95000 vm_flags 800fb
Bad rmap in gish: page c127c3e0 flags 20000014 count 2 mapcount 0 addr b6a96000 vm_flags 800fb
Bad rmap in gish: page c127c400 flags 20000014 count 2 mapcount 0 addr b6a97000 vm_flags 800fb
Bad rmap in gish: page c127c420 flags 20000014 count 2 mapcount 0 addr b6a98000 vm_flags 800fb
Bad rmap in gish: page c127c440 flags 20000014 count 2 mapcount 0 addr b6a99000 vm_flags 800fb
Bad rmap in gish: page c127c460 flags 20000014 count 2 mapcount 0 addr b6a9a000 vm_flags 800fb
Bad rmap in gish: page c127c480 flags 20000014 count 2 mapcount 0 addr b6a9b000 vm_flags 800fb
Bad rmap in gish: page c127c4a0 flags 20000014 count 2 mapcount 0 addr b6a9c000 vm_flags 800fb
Bad rmap in gish: page c127c4c0 flags 20000014 count 2 mapcount 0 addr b6a9d000 vm_flags 800fb
Bad rmap in gish: page c127c4e0 flags 20000014 count 2 mapcount 0 addr b6a9e000 vm_flags 800fb
Bad rmap in gish: page c127c500 flags 20000014 count 2 mapcount 0 addr b6a9f000 vm_flags 800fb
Bad rmap in gish: page c127c520 flags 20000014 count 2 mapcount 0 addr b6aa0000 vm_flags 800fb
Bad rmap in gish: page c127c540 flags 20000014 count 2 mapcount 0 addr b6aa1000 vm_flags 800fb
Bad rmap in gish: page c127c560 flags 20000014 count 2 mapcount 0 addr b6aa2000 vm_flags 800fb
Bad rmap in gish: page c127c580 flags 20000014 count 2 mapcount 0 addr b6aa3000 vm_flags 800fb
Bad rmap in gish: page c127c5a0 flags 20000014 count 2 mapcount 0 addr b6aa4000 vm_flags 800fb
Bad rmap in gish: page c127c5c0 flags 20000014 count 2 mapcount 0 addr b6aa5000 vm_flags 800fb
Bad rmap in gish: page c127c5e0 flags 20000014 count 2 mapcount 0 addr b6aa6000 vm_flags 800fb
Bad rmap in gish: page c127c600 flags 20000014 count 2 mapcount 0 addr b6aa7000 vm_flags 800fb
Bad rmap in gish: page c127c620 flags 20000014 count 2 mapcount 0 addr b6aa8000 vm_flags 800fb
Bad rmap in gish: page c127c640 flags 20000014 count 2 mapcount 0 addr b6aa9000 vm_flags 800fb
Bad rmap in gish: page c127c660 flags 20000014 count 2 mapcount 0 addr b6aaa000 vm_flags 800fb
Bad rmap in gish: page c127c680 flags 20000014 count 2 mapcount 0 addr b6aab000 vm_flags 800fb
Bad rmap in gish: page c127c6a0 flags 20000014 count 2 mapcount 0 addr b6aac000 vm_flags 800fb
Bad rmap in gish: page c127c6c0 flags 20000014 count 2 mapcount 0 addr b6aad000 vm_flags 800fb
Bad rmap in gish: page c127c6e0 flags 20000014 count 2 mapcount 0 addr b6aae000 vm_flags 800fb
Bad rmap in gish: page c127c700 flags 20000014 count 2 mapcount 0 addr b6aaf000 vm_flags 800fb
Bad rmap in gish: page c127c720 flags 20000014 count 2 mapcount 0 addr b6ab0000 vm_flags 800fb
Bad rmap in gish: page c127c740 flags 20000014 count 2 mapcount 0 addr b6ab1000 vm_flags 800fb
Bad rmap in gish: page c127c760 flags 20000014 count 2 mapcount 0 addr b6ab2000 vm_flags 800fb
Bad rmap in gish: page c127c780 flags 20000014 count 2 mapcount 0 addr b6ab3000 vm_flags 800fb
Bad rmap in gish: page c127c7a0 flags 20000014 count 2 mapcount 0 addr b6ab4000 vm_flags 800fb
Bad rmap in gish: page c127c7c0 flags 20000014 count 2 mapcount 0 addr b6ab5000 vm_flags 800fb
Bad rmap in gish: page c127c7e0 flags 20000014 count 2 mapcount 0 addr b6ab6000 vm_flags 800fb
Bad rmap in gish: page c127c800 flags 20000014 count 2 mapcount 0 addr b6ab7000 vm_flags 800fb
Bad rmap in gish: page c127c820 flags 20000014 count 2 mapcount 0 addr b6ab8000 vm_flags 800fb
Bad rmap in gish: page c127c840 flags 20000014 count 2 mapcount 0 addr b6ab9000 vm_flags 800fb
Bad rmap in gish: page c127c860 flags 20000014 count 2 mapcount 0 addr b6aba000 vm_flags 800fb
Bad rmap in gish: page c127c880 flags 20000014 count 2 mapcount 0 addr b6abb000 vm_flags 800fb
Bad rmap in gish: page c127c8a0 flags 20000014 count 2 mapcount 0 addr b6abc000 vm_flags 800fb
Bad rmap in gish: page c127c8c0 flags 20000014 count 2 mapcount 0 addr b6abd000 vm_flags 800fb
Bad rmap in gish: page c127c8e0 flags 20000014 count 2 mapcount 0 addr b6abe000 vm_flags 800fb
Bad rmap in gish: page c127c900 flags 20000014 count 2 mapcount 0 addr b6abf000 vm_flags 800fb
Bad rmap in gish: page c127c920 flags 20000014 count 2 mapcount 0 addr b6ac0000 vm_flags 800fb
Bad rmap in gish: page c127c940 flags 20000014 count 2 mapcount 0 addr b6ac1000 vm_flags 800fb
Bad rmap in gish: page c127c960 flags 20000014 count 2 mapcount 0 addr b6ac2000 vm_flags 800fb
Bad rmap in gish: page c127c980 flags 20000014 count 2 mapcount 0 addr b6ac3000 vm_flags 800fb
Bad rmap in gish: page c127c9a0 flags 20000014 count 2 mapcount 0 addr b6ac4000 vm_flags 800fb
Bad rmap in gish: page c127c9c0 flags 20000014 count 2 mapcount 0 addr b6ac5000 vm_flags 800fb
Bad rmap in gish: page c127c9e0 flags 20000014 count 1 mapcount 0 addr b6ac6000 vm_flags 800fb
Bad rmap in gish: page c127ca00 flags 20000014 count 1 mapcount 0 addr b6ac7000 vm_flags 800fb
Bad rmap in gish: page c127ca20 flags 20000014 count 1 mapcount 0 addr b6ac8000 vm_flags 800fb
Bad rmap in gish: page c127ca40 flags 20000014 count 1 mapcount 0 addr b6ac9000 vm_flags 800fb
Bad rmap in gish: page c127ca60 flags 20000014 count 1 mapcount 0 addr b6aca000 vm_flags 800fb
Bad rmap in gish: page c127ca80 flags 20000014 count 1 mapcount 0 addr b6acb000 vm_flags 800fb
Bad rmap in gish: page c127caa0 flags 20000014 count 1 mapcount 0 addr b6acc000 vm_flags 800fb
Bad rmap in gish: page c127cac0 flags 20000014 count 1 mapcount 0 addr b6acd000 vm_flags 800fb
Bad rmap in gish: page c127cae0 flags 20000014 count 1 mapcount 0 addr b6ace000 vm_flags 800fb
Bad rmap in gish: page c127cb00 flags 20000014 count 1 mapcount 0 addr b6acf000 vm_flags 800fb
Bad rmap in gish: page c127cb20 flags 20000014 count 1 mapcount 0 addr b6ad0000 vm_flags 800fb
Bad rmap in gish: page c127cb40 flags 20000014 count 1 mapcount 0 addr b6ad1000 vm_flags 800fb
Bad rmap in gish: page c127cb60 flags 20000014 count 1 mapcount 0 addr b6ad2000 vm_flags 800fb
Bad rmap in gish: page c127cb80 flags 20000014 count 2 mapcount 0 addr b6ad3000 vm_flags 800fb
Bad rmap in gish: page c127cba0 flags 20000014 count 2 mapcount 0 addr b6ad4000 vm_flags 800fb
Bad rmap in gish: page c127cbc0 flags 20000014 count 2 mapcount 0 addr b6ad5000 vm_flags 800fb
Bad rmap in gish: page c127cbe0 flags 20000014 count 2 mapcount 0 addr b6ad6000 vm_flags 800fb
Bad rmap in gish: page c127cc00 flags 20000014 count 2 mapcount 0 addr b6ad7000 vm_flags 800fb
Bad rmap in gish: page c127cc20 flags 20000014 count 2 mapcount 0 addr b6ad8000 vm_flags 800fb
Bad rmap in gish: page c127cc40 flags 20000014 count 2 mapcount 0 addr b6ad9000 vm_flags 800fb
Bad rmap in gish: page c127cc60 flags 20000014 count 2 mapcount 0 addr b6ada000 vm_flags 800fb
Bad rmap in gish: page c127cc80 flags 20000014 count 2 mapcount 0 addr b6adb000 vm_flags 800fb
Bad rmap in gish: page c127cca0 flags 20000014 count 2 mapcount 0 addr b6adc000 vm_flags 800fb
Bad rmap in gish: page c127ccc0 flags 20000014 count 2 mapcount 0 addr b6add000 vm_flags 800fb
Bad rmap in gish: page c127cce0 flags 20000014 count 2 mapcount 0 addr b6ade000 vm_flags 800fb
Bad rmap in gish: page c127cd00 flags 20000014 count 2 mapcount 0 addr b6adf000 vm_flags 800fb
Bad rmap in gish: page c127cd20 flags 20000014 count 2 mapcount 0 addr b6ae0000 vm_flags 800fb
Bad rmap in gish: page c127cd40 flags 20000014 count 2 mapcount 0 addr b6ae1000 vm_flags 800fb
Bad rmap in gish: page c127cd60 flags 20000014 count 2 mapcount 0 addr b6ae2000 vm_flags 800fb
Bad rmap in gish: page c127cd80 flags 20000014 count 2 mapcount 0 addr b6ae3000 vm_flags 800fb
Bad rmap in gish: page c127cda0 flags 20000014 count 2 mapcount 0 addr b6ae4000 vm_flags 800fb
Bad rmap in gish: page c127cdc0 flags 20000014 count 2 mapcount 0 addr b6ae5000 vm_flags 800fb
Bad rmap in gish: page c127cde0 flags 20000014 count 2 mapcount 0 addr b6ae6000 vm_flags 800fb
Bad rmap in gish: page c127ce00 flags 20000014 count 2 mapcount 0 addr b6ae7000 vm_flags 800fb
Bad rmap in gish: page c127ce20 flags 20000014 count 2 mapcount 0 addr b6ae8000 vm_flags 800fb
Bad rmap in gish: page c127ce40 flags 20000014 count 2 mapcount 0 addr b6ae9000 vm_flags 800fb
Bad rmap in gish: page c127ce60 flags 20000014 count 2 mapcount 0 addr b6aea000 vm_flags 800fb
Bad rmap in gish: page c127ce80 flags 20000014 count 2 mapcount 0 addr b6aeb000 vm_flags 800fb
Bad rmap in gish: page c127cea0 flags 20000014 count 2 mapcount 0 addr b6aec000 vm_flags 800fb
Bad rmap in gish: page c127cec0 flags 20000014 count 2 mapcount 0 addr b6aed000 vm_flags 800fb
Bad rmap in gish: page c127cee0 flags 20000014 count 2 mapcount 0 addr b6aee000 vm_flags 800fb
Bad rmap in gish: page c127cf00 flags 20000014 count 2 mapcount 0 addr b6aef000 vm_flags 800fb
Bad rmap in gish: page c127cf20 flags 20000014 count 2 mapcount 0 addr b6af0000 vm_flags 800fb
Bad rmap in gish: page c127cf40 flags 20000014 count 2 mapcount 0 addr b6af1000 vm_flags 800fb
Bad rmap in gish: page c127cf60 flags 20000014 count 2 mapcount 0 addr b6af2000 vm_flags 800fb
Bad rmap in gish: page c127cf80 flags 20000014 count 2 mapcount 0 addr b6af3000 vm_flags 800fb
Bad rmap in gish: page c127cfa0 flags 20000014 count 2 mapcount 0 addr b6af4000 vm_flags 800fb
Bad rmap in gish: page c127cfc0 flags 20000014 count 2 mapcount 0 addr b6af5000 vm_flags 800fb
Bad rmap in gish: page c127cfe0 flags 20000014 count 2 mapcount 0 addr b6af6000 vm_flags 800fb
Bad rmap in gish: page c127d000 flags 20000014 count 2 mapcount 0 addr b6af7000 vm_flags 800fb
Bad rmap in gish: page c127d020 flags 20000014 count 2 mapcount 0 addr b6af8000 vm_flags 800fb
Bad rmap in gish: page c127d040 flags 20000014 count 2 mapcount 0 addr b6af9000 vm_flags 800fb
Bad rmap in gish: page c127d060 flags 20000014 count 2 mapcount 0 addr b6afa000 vm_flags 800fb
Bad rmap in gish: page c127d080 flags 20000014 count 2 mapcount 0 addr b6afb000 vm_flags 800fb
Bad rmap in gish: page c127d0a0 flags 20000014 count 2 mapcount 0 addr b6afc000 vm_flags 800fb
Bad rmap in gish: page c127d0c0 flags 20000014 count 2 mapcount 0 addr b6afd000 vm_flags 800fb
Bad rmap in gish: page c127d0e0 flags 20000014 count 2 mapcount 0 addr b6afe000 vm_flags 800fb
Bad rmap in gish: page c127d100 flags 20000014 count 2 mapcount 0 addr b6aff000 vm_flags 800fb
Bad rmap in gish: page c127d120 flags 20000014 count 2 mapcount 0 addr b6b00000 vm_flags 800fb
Bad rmap in gish: page c127d140 flags 20000014 count 2 mapcount 0 addr b6b01000 vm_flags 800fb
Bad rmap in gish: page c127d160 flags 20000014 count 2 mapcount 0 addr b6b02000 vm_flags 800fb
Bad rmap in gish: page c127d180 flags 20000014 count 2 mapcount 0 addr b6b03000 vm_flags 800fb
Bad rmap in gish: page c127d1a0 flags 20000014 count 2 mapcount 0 addr b6b04000 vm_flags 800fb
Bad rmap in gish: page c127d1c0 flags 20000014 count 2 mapcount 0 addr b6b05000 vm_flags 800fb
Bad rmap in gish: page c127d1e0 flags 20000014 count 2 mapcount 0 addr b6b06000 vm_flags 800fb
Bad rmap in gish: page c127d200 flags 20000014 count 2 mapcount 0 addr b6b07000 vm_flags 800fb
Bad rmap in gish: page c127d220 flags 20000014 count 2 mapcount 0 addr b6b08000 vm_flags 800fb
Bad rmap in gish: page c127d240 flags 20000014 count 2 mapcount 0 addr b6b09000 vm_flags 800fb
Bad rmap in gish: page c127d260 flags 20000014 count 2 mapcount 0 addr b6b0a000 vm_flags 800fb
Bad rmap in gish: page c127d280 flags 20000014 count 2 mapcount 0 addr b6b0b000 vm_flags 800fb
Bad rmap in gish: page c127d2a0 flags 20000014 count 2 mapcount 0 addr b6b0c000 vm_flags 800fb
Bad rmap in gish: page c127d2c0 flags 20000014 count 2 mapcount 0 addr b6b0d000 vm_flags 800fb
Bad rmap in gish: page c127d2e0 flags 20000014 count 2 mapcount 0 addr b6b0e000 vm_flags 800fb
Bad rmap in gish: page c127d300 flags 20000014 count 2 mapcount 0 addr b6b0f000 vm_flags 800fb
Bad rmap in gish: page c127d320 flags 20000014 count 2 mapcount 0 addr b6b10000 vm_flags 800fb
Bad rmap in gish: page c127d340 flags 20000014 count 2 mapcount 0 addr b6b11000 vm_flags 800fb
Bad rmap in gish: page c127d360 flags 20000014 count 2 mapcount 0 addr b6b12000 vm_flags 800fb
[-- Attachment #2: gish.maps --]
[-- Type: text/plain, Size: 6285 bytes --]
08048000-080aa000 r-xp 00000000 03:04 491712 /home/greg/tmp/gishdemo/gish
080aa000-080ac000 rw-p 00062000 03:04 491712 /home/greg/tmp/gishdemo/gish
080ac000-0a255000 rw-p 080ac000 00:00 0
b35a8000-b628a000 rw-p b35a8000 00:00 0
b62b4000-b6433000 rw-p b62b4000 00:00 0
b6433000-b6913000 rw-s d8447000 00:0a 10806 /dev/dri/card0
b6913000-b6b13000 rw-s d8247000 00:0a 10806 /dev/dri/card0
b6b13000-b6b14000 r--s d8246000 00:0a 10806 /dev/dri/card0
b6b14000-b6b94000 r--s e8110000 00:0a 10806 /dev/dri/card0
b6b94000-b6b96000 rw-s d781c000 00:0a 10806 /dev/dri/card0
b6b96000-b7396000 rw-s f0000000 00:0a 10806 /dev/dri/card0
b7396000-b73c2000 r-xp 00000000 03:02 640202 /usr/lib/libexpat.so.0.5.0
b73c2000-b73c4000 rw-p 0002b000 03:02 640202 /usr/lib/libexpat.so.0.5.0
b73d9000-b7598000 r-xp 00000000 03:02 722328 /usr/X11R6/lib/modules/dri/radeon_dri.so
b7598000-b75ad000 rw-p 001be000 03:02 722328 /usr/X11R6/lib/modules/dri/radeon_dri.so
b75ad000-b75ce000 rw-p b75ad000 00:00 0
b75ce000-b75cf000 ---p b75ce000 00:00 0
b75cf000-b77ce000 rwxp b75cf000 00:00 0
b77ce000-b77d5000 r-xp 00000000 03:02 85851 /usr/X11R6/lib/libXrender.so.1.2.2
b77d5000-b77d6000 rw-p 00006000 03:02 85851 /usr/X11R6/lib/libXrender.so.1.2.2
b77d6000-b77df000 r-xp 00000000 03:02 85859 /usr/X11R6/lib/libXcursor.so.1.0.2
b77df000-b77e0000 rw-p 00008000 03:02 85859 /usr/X11R6/lib/libXcursor.so.1.0.2
b77e0000-b77e1000 rw-p b77e0000 00:00 0
b77e1000-b77e9000 r-xp 00000000 03:02 739587 /usr/lib/gcc-lib/i686-pc-linux-gnu/3.4.3/libgcc_s.so.1
b77e9000-b77eb000 rw-p 00007000 03:02 739587 /usr/lib/gcc-lib/i686-pc-linux-gnu/3.4.3/libgcc_s.so.1
b77eb000-b77ec000 rw-p b77eb000 00:00 0
b77ec000-b77f1000 r-xp 00000000 03:02 1046255 /usr/lib/libogg.so.0.5.2
b77f1000-b77f2000 rw-p 00004000 03:02 1046255 /usr/lib/libogg.so.0.5.2
b77f2000-b7837000 r-xp 00000000 03:02 699244 /usr/lib/libsmpeg-0.4.so.0.1.3
b7837000-b7839000 rw-p 00045000 03:02 699244 /usr/lib/libsmpeg-0.4.so.0.1.3
b7839000-b7859000 rw-p b7839000 00:00 0
b7859000-b7886000 r-xp 00000000 03:02 650755 /usr/lib/libaudiofile.so.0.0.2
b7886000-b7889000 rw-p 0002c000 03:02 650755 /usr/lib/libaudiofile.so.0.0.2
b7889000-b7891000 r-xp 00000000 03:02 653398 /usr/lib/libesd.so.0.2.34
b7891000-b7892000 rw-p 00008000 03:02 653398 /usr/lib/libesd.so.0.2.34
b7892000-b791c000 r-xp 00000000 03:02 785105 /usr/lib/libglib-2.0.so.0.400.8
b791c000-b791e000 rw-p 00089000 03:02 785105 /usr/lib/libglib-2.0.so.0.400.8
b791e000-b791f000 rw-p b791e000 00:00 0
b791f000-b7923000 r-xp 00000000 03:02 785125 /usr/lib/libgthread-2.0.so.0.400.8
b7923000-b7925000 rw-p 00003000 03:02 785125 /usr/lib/libgthread-2.0.so.0.400.8
b7925000-b7928000 r-xp 00000000 03:02 785098 /usr/lib/libgmodule-2.0.so.0.400.8
b7928000-b792a000 rw-p 00002000 03:02 785098 /usr/lib/libgmodule-2.0.so.0.400.8
b792a000-b7930000 r-xp 00000000 03:02 959548 /usr/kde/3.3/lib/libartsc.so.0.0.0
b7930000-b7931000 rw-p 00005000 03:02 959548 /usr/kde/3.3/lib/libartsc.so.0.0.0
b7931000-b7936000 r-xp 00000000 03:02 85745 /usr/X11R6/lib/libXxf86vm.so.1.0
b7936000-b7937000 rw-p 00004000 03:02 85745 /usr/X11R6/lib/libXxf86vm.so.1.0
b7937000-b7945000 r-xp 00000000 03:02 212279 /lib/libpthread-0.10.so
b7945000-b7946000 r--p 0000d000 03:02 212279 /lib/libpthread-0.10.so
b7946000-b7947000 rw-p 0000e000 03:02 212279 /lib/libpthread-0.10.so
b7947000-b798a000 rw-p b7947000 00:00 0
b798a000-b79f6000 r-xp 00000000 03:02 576399 /usr/lib/libvga.so.1.9.19
b79f6000-b79fc000 rw-p 0006b000 03:02 576399 /usr/lib/libvga.so.1.9.19
b79fc000-b7a06000 rw-p b79fc000 00:00 0
b7a06000-b7a16000 r-xp 00000000 03:02 85869 /usr/X11R6/lib/libXext.so.6.4
b7a16000-b7a17000 rw-p 00010000 03:02 85869 /usr/X11R6/lib/libXext.so.6.4
b7a17000-b7ae9000 r-xp 00000000 03:02 85717 /usr/X11R6/lib/libX11.so.6.2
b7ae9000-b7aed000 rw-p 000d1000 03:02 85717 /usr/X11R6/lib/libX11.so.6.2
b7aed000-b7bb4000 r-xp 00000000 03:02 212307 /usr/lib/libasound.so.2.0.0
b7bb4000-b7bb8000 rw-p 000c6000 03:02 212307 /usr/lib/libasound.so.2.0.0
b7bb8000-b7bba000 r-xp 00000000 03:02 212196 /lib/libdl-2.3.4.so
b7bba000-b7bbc000 rw-p 00001000 03:02 212196 /lib/libdl-2.3.4.so
b7bbc000-b7c82000 r-xp 00000000 03:02 739547 /usr/lib/gcc-lib/i686-pc-linux-gnu/3.4.3/libstdc++.so.6.0.3
b7c82000-b7c83000 r--p 000c5000 03:02 739547 /usr/lib/gcc-lib/i686-pc-linux-gnu/3.4.3/libstdc++.so.6.0.3
b7c83000-b7c87000 rw-p 000c6000 03:02 739547 /usr/lib/gcc-lib/i686-pc-linux-gnu/3.4.3/libstdc++.so.6.0.3
b7c87000-b7c8e000 rw-p b7c87000 00:00 0
b7c8e000-b7c97000 r-xp 00000000 03:02 653573 /usr/lib/libvorbisfile.so.3.1.0
b7c97000-b7c98000 rw-p 00008000 03:02 653573 /usr/lib/libvorbisfile.so.3.1.0
b7c98000-b7cb9000 r-xp 00000000 03:02 212186 /lib/libm-2.3.4.so
b7cb9000-b7cbb000 rw-p 00020000 03:02 212186 /lib/libm-2.3.4.so
b7cbb000-b7de1000 r-xp 00000000 03:02 212399 /lib/libc-2.3.4.so
b7de1000-b7de2000 ---p 00126000 03:02 212399 /lib/libc-2.3.4.so
b7de2000-b7de3000 r--p 00126000 03:02 212399 /lib/libc-2.3.4.so
b7de3000-b7de6000 rw-p 00127000 03:02 212399 /lib/libc-2.3.4.so
b7de6000-b7de8000 rw-p b7de6000 00:00 0
b7de8000-b7e16000 r-xp 00000000 03:02 655779 /usr/lib/libvorbis.so.0.3.0
b7e16000-b7e25000 rw-p 0002e000 03:02 655779 /usr/lib/libvorbis.so.0.3.0
b7e25000-b7e6c000 r-xp 00000000 03:02 915121 /lib/libopenal.so.0.0.7
b7e6c000-b7e6d000 rw-p 00047000 03:02 915121 /lib/libopenal.so.0.0.7
b7e6d000-b7ec3000 rw-p b7e6d000 00:00 0
b7ec3000-b7f49000 r-xp 00000000 03:02 37387 /usr/lib/opengl/xorg-x11/lib/libGL.so.1.2
b7f49000-b7f4d000 rw-p 00086000 03:02 37387 /usr/lib/opengl/xorg-x11/lib/libGL.so.1.2
b7f4d000-b7f50000 rw-p b7f4d000 00:00 0
b7f50000-b7fba000 r-xp 00000000 03:02 688175 /usr/lib/libSDL-1.2.so.0.7.0
b7fba000-b7fbc000 rw-p 0006a000 03:02 688175 /usr/lib/libSDL-1.2.so.0.7.0
b7fbc000-b7fd5000 rw-p b7fbc000 00:00 0
b7fea000-b8000000 r-xp 00000000 03:02 212182 /lib/ld-2.3.4.so
b8000000-b8002000 rw-p 00015000 03:02 212182 /lib/ld-2.3.4.so
bffd5000-c0000000 rwxp bffd5000 00:00 0
ffffe000-fffff000 ---p 00000000 00:00 0
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: kernel BUG at mm/rmap.c:480 in 2.6.10-rc3-bk7
2004-12-15 17:58 ` Greg KH
@ 2004-12-15 18:48 ` Hugh Dickins
2004-12-15 22:22 ` Hugh Dickins
2004-12-15 22:33 ` Dave Airlie
2004-12-15 19:03 ` Andrea Arcangeli
1 sibling, 2 replies; 18+ messages in thread
From: Hugh Dickins @ 2004-12-15 18:48 UTC (permalink / raw)
To: Greg KH; +Cc: Andrew Morton, Andrea Arcangeli, linux-kernel
On Wed, 15 Dec 2004, Greg KH wrote:
> On Wed, Dec 15, 2004 at 05:23:14PM +0000, Hugh Dickins wrote:
> >
> > I think it very likely that your page_remove_rmap BUGs are caused by
> > the first idea that occurred to me, months back, which intervening
> > reports didn't seem to fit with: PageReserved(page) when the page is
> > mapped into userspace, but !PageReserved(page) when it gets unmapped.
> >
> > Which would suggest some kind of refcounting bug in drivers/char/drm/,
> > such that the reserved pages get unreserved and freed before their
> > last unmap. I've started looking for that, but drivers/char/drm/ is
> > unfamiliar territory to me, so I'd be glad for someone to beat me to it.
...
> > I'll report back whether they confirm or refute the hypothesis.
>
> Here's the files. gish.map has the map file and I've put the dmesg
> output inline below.
Thanks a lot. They seem to refute the PageReserved -> !PageReserved
theory. It sure looks like a problem in this area (gish.maps shows
this vma maps /dev/dri/card0), but not quite what I was expecting.
> If there's anything else I can do to help out, please let me know.
Thanks: I'm sure there will be later, but right now I need to
look further around that source before proposing anything more.
> Bad rmap in gish: page c1279380 flags 20000014 count 3 mapcount 0 addr b6913000 vm_flags 800fb
....
> Bad rmap in gish: page c127d360 flags 20000014 count 2 mapcount 0 addr b6b12000 vm_flags 800fb
And in gish.maps:
> b6b13000-b6b14000 r--s d8246000 00:0a 10806 /dev/dri/card0
Hugh
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: kernel BUG at mm/rmap.c:480 in 2.6.10-rc3-bk7
2004-12-15 17:58 ` Greg KH
2004-12-15 18:48 ` Hugh Dickins
@ 2004-12-15 19:03 ` Andrea Arcangeli
2004-12-15 22:48 ` Andrea Arcangeli
1 sibling, 1 reply; 18+ messages in thread
From: Andrea Arcangeli @ 2004-12-15 19:03 UTC (permalink / raw)
To: Greg KH; +Cc: Hugh Dickins, Andrew Morton, linux-kernel
This was my original code in GA/SP1:
#ifndef CONFIG_DISCONTIGMEM
/* this check is unreliable with numa enabled */
BUG_ON(!pfn_valid(page_to_pfn(new_page)));
#endif
pageable = !PageReserved(new_page);
as = !!new_page->mapping;
BUG_ON(!pageable && as);
pageable &= as;
/* ->nopage cannot return swapcache */
BUG_ON(PageSwapCache(new_page));
/* ->nopage cannot return anonymous pages */
BUG_ON(PageAnon(new_page));
[..]
/* a reserved vma cannot have pageable pages in it */
BUG_ON(vma->vm_flags & VM_RESERVED);
[..]
if (likely(pageable))
page_add_rmap(new_page, vma, address, anon);
Hugh rejected all the above robustness bugcheck for no apparent good
reason.
In the process he seems that Hugh introduced a bug that didn't exist in
my original code, can you try this?
From: Andrea Arcangeli <andrea@suse.de>
Subject: don't track pages not belonging to a mapping out of ->nopage
Signed-off-by: Andrea Arcangeli <andrea@suse.de>
--- sl9.2/mm/memory.c.~1~ 2004-12-15 14:20:54.000000000 +0100
+++ sl9.2/mm/memory.c 2004-12-15 19:59:59.806978776 +0100
@@ -427,7 +427,8 @@ static void zap_pte_range(struct mmu_gat
if (pte_young(pte) && !PageAnon(page))
mark_page_accessed(page);
tlb->freed++;
- page_remove_rmap(page);
+ if (page->mapping)
+ page_remove_rmap(page);
tlb_remove_page(tlb, page);
continue;
}
@@ -1495,7 +1496,7 @@ do_no_page(struct mm_struct *mm, struct
pte_t entry;
int sequence = 0;
int ret = VM_FAULT_MINOR;
- int anon = 0;
+ int anon, pageable, as;
if (!vma->vm_ops || !vma->vm_ops->nopage)
return do_anonymous_page(mm, vma, page_table,
@@ -1517,9 +1518,26 @@ retry:
if (new_page == NOPAGE_OOM)
return VM_FAULT_OOM;
+#ifndef CONFIG_DISCONTIGMEM
+ /* this check is unreliable with numa enabled */
+ BUG_ON(!pfn_valid(page_to_pfn(new_page)));
+#endif
+ pageable = !PageReserved(new_page);
+ as = !!new_page->mapping;
+
+ BUG_ON(!pageable && as);
+
+ pageable &= as;
+
+ /* ->nopage cannot return swapcache */
+ BUG_ON(PageSwapCache(new_page));
+ /* ->nopage cannot return anonymous pages */
+ BUG_ON(PageAnon(new_page));
+
/*
* Should we do an early C-O-W break?
*/
+ anon = 0;
if (write_access && !(vma->vm_flags & VM_SHARED)) {
struct page *page;
@@ -1532,6 +1550,10 @@ retry:
page_cache_release(new_page);
new_page = page;
anon = 1;
+ pageable = 1; /* not really necessary but cleaner */
+
+ /* a reserved vma cannot have pageable pages in it */
+ BUG_ON(vma->vm_flags & VM_RESERVED);
}
spin_lock(&mm->page_table_lock);
@@ -1571,7 +1593,7 @@ retry:
if (anon) {
lru_cache_add_active(new_page);
page_add_anon_rmap(new_page, vma, address);
- } else
+ } else if (pageable)
page_add_file_rmap(new_page);
pte_unmap(page_table);
} else {
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: kernel BUG at mm/rmap.c:480 in 2.6.10-rc3-bk7
2004-12-15 18:48 ` Hugh Dickins
@ 2004-12-15 22:22 ` Hugh Dickins
2004-12-15 22:33 ` Dave Airlie
1 sibling, 0 replies; 18+ messages in thread
From: Hugh Dickins @ 2004-12-15 22:22 UTC (permalink / raw)
To: Greg KH; +Cc: Andrew Morton, Andrea Arcangeli, Dave Airlie, linux-kernel
On Wed, 15 Dec 2004, Hugh Dickins wrote:
> On Wed, 15 Dec 2004, Greg KH wrote:
> > On Wed, Dec 15, 2004 at 05:23:14PM +0000, Hugh Dickins wrote:
> > >
> > > I think it very likely that your page_remove_rmap BUGs are caused by
> > > the first idea that occurred to me, months back, which intervening
> > > reports didn't seem to fit with: PageReserved(page) when the page is
> > > mapped into userspace, but !PageReserved(page) when it gets unmapped.
> > >
> > > Which would suggest some kind of refcounting bug in drivers/char/drm/,
> > > such that the reserved pages get unreserved and freed before their
> > > last unmap. I've started looking for that, but drivers/char/drm/ is
> > > unfamiliar territory to me, so I'd be glad for someone to beat me to it.
> ...
> > > I'll report back whether they confirm or refute the hypothesis.
> >
> > Here's the files. gish.map has the map file and I've put the dmesg
> > output inline below.
>
> Thanks a lot. They seem to refute the PageReserved -> !PageReserved
> theory. It sure looks like a problem in this area (gish.maps shows
> this vma maps /dev/dri/card0), but not quite what I was expecting.
>
> > If there's anything else I can do to help out, please let me know.
>
> Thanks: I'm sure there will be later, but right now I need to
> look further around that source before proposing anything more.
>
> > Bad rmap in gish: page c1279380 flags 20000014 count 3 mapcount 0 addr b6913000 vm_flags 800fb
> ....
> > Bad rmap in gish: page c127d360 flags 20000014 count 2 mapcount 0 addr b6b12000 vm_flags 800fb
>
> And in gish.maps:
> > b6913000-b6b13000 rw-s d8247000 00:0a 10806 /dev/dri/card0
I've surreptitiously corrected that last line, I picked out the wrong one
in the mail I'm quoting: now corrected to the line covering those pages
which are page_remove_rmap'ed without corresponding page_add_file_rmap.
It's worth noting, by the way, that the vm_flags include VM_RESERVED
but not VM_IO: VM_IO would be set if it had gone through remap_pfn_range,
but this is one of the DRM(vm*nopage) vmas.
I've spent the last few hours looking in drivers/char/drm/ but I've
not found any explanation, I'm just as baffled as I've been for months.
Sorry, Greg, I'm holding up progress on this, I think someone else
needs to take over. I've copied Dave Airlie, as someone well versed
in the current state of DRM. Clearly it's implicated, but that's not
to say it's guilty.
I hope Dave, or someone else, can work this out;
but I'm giving up for the day.
Hugh
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: kernel BUG at mm/rmap.c:480 in 2.6.10-rc3-bk7
2004-12-15 18:48 ` Hugh Dickins
2004-12-15 22:22 ` Hugh Dickins
@ 2004-12-15 22:33 ` Dave Airlie
2004-12-15 23:19 ` Greg KH
1 sibling, 1 reply; 18+ messages in thread
From: Dave Airlie @ 2004-12-15 22:33 UTC (permalink / raw)
To: Hugh Dickins; +Cc: Greg KH, Andrew Morton, Andrea Arcangeli, linux-kernel
> > > Which would suggest some kind of refcounting bug in drivers/char/drm/,
> > > such that the reserved pages get unreserved and freed before their
> > > last unmap. I've started looking for that, but drivers/char/drm/ is
> > > unfamiliar territory to me, so I'd be glad for someone to beat me to it.
> ...
What's the chip? Radeon IGP by any chance, as these are shared memory
chips I wonder have we missed something in the drm... also what X
release....
Nothing obvious is jumping out at me from the code that is in that
tree, it was with -mm I'd wonder but with stock kernel there is
nothing that should have changed greatly...
Dave.
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: kernel BUG at mm/rmap.c:480 in 2.6.10-rc3-bk7
2004-12-15 19:03 ` Andrea Arcangeli
@ 2004-12-15 22:48 ` Andrea Arcangeli
2004-12-15 23:41 ` Greg KH
0 siblings, 1 reply; 18+ messages in thread
From: Andrea Arcangeli @ 2004-12-15 22:48 UTC (permalink / raw)
To: Greg KH; +Cc: Hugh Dickins, Andrew Morton, linux-kernel
On Wed, Dec 15, 2004 at 08:03:43PM +0100, Andrea Arcangeli wrote:
> + if (page->mapping)
> + page_remove_rmap(page);
This had to be page_mapping, since I believe the page->mapping can go
away with the truncate while the page is still being mapped.
The rule is that if a page must not be accounted it will never be
accounted and page_mapping will be always 0. If it has been accounted
previously, then it must be unaccounted too. This worked fine so far.
Plus I noticed other goodness that got dropped in the same area from my
original 2.6.5 patches, and I resurrected those too in sync with SP1
(I'm talking about the fork path).
So here an updated patch, please give this one a spin.
From: Andrea Arcangeli <andrea@suse.de>
Subject: don't track pages not belonging to a mapping out of ->nopage
Signed-off-by: Andrea Arcangeli <andrea@suse.de>
--- sl9.2/mm/memory.c.~1~ 2004-12-15 14:20:54.000000000 +0100
+++ sl9.2/mm/memory.c 2004-12-15 23:20:05.353858232 +0100
@@ -327,7 +327,17 @@ skip_copy_pte_range:
get_page(page);
dst->rss++;
set_pte(dst_pte, pte);
- page_dup_rmap(page);
+ if (likely(!(vma->vm_flags & VM_RESERVED))) {
+ /*
+ * Device driver pages must not be
+ * tracked by the VM for unmapping.
+ */
+ if (likely(page_mapped(page) && page->mapping))
+ page_dup_rmap(page);
+ } else {
+ BUG_ON(page_mapped(page));
+ BUG_ON(page->mapping);
+ }
cont_copy_pte_range_noset:
address += PAGE_SIZE;
if (address >= end) {
@@ -427,7 +437,8 @@ static void zap_pte_range(struct mmu_gat
if (pte_young(pte) && !PageAnon(page))
mark_page_accessed(page);
tlb->freed++;
- page_remove_rmap(page);
+ if (page_mapped(page))
+ page_remove_rmap(page);
tlb_remove_page(tlb, page);
continue;
}
@@ -1495,7 +1506,7 @@ do_no_page(struct mm_struct *mm, struct
pte_t entry;
int sequence = 0;
int ret = VM_FAULT_MINOR;
- int anon = 0;
+ int anon, pageable, as;
if (!vma->vm_ops || !vma->vm_ops->nopage)
return do_anonymous_page(mm, vma, page_table,
@@ -1517,9 +1528,26 @@ retry:
if (new_page == NOPAGE_OOM)
return VM_FAULT_OOM;
+#ifndef CONFIG_DISCONTIGMEM
+ /* this check is unreliable with numa enabled */
+ BUG_ON(!pfn_valid(page_to_pfn(new_page)));
+#endif
+ pageable = !PageReserved(new_page);
+ as = !!new_page->mapping;
+
+ BUG_ON(!pageable && as);
+
+ pageable &= as;
+
+ /* ->nopage cannot return swapcache */
+ BUG_ON(PageSwapCache(new_page));
+ /* ->nopage cannot return anonymous pages */
+ BUG_ON(PageAnon(new_page));
+
/*
* Should we do an early C-O-W break?
*/
+ anon = 0;
if (write_access && !(vma->vm_flags & VM_SHARED)) {
struct page *page;
@@ -1532,6 +1560,10 @@ retry:
page_cache_release(new_page);
new_page = page;
anon = 1;
+ pageable = 1; /* not really necessary but cleaner */
+
+ /* a reserved vma cannot have pageable pages in it */
+ BUG_ON(vma->vm_flags & VM_RESERVED);
}
spin_lock(&mm->page_table_lock);
@@ -1571,7 +1603,7 @@ retry:
if (anon) {
lru_cache_add_active(new_page);
page_add_anon_rmap(new_page, vma, address);
- } else
+ } else if (pageable)
page_add_file_rmap(new_page);
pte_unmap(page_table);
} else {
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: kernel BUG at mm/rmap.c:480 in 2.6.10-rc3-bk7
2004-12-15 22:33 ` Dave Airlie
@ 2004-12-15 23:19 ` Greg KH
0 siblings, 0 replies; 18+ messages in thread
From: Greg KH @ 2004-12-15 23:19 UTC (permalink / raw)
To: Dave Airlie; +Cc: Hugh Dickins, Andrew Morton, Andrea Arcangeli, linux-kernel
On Thu, Dec 16, 2004 at 09:33:46AM +1100, Dave Airlie wrote:
> > > > Which would suggest some kind of refcounting bug in drivers/char/drm/,
> > > > such that the reserved pages get unreserved and freed before their
> > > > last unmap. I've started looking for that, but drivers/char/drm/ is
> > > > unfamiliar territory to me, so I'd be glad for someone to beat me to it.
> > ...
>
> What's the chip?
lspci gives me:
ATI Technologies Inc Radeon Mobility M6 LY
> Radeon IGP by any chance, as these are shared memory
> chips I wonder have we missed something in the drm...
> also what X release....
My /var/log/Xorg.0.log says:
X Window System Version 6.8.0
Release Date: 8 September 2004
X Protocol Version 11, Revision 0, Release 6.8
Build Operating System: Linux 2.6.10-rc2 i686 [ELF]
Current Operating System: Linux echidna 2.6.10-rc3-bk8 #213 Wed Dec 15 09:28:14 PST 2004 i686
Build Date: 17 November 2004
thanks,
greg k-h
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: kernel BUG at mm/rmap.c:480 in 2.6.10-rc3-bk7
2004-12-15 22:48 ` Andrea Arcangeli
@ 2004-12-15 23:41 ` Greg KH
2004-12-16 5:18 ` Hugh Dickins
0 siblings, 1 reply; 18+ messages in thread
From: Greg KH @ 2004-12-15 23:41 UTC (permalink / raw)
To: Andrea Arcangeli; +Cc: Hugh Dickins, Andrew Morton, linux-kernel
On Wed, Dec 15, 2004 at 11:48:26PM +0100, Andrea Arcangeli wrote:
> On Wed, Dec 15, 2004 at 08:03:43PM +0100, Andrea Arcangeli wrote:
> > + if (page->mapping)
> > + page_remove_rmap(page);
>
> This had to be page_mapping, since I believe the page->mapping can go
> away with the truncate while the page is still being mapped.
>
> The rule is that if a page must not be accounted it will never be
> accounted and page_mapping will be always 0. If it has been accounted
> previously, then it must be unaccounted too. This worked fine so far.
>
> Plus I noticed other goodness that got dropped in the same area from my
> original 2.6.5 patches, and I resurrected those too in sync with SP1
> (I'm talking about the fork path).
>
> So here an updated patch, please give this one a spin.
No oops with this patch or odd messages in the syslog! It works fine
for me, thanks a lot.
I'll let the mm developers battle it out to determine if this is a good
fix or not :)
thanks,
greg k-h
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: kernel BUG at mm/rmap.c:480 in 2.6.10-rc3-bk7
2004-12-15 23:41 ` Greg KH
@ 2004-12-16 5:18 ` Hugh Dickins
2004-12-16 14:28 ` Andrea Arcangeli
0 siblings, 1 reply; 18+ messages in thread
From: Hugh Dickins @ 2004-12-16 5:18 UTC (permalink / raw)
To: Greg KH; +Cc: Andrea Arcangeli, Andrew Morton, Dave Airlie, linux-kernel
On Wed, 15 Dec 2004, Greg KH wrote:
> On Wed, Dec 15, 2004 at 11:48:26PM +0100, Andrea Arcangeli wrote:
> > On Wed, Dec 15, 2004 at 08:03:43PM +0100, Andrea Arcangeli wrote:
> > > + if (page->mapping)
> > > + page_remove_rmap(page);
> >
> > This had to be page_mapping, since I believe the page->mapping can go
> > away with the truncate while the page is still being mapped.
Actually, the patch tests page_mapped(page) not page_mapping(page).
And is correct (though weak) to do so, in the context of Andrea's
other changes (which I intentionally omitted when merging anon_vma,
yes - but let's concentrate on Greg's crash for now, and leave the
flames about that merge until dessert).
I'm afraid it is trivial that that hunk alone will avoid the problem,
just as simply removing the page_remove_rmap's BUG_ON would. But
neither sheds any light on what is going on here.
Something is happening that we don't expect. I say "we" - or do you
understand it, Andrea? We need to understand it before deciding how
to handle it, perhaps at the mm end or perhaps at the DRM end.
> No oops with this patch or odd messages in the syslog! It works fine
> for me, thanks a lot.
>
> I'll let the mm developers battle it out to determine if this is a good
> fix or not :)
Bug avoidance rather than fix, I'm afraid. Once we understand what's
going on, such avoidance may be the right course of action; but not yet.
Hugh
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: kernel BUG at mm/rmap.c:480 in 2.6.10-rc3-bk7
2004-12-16 5:18 ` Hugh Dickins
@ 2004-12-16 14:28 ` Andrea Arcangeli
2004-12-16 17:03 ` Hugh Dickins
0 siblings, 1 reply; 18+ messages in thread
From: Andrea Arcangeli @ 2004-12-16 14:28 UTC (permalink / raw)
To: Hugh Dickins; +Cc: Greg KH, Andrew Morton, Dave Airlie, linux-kernel
On Thu, Dec 16, 2004 at 05:18:59AM +0000, Hugh Dickins wrote:
> going on, such avoidance may be the right course of action; but not yet.
Yes, the real reason of my changes are quite unrelated to this bug: i.e.
we to keep mapcount zero for all pages with page->mapping = NULL so they
don't even enter objrmap.c, and to enforce other nice bits like that
page-reserved must have page->mapping = NULL and other VM_RESERVED
related enforcements. It wasn't meant to hide bugs and infact we should
remove anything that that hides real bugs if my changes are truly hiding
them. I still don't excude they're a real fix though, the fact I can't
tell the exact reason why they help doesn't mean they're not fixing the
real bug (there's quite some code in objrmap.c that definitely should
not be involved with non-pageable pages, and my patch enforces this,
unlike mainline).
Infact if a page becomes suddenly unreserved, shouldn't the accounting
break anyways at the page->count level? The page would be freed twice
instead of once.
I wonder if the sg_cleanup explains why some mapped reserved page
suddenly become unreserved. Can you track if the DRM_IOCTL_SG_FREE is
being called in a mapped vma? I guess you could start by enabling
DRM(flags) in drm_init.h.
#if 0
int DRM(flags) = DRM_FLAG_DEBUG;
#else
int DRM(flags) = 0;
#endif
(set to 1 and then it should print something)
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: kernel BUG at mm/rmap.c:480 in 2.6.10-rc3-bk7
2004-12-16 14:28 ` Andrea Arcangeli
@ 2004-12-16 17:03 ` Hugh Dickins
0 siblings, 0 replies; 18+ messages in thread
From: Hugh Dickins @ 2004-12-16 17:03 UTC (permalink / raw)
To: Andrea Arcangeli; +Cc: Greg KH, Andrew Morton, Dave Airlie, linux-kernel
On Thu, 16 Dec 2004, Andrea Arcangeli wrote:
> them. I still don't excude they're a real fix though, the fact I can't
> tell the exact reason why they help doesn't mean they're not fixing the
> real bug
They avoid the bug because zap_pte_range only calls page_remove_rmap
if page_mapped(page): that's pretty much equivalent to saying "only
call page_remove_rmap if we won't hit its BUG_ON".
Though the likelihood is that the pages were found not pageable in
your patch's do_no_page (either PageReserved or !page->mapping or
both), so had page_mapcount 0 throughout, and zap_pte_range
was therefore quite right to be skipping their page_remove_rmap.
> Infact if a page becomes suddenly unreserved, shouldn't the accounting
> break anyways at the page->count level? The page would be freed twice
> instead of once.
There's very much a danger of that, and I'd been expecting Greg's
printks to show page_count 0; but in fact the page_counts were 3 or
2 or 1, none 0. Might have fallen prematurely to 0 and below later,
I suppose (but my patch included a get_page to suppress the boring
clutter of stack backtraces which would follow in that case).
Depends on the sequence of gets, sets, clears, puts.
> I wonder if the sg_cleanup explains why some mapped reserved page
> suddenly become unreserved. Can you track if the DRM_IOCTL_SG_FREE is
> being called in a mapped vma? I guess you could start by enabling
> DRM(flags) in drm_init.h.
>
> #if 0
> int DRM(flags) = DRM_FLAG_DEBUG;
> #else
> int DRM(flags) = 0;
> #endif
>
> (set to 1 and then it should print something)
Very good suggestions, DRM_IOCTL_SG_FREE does look dangerous (unreserving
and freeing pages without regard to whether still in use). Perhaps it's
not the only one, I haven't had time to recheck and must dash shortly.
But yesterday I claimed Greg's debug output showed it wasn't the
PageReserved -> !PageReserved issue I was expecting. Turns out I had
a stupid stupid bug in my patch: I forget to delete the PageReserved
return from page_add_file_rmap before setting its PG_arch_1 shadow.
So of course no PG_arch_1 in the output, that patch of little value,
and my conclusion based on no evidence. So today I'm again suspecting
it is that the PageReserved is cleared too early (and therefore page
likely to be freed to early).
Fixed (I hope!) patch below: Greg, please remove Andrea's patch (not
because we have our little disagreement about it, but because it will
prevent printing out the info I need), and please remove my patch of
yesterday, applying the patch below instead; then rebuild and redo
yesterday's test - sorry! Can do that along with the DRM_FLAG_DEBUG
Andrea recommends, or separately if you prefer - certainly use of
DRM_IOCTL_SG_FREE will be very interesting.
The page flags yesterday showed 20000014: I hope the fixed patch
will show them as 20000414, which will confirm that PageReserved
got cleared too early. No need to send all the lines, one will do.
I'm going out now, won't be able to respond until much later...
Hugh
--- 2.6.10-rc3-bk8/include/linux/rmap.h 2004-12-05 12:56:10.000000000 +0000
+++ linux/include/linux/rmap.h 2004-12-15 15:54:32.000000000 +0000
@@ -72,7 +72,7 @@ void __anon_vma_link(struct vm_area_stru
*/
void page_add_anon_rmap(struct page *, struct vm_area_struct *, unsigned long);
void page_add_file_rmap(struct page *);
-void page_remove_rmap(struct page *);
+void page_remove_rmap(struct page *, struct vm_area_struct *, unsigned long);
/**
* page_dup_rmap - duplicate pte mapping to a page
--- 2.6.10-rc3-bk8/mm/fremap.c 2004-12-05 12:56:12.000000000 +0000
+++ linux/mm/fremap.c 2004-12-15 15:50:11.000000000 +0000
@@ -37,7 +37,7 @@ static inline void zap_pte(struct mm_str
if (!PageReserved(page)) {
if (pte_dirty(pte))
set_page_dirty(page);
- page_remove_rmap(page);
+ page_remove_rmap(page, vma, addr);
page_cache_release(page);
mm->rss--;
}
--- 2.6.10-rc3-bk8/mm/memory.c 2004-12-05 12:56:12.000000000 +0000
+++ linux/mm/memory.c 2004-12-15 16:03:21.000000000 +0000
@@ -366,6 +366,7 @@ nomem:
}
static void zap_pte_range(struct mmu_gather *tlb,
+ struct vm_area_struct *vma,
pmd_t *pmd, unsigned long address,
unsigned long size, struct zap_details *details)
{
@@ -431,7 +432,7 @@ static void zap_pte_range(struct mmu_gat
else if (pte_young(pte))
mark_page_accessed(page);
tlb->freed++;
- page_remove_rmap(page);
+ page_remove_rmap(page, vma, address+offset);
tlb_remove_page(tlb, page);
continue;
}
@@ -449,6 +450,7 @@ static void zap_pte_range(struct mmu_gat
}
static void zap_pmd_range(struct mmu_gather *tlb,
+ struct vm_area_struct *vma,
pgd_t * dir, unsigned long address,
unsigned long size, struct zap_details *details)
{
@@ -467,7 +469,7 @@ static void zap_pmd_range(struct mmu_gat
if (end > ((address + PGDIR_SIZE) & PGDIR_MASK))
end = ((address + PGDIR_SIZE) & PGDIR_MASK);
do {
- zap_pte_range(tlb, pmd, address, end - address, details);
+ zap_pte_range(tlb, vma, pmd, address, end - address, details);
address = (address + PMD_SIZE) & PMD_MASK;
pmd++;
} while (address && (address < end));
@@ -483,7 +485,7 @@ static void unmap_page_range(struct mmu_
dir = pgd_offset(vma->vm_mm, address);
tlb_start_vma(tlb, vma);
do {
- zap_pmd_range(tlb, dir, address, end - address, details);
+ zap_pmd_range(tlb, vma, dir, address, end - address, details);
address = (address + PGDIR_SIZE) & PGDIR_MASK;
dir++;
} while (address && (address < end));
@@ -1114,7 +1116,7 @@ static int do_wp_page(struct mm_struct *
if (PageReserved(old_page))
++mm->rss;
else
- page_remove_rmap(old_page);
+ page_remove_rmap(old_page, vma, address);
break_cow(vma, new_page, address, page_table);
lru_cache_add_active(new_page);
page_add_anon_rmap(new_page, vma, address);
--- 2.6.10-rc3-bk8/mm/rmap.c 2004-12-05 12:56:12.000000000 +0000
+++ linux/mm/rmap.c 2004-12-16 16:14:03.172911152 +0000
@@ -459,8 +459,12 @@ void page_add_anon_rmap(struct page *pag
void page_add_file_rmap(struct page *page)
{
BUG_ON(PageAnon(page));
- if (!pfn_valid(page_to_pfn(page)) || PageReserved(page))
+ if (!pfn_valid(page_to_pfn(page)))
return;
+ if (PageReserved(page)) {
+ set_bit(PG_arch_1, &page->flags);
+ return;
+ }
if (atomic_inc_and_test(&page->_mapcount))
inc_page_state(nr_mapped);
@@ -472,12 +476,22 @@ void page_add_file_rmap(struct page *pag
*
* Caller needs to hold the mm->page_table_lock.
*/
-void page_remove_rmap(struct page *page)
+void page_remove_rmap(struct page *page,
+ struct vm_area_struct *vma, unsigned long address)
{
BUG_ON(PageReserved(page));
+ if (page_mapcount(page) <= 0 || page_count(page) <= 0 ||
+ test_bit(PG_arch_1, &page->flags)) {
+ printk("Bad rmap in %s: page %p flags %lx "
+ "count %d mapcount %d addr %lx vm_flags %lx\n",
+ current->comm, page, (unsigned long)page->flags,
+ page_count(page), page_mapcount(page), address,
+ vma->vm_flags);
+ get_page(page);
+ return;
+ }
if (atomic_add_negative(-1, &page->_mapcount)) {
- BUG_ON(page_mapcount(page) < 0);
/*
* It would be tidy to reset the PageAnon mapping here,
* but that might overwrite a racing page_add_anon_rmap
@@ -593,7 +607,7 @@ static int try_to_unmap_one(struct page
}
mm->rss--;
- page_remove_rmap(page);
+ page_remove_rmap(page, vma, address);
page_cache_release(page);
out_unmap:
@@ -690,7 +704,7 @@ static void try_to_unmap_cluster(unsigne
if (pte_dirty(pteval))
set_page_dirty(page);
- page_remove_rmap(page);
+ page_remove_rmap(page, vma, address);
page_cache_release(page);
mm->rss--;
(*mapcount)--;
^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2004-12-16 17:10 UTC | newest]
Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-12-14 16:45 kernel BUG at mm/rmap.c:480 in 2.6.10-rc3-bk7 Greg KH
2004-12-14 23:26 ` Hugh Dickins
2004-12-15 0:10 ` Nick Piggin
2004-12-15 0:19 ` Greg KH
2004-12-15 1:11 ` Greg KH
2004-12-15 17:23 ` Hugh Dickins
2004-12-15 17:58 ` Greg KH
2004-12-15 18:48 ` Hugh Dickins
2004-12-15 22:22 ` Hugh Dickins
2004-12-15 22:33 ` Dave Airlie
2004-12-15 23:19 ` Greg KH
2004-12-15 19:03 ` Andrea Arcangeli
2004-12-15 22:48 ` Andrea Arcangeli
2004-12-15 23:41 ` Greg KH
2004-12-16 5:18 ` Hugh Dickins
2004-12-16 14:28 ` Andrea Arcangeli
2004-12-16 17:03 ` Hugh Dickins
2004-12-15 0:43 ` Andrea Arcangeli
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox