* ext3 oops on shutdown
@ 2006-10-25 0:57 David Miller
2006-10-25 7:51 ` David Miller
0 siblings, 1 reply; 3+ messages in thread
From: David Miller @ 2006-10-25 0:57 UTC (permalink / raw)
To: linux-kernel
I just started to see the following ext3 umount() oops on
shutdown, it happens every shutdown, has anyone else seen
it?
I'll start bisecting soon... this was on sparc64.
free_block()+0x50/0x190
cache_flusharray()+0x74/0xa0
kmem_cache_free()
journal_destroy_revoke()
journal_destroy()
ext3_put_super()
generic_shutdown_super()
kill_block_super()
deactivate_super()
sys_umount()
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: ext3 oops on shutdown
2006-10-25 0:57 ext3 oops on shutdown David Miller
@ 2006-10-25 7:51 ` David Miller
2006-10-26 6:06 ` David Miller
0 siblings, 1 reply; 3+ messages in thread
From: David Miller @ 2006-10-25 7:51 UTC (permalink / raw)
To: linux-kernel
From: David Miller <davem@davemloft.net>
Date: Tue, 24 Oct 2006 17:57:51 -0700 (PDT)
> I just started to see the following ext3 umount() oops on
> shutdown, it happens every shutdown, has anyone else seen
> it?
>
> I'll start bisecting soon... this was on sparc64.
>
> free_block()+0x50/0x190
> cache_flusharray()+0x74/0xa0
> kmem_cache_free()
> journal_destroy_revoke()
> journal_destroy()
> ext3_put_super()
> generic_shutdown_super()
> kill_block_super()
> deactivate_super()
> sys_umount()
Just as an FYI, I bisected it down to this commit:
commit 6b4b78fed47e7380dfe9280b154e8b9bfcd4c86c
Author: Matt Domsch <Matt_Domsch@dell.com>
Date: Fri Sep 29 15:23:23 2006 -0500
PCI: optionally sort device lists breadth-first
which makes no sense. Effectively all this changeset does is add some
__init section code to the PCI layer which never gets executed on
non-i386. And even on i386 it only runs if you give a special kernel
command line option.
So the only side effect of this code for sparc64, by checking the
System.map before/after this change, is to move the __init_end ahead
by 1 PAGE_SIZE.
It's probably some sparc64 issue, maybe even some error wrt. freeing
up init memory. I'll try to track it down. I'm actually quite
curious what this bug is :-)
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: ext3 oops on shutdown
2006-10-25 7:51 ` David Miller
@ 2006-10-26 6:06 ` David Miller
0 siblings, 0 replies; 3+ messages in thread
From: David Miller @ 2006-10-26 6:06 UTC (permalink / raw)
To: linux-kernel
From: David Miller <davem@davemloft.net>
Date: Wed, 25 Oct 2006 00:51:34 -0700 (PDT)
> It's probably some sparc64 issue, maybe even some error wrt. freeing
> up init memory. I'll try to track it down. I'm actually quite
> curious what this bug is :-)
Yep, a sparc64 bug, I'll push this to Linus shortly...
commit 2506be0657c7bd1befdb616fb0e86d87c6a288cd
Author: David S. Miller <davem@sunset.davemloft.net>
Date: Wed Oct 25 22:33:07 2006 -0700
[SPARC64]: Fix memory corruption in pci_4u_free_consistent().
The second argument to free_npages() was being incorrectly
calculated, which would thus access far past the end of the
arena->map[] bitmap.
Signed-off-by: David S. Miller <davem@davemloft.net>
diff --git a/arch/sparc64/kernel/pci_iommu.c b/arch/sparc64/kernel/pci_iommu.c
index 82e5455..2e7f142 100644
--- a/arch/sparc64/kernel/pci_iommu.c
+++ b/arch/sparc64/kernel/pci_iommu.c
@@ -281,7 +281,7 @@ static void pci_4u_free_consistent(struc
spin_lock_irqsave(&iommu->lock, flags);
- free_npages(iommu, dvma, npages);
+ free_npages(iommu, dvma - iommu->page_table_map_base, npages);
spin_unlock_irqrestore(&iommu->lock, flags);
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2006-10-26 6:06 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-10-25 0:57 ext3 oops on shutdown David Miller
2006-10-25 7:51 ` David Miller
2006-10-26 6:06 ` David Miller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome