Messages in this thread | | | Date | Wed, 6 May 2009 07:26:51 +0900 | Subject | Re: patch mm-fix-committed_as-underflow-on-large-nr_cpus-environment.patch added to 2.6.29-stable tree | From | KOSAKI Motohiro <> |
| |
2009/5/6 Greg KH <gregkh@suse.de>: > On Tue, May 05, 2009 at 08:36:19PM +0200, Stefan Lippers-Hollmann wrote: >> Hi >> >> On Dienstag, 5. Mai 2009, gregkh@suse.de wrote: >> [...] >> > From 00a62ce91e554198ef28234c91c36f850f5a3bc9 Mon Sep 17 00:00:00 2001 >> > From: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> >> > Date: Thu, 30 Apr 2009 15:08:51 -0700 >> > Subject: mm: fix Committed_AS underflow on large NR_CPUS environment >> > >> > From: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> >> > >> > commit 00a62ce91e554198ef28234c91c36f850f5a3bc9 upstream. >> > >> > The Committed_AS field can underflow in certain situations: >> > >> > > # while true; do cat /proc/meminfo | grep _AS; sleep 1; done | uniq -c >> > > 1 Committed_AS: 18446744073709323392 kB >> > > 11 Committed_AS: 18446744073709455488 kB >> > > 6 Committed_AS: 35136 kB >> > > 5 Committed_AS: 18446744073709454400 kB >> > > 7 Committed_AS: 35904 kB >> > > 3 Committed_AS: 18446744073709453248 kB >> > > 2 Committed_AS: 34752 kB >> > > 9 Committed_AS: 18446744073709453248 kB >> > > 8 Committed_AS: 34752 kB >> > > 3 Committed_AS: 18446744073709320960 kB >> > > 7 Committed_AS: 18446744073709454080 kB >> > > 3 Committed_AS: 18446744073709320960 kB >> > > 5 Committed_AS: 18446744073709454080 kB >> > > 6 Committed_AS: 18446744073709320960 kB >> > >> > Because NR_CPUS can be greater than 1000 and meminfo_proc_show() does >> > not check for underflow. >> > >> > But NR_CPUS proportional isn't good calculation. In general, >> > possibility of lock contention is proportional to the number of online >> > cpus, not theorical maximum cpus (NR_CPUS). >> > >> > The current kernel has generic percpu-counter stuff. using it is right >> > way. it makes code simplify and percpu_counter_read_positive() don't >> > make underflow issue. >> >> This patch reproducably panics on all systems I could test so far on >> 2.6.29.2 + the current stable queue: >> - Acer Aspire One, Intel Atom N270, Intel 945GC chipset (i386) >> - AMD64 3200+, nVidia nforce3 chipset (amd64) >> - AMD64 X2 4200+, nVidia nforce4 chipset (amd64) >> >> Kernel panic (sorry, this is from a bad webcam and only the last part of >> the messages scrolling by - I can try to get a serial console tomorrow), >> taken from an AMD64 3200+, nVidia nforce3 chipset (amd64). >> http://sidux.com/slh/mm-fix-committed_as-underflow-on-large-nr_cpus-environment/panic.gif [198 KB] >> >> Reverting just this patch fixes the problem for me. >> >> Kernel configurations: >> http://sidux.com/slh/mm-fix-committed_as-underflow-on-large-nr_cpus-environment/config-2.6.29-2.slh.5.3-sidux-686 [96 KB] >> http://sidux.com/slh/mm-fix-committed_as-underflow-on-large-nr_cpus-environment/config-2.6.29-2.slh.5.6-sidux-amd64 [91 KB] > > Yes, I just confirmed this on my machines as well, so I'm going to drop > it from the stable queue. > > If anyone thinks it is really necessary for the 2.6.29-stable tree, > please resubmit it after fixing it and testing that it works :) > > thanks,
Could you please post oops log? current mmotm (include this patch) works fine on my x86_64 box. Then, I have no hint now ;-) -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |