[BUG] panic 2.6.20-rc3 in nf_conntrack

Previous thread: Re: fuse, get_user_pages, flush_anon_page, aliasing caches and all that again by James Bottomley on Monday, January 1, 2007 - 12:44 pm. (4 messages)

Next thread: Re: [PATCH] OHCI: disallow autostop when wakeup is not available by Andrey Borzenkov on Monday, January 1, 2007 - 1:07 pm. (8 messages)
To: <linux-kernel@...>
Cc: <travis@...>, Benjamin Herrenschmidt <benh@...>
Date: Wednesday, December 31, 1969 - 8:00 pm

At least they had the decency to have a FIXME.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
---
arch/powerpc/kernel/sysfs.c | 31 +++++--------------------------
1 file changed, 5 insertions(+), 26 deletions(-)

diff -r 6f4737048b99 arch/powerpc/kernel/sysfs.c
--- a/arch/powerpc/kernel/sysfs.c Thu Oct 23 00:06:30 2008 +1100
+++ b/arch/powerpc/kernel/sysfs.c Thu Oct 23 00:20:57 2008 +1100
@@ -134,36 +134,15 @@ void ppc_enable_pmcs(void)
}
EXPORT_SYMBOL(ppc_enable_pmcs);

-#if defined(CONFIG_6xx) || defined(CONFIG_PPC64)
-/* XXX convert to rusty's on_one_cpu */
-static unsigned long run_on_cpu(unsigned long cpu,
- unsigned long (*func)(unsigned long),
- unsigned long arg)
-{
- cpumask_t old_affinity = current->cpus_allowed;
- unsigned long ret;
-
- /* should return -EINVAL to userspace */
- if (set_cpus_allowed(current, cpumask_of_cpu(cpu)))
- return 0;
-
- ret = func(arg);
-
- set_cpus_allowed(current, old_affinity);
-
- return ret;
-}
-#endif
-
#define SYSFS_PMCSETUP(NAME, ADDRESS) \
-static unsigned long read_##NAME(unsigned long junk) \
+static long read_##NAME(void *junk) \
{ \
return mfspr(ADDRESS); \
} \
-static unsigned long write_##NAME(unsigned long val) \
+static long write_##NAME(void *val) \
{ \
ppc_enable_pmcs(); \
- mtspr(ADDRESS, val); \
+ mtspr(ADDRESS, (unsigned long)val); \
return 0; \
} \
static ssize_t show_##NAME(struct sys_device *dev, \
@@ -171,7 +150,7 @@ static ssize_t show_##NAME(struct sys_de
char *buf) \
{ \
struct cpu *cpu = container_of(dev, struct cpu, sysdev); \
- unsigned long val = run_on_cpu(cpu->sysdev.id, read_##NAME, 0); \
+ unsigned long val = work_on_cpu(cpu->sysdev.id, read_##NAME, NULL); \
return sprintf(buf, "%lx\n", val); \
} \
static ssize_t __used \
@@ -183,7 +162,7 @@ static ssize_t __used \
int ret = sscanf(buf, "%lx", &val); \
if (ret != 1) \
return -EINVAL; \
- run...

To: <linux-kernel@...>
Date: Monday, January 1, 2007 - 12:53 pm

--Boundary-01=_0xTmFP4CDngT7em
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

Hello,
I tried 2.6.20-rc3 with the new nf_nat stuff on my gateway machine with ppp=
oe=20
(ADSL) access to the internet. When I shut down my ppp0 interface the kerne=
l=20
panics. Config and dmesg are attached.
This kernel had the ipp2p patch from patch-o-matic-ng applied, but the prob=
lem=20
also happens without, so I didn't capture the panic without the patch.

The machine is an athlon-xp with 512MiB ram.
=46or iptables setup I use shorewall.

Regards
=2D--------------------------------------
Malte Schr=F6der
MalteSch@gmx.de
ICQ# 68121508
=2D--------------------------------------

--Boundary-01=_0xTmFP4CDngT7em
Content-Type: text/plain;
charset="iso-8859-1";
name="config-2.6.20-rc3"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename="config-2.6.20-rc3"

#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.20-rc3
# Mon Jan 1 12:37:55 2007
#
CONFIG_X86_32=y
CONFIG_GENERIC_TIME=y
CONFIG_LOCKDEP_SUPPORT=y
CONFIG_STACKTRACE_SUPPORT=y
CONFIG_SEMAPHORE_SLEEPERS=y
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_GENERIC_IOMAP=y
CONFIG_GENERIC_BUG=y
CONFIG_GENERIC_HWEIGHT=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y
CONFIG_DMI=y
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"

#
# Code maturity level options
#
CONFIG_EXPERIMENTAL=y
CONFIG_BROKEN_ON_SMP=y
CONFIG_INIT_ENV_ARG_LIMIT=32

#
# General setup
#
CONFIG_LOCALVERSION=""
CONFIG_LOCALVERSION_AUTO=y
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
# CONFIG_IPC_NS is not set
CONFIG_POSIX_MQUEUE=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_BSD_PROCESS_ACCT_V3=y
# CONFIG_TASKSTATS is not set
# CONFIG_UTS_NS is not set
CONFIG_AUDIT=y
# CONFIG_AUDITSYSCALL is not set
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
# CONFIG_SYSFS_DEPRECATED is not set
CONFIG_RELAY=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_CC_OPTIMIZE_...

Previous thread: Re: fuse, get_user_pages, flush_anon_page, aliasing caches and all that again by James Bottomley on Monday, January 1, 2007 - 12:44 pm. (4 messages)

Next thread: Re: [PATCH] OHCI: disallow autostop when wakeup is not available by Andrey Borzenkov on Monday, January 1, 2007 - 1:07 pm. (8 messages)