Temporarily at
http://userweb.kernel.org/~akpm/2.6.20-rc6-mm2/
Will appear later at
ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.20-rc6/2.6.20-rc6-mm2/
- Dropped git-block due to CFQ breakage
- Dropped the fsaio patches due to their dependence on git-block.
- Added the new hrtimers/dynticks patches. This is an update of the
2.6.20-rc4-mm1 patches, now apparently fixed.
Boilerplate:
- See the `hot-fixes' directory for any important updates to this patchset.
- To fetch an -mm tree using git, use (for example)
git-fetch git://git.kernel.org/pub/scm/linux/kernel/git/smurf/linux-trees.git tag v2.6.16-rc2-mm1
git-checkout -b local-v2.6.16-rc2-mm1 v2.6.16-rc2-mm1
- -mm kernel commit activity can be reviewed by subscribing to the
mm-commits mailing list.
echo "subscribe mm-commits" | mail [email protected]
- If you hit a bug in -mm and it is not obvious which patch caused it, it is
most valuable if you can perform a bisection search to identify which patch
introduced the bug. Instructions for this process are at
http://www.zip.com.au/~akpm/linux/patches/stuff/bisecting-mm-trees.txt
But beware that this process takes some time (around ten rebuilds and
reboots), so consider reporting the bug first and if we cannot immediately
identify the faulty patch, then perform the bisection search.
- When reporting bugs, please try to Cc: the relevant maintainer and mailing
list on any email.
- When reporting bugs in this kernel via email, please also rewrite the
email Subject: in some manner to reflect the nature of the bug. Some
developers filter by Subject: when looking for messages to read.
- Semi-daily snapshots of the -mm lineup are uploaded to
ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/mm/ and are announced on
the mm-commits list.
Changes since 2.6.20-rc6-mm1:
origin.patch
git-acpi.patch
git-ibm-acpi.patch
git-alsa.patch
git-agpgart.patch
git-arm.patch
git-avr32.patch
git-cpufreq.patch
git-powerpc.patch
git-drm.patch
git-dvb.patch
git-gfs2-nmw.patch
git-hid.patch
git-ieee1394.patch
git-infiniband.patch
git-input.patch
git-jfs.patch
git-libata-all.patch
git-lxdialog.patch
git-mips.patch
git-mmc.patch
git-mtd.patch
git-ubi.patch
git-netdev-all.patch
git-ioat.patch
git-ocfs2.patch
git-pciseg.patch
git-s390.patch
git-sh.patch
git-scsi-misc.patch
git-scsi-rc-fixes.patch
git-qla3xxx.patch
git-unionfs.patch
git-watchdog.patch
git-ipwireless_cs.patch
git-cryptodev.patch
git-gccbug.patch
git trees
+use-__u8-__u32-in-userspace-ioctl-defines-for-i2o.patch
+netfilter-is-subscribers-only.patch
+fix-config_x86_64_-typo-in-drivers-kvm-svmc.patch
+m68k-uaccessh-needs-schedh.patch
+fs-lockd-clntlockc-add-missing-newlines-to-dprintks.patch
+knfsd-ratelimit-some-nfsd-messages-that-are-triggered-by-external-events.patch
+use-__u8-rather-than-u8-in-userspace-size-defines-in-hdregh.patch
2.6.20 queue.
+x86-fix-vdso-mapping-for-aout-executables-x86_64-fixpatch.patch
Fix x86-fix-vdso-mapping-for-aout-executables.patch some more.
+sound-isa-gus-gus_mainc-use-abs-instead-of-x-0-x-x.patch
ALSA fix
+drivers-media-video-convert-to-generic-boolean-values.patch
DVB fix
+fix-gfs2-circular-dependency.patch
GFS2 Kconfig fix
-ehca-avoid-crash-on-kthread_create-failure.patch
Dropped
+sata_nv-use-adma-for-nodata-commands.patch
+fix-config_sata_sis=y-compile-error.patch
SATA fixes
+hp100-convert-pci_module_init-to-pci_register_driver.patch
netdev cleanup
+netfilter-warning-fix.patch
+nf_conntrack_h323-must-depend-on-ipv6-ipv6=n.patch
net fixes
+use-__u64-rather-than-u64-in-parisc-statfs-structs.patch
Fix userspace api
-git-block.patch
-git-block-fixup.patch
-git-block-borkage.patch
-git-block-atomicity-fix.patch
Droped.
+fix-gregkh-usb-usb-linux-usb_ch9h-becomes-linux-usb-ch9h.patch
USB fix
+pl2303-willcom-ws002in-support.patch
+use-__u32-rather-than-u32-in-userspace-ioctls-in-usbdevice_fsh.patch
USB fixes
+remove-final-vestiges-of-config_unwind_info.patch
x86 cleanup
+m68k-work-around-binutils-tokenizer-change.patch
m68k fix
+ext-jbd-layer-function-called-instead-of-fs-specific-one.patch
ext3/4-vs-JBD cleanup
+add-irq-flag-to-disable-balancing-for-an-interrupt.patch
+add-a-functions-to-handle-interrupt-affinity-setting.patch
+add-a-functions-to-handle-interrupt-affinity-setting-alpha-fix.patch
+hz-free-ntp.patch
+fix-multiple-conversion-bugs-in-msecs_to_jiffies.patch
+fix-timeout-overflow-with-jiffies.patch
+gtod-persistent-clock-support.patch
+i386-use-gtod-persistent-clock-support.patch
+i386-remove-useless-code-in-tscc.patch
+simplify-the-registration-of-clocksources.patch
+x86-rewrite-smp-tsc-sync-code.patch
+clocksource-replace-is_continuous-by-a-flag-field.patch
+clocksource-replace-is_continuous-by-a-flag-field-fix.patch
+clocksource-fixup-is_continous-changes-on-arm.patch
+clocksource-fixup-is_continous-changes-on-avr32.patch
+clocksource-fixup-is_continous-changes-on-s390.patch
+clocksource-fixup-is_continous-changes-on-mips.patch
+clocksource-remove-the-update-callback.patch
+clocksource-add-verification-watchdog-helper.patch
+mark-tsc-on-geodelx-reliable.patch
+uninline-irq_enter.patch
+fix-cascade-lookup-of-next_timer_interrupt.patch
+extend-next_timer_interrupt-to-use-a-reference-jiffie.patch
+hrtimers-namespace-and-enum-cleanup.patch
+hrtimers-namespace-and-enum-cleanup-vs-git-input.patch
+hrtimers-cleanup-locking.patch
+hrtimers-add-state-tracking.patch
+hrtimers-clean-up-callback-tracking.patch
+hrtimers-move-and-add-documentation.patch
+acpi-fix-missing-include-for-up.patch
+acpi-keep-track-of-timer-broadcasting.patch
+allow-early-access-to-the-power-management-timer.patch
+i386-apic-clean-up-the-apic-code.patch
+clockevents-add-core-functionality.patch
+tick-management-core-functionality.patch
+tick-management-broadcast-functionality.patch
+tick-management-dyntick--highres-functionality.patch
+clockevents-i383-drivers.patch
+i386-rework-local-apic-timer-calibration.patch
+i386-prepare-for-dyntick.patch
+i386-prepare-nmi-watchdog-for-dynticks.patch
+i386-enable-dynticks-in-kconfig.patch
+hrtimers-add-high-resolution-timer-support.patch
+hrtimers-prevent-possible-itimer-dos.patch
+add-debugging-feature-proc-timer_stat.patch
+add-debugging-feature-proc-timer_list.patch
+add-sysrq-q-to-print-timer_list-debug-info.patch
New hrtimers/dynticks patches
+generic-vsyscall-gtod-support-for-generic_time.patch
+generic-vsyscall-gtod-support-for-generic_time-tidy.patch
+time-x86_64-hpet_address-cleanup.patch
+revert-x86_64-mm-ignore-long-smi-interrupts-in-clock-calibration.patch
+time-x86_64-split-x86_64-kernel-timec-up.patch
+time-x86_64-split-x86_64-kernel-timec-up-tidy.patch
+time-x86_64-split-x86_64-kernel-timec-up-fix.patch
+reapply-x86_64-mm-ignore-long-smi-interrupts-in-clock-calibration.patch
+time-x86_64-convert-x86_64-to-use-generic_time.patch
+time-x86_64-convert-x86_64-to-use-generic_time-fix.patch
+time-x86_64-convert-x86_64-to-use-generic_time-tidy.patch
+time-x86_64-hpet-fixup-clocksource-changes.patch
+time-x86_64-tsc-fixup-clocksource-changes.patch
+time-x86_64-re-enable-vsyscall-support-for-x86_64.patch
+time-x86_64-re-enable-vsyscall-support-for-x86_64-tidy.patch
Bring these back.
-kblockd-use-flush_work.patch
temporarily dropped due to git-block droppage.
+isdn-rename-some-debugging-macros-to-not-resemble-config.patch
+isdn-rename-debug-option-config_serial_nopause_io.patch
+isdn-remove-defunct-test-emulator.patch
+isdn-rename-special-macro-config_hisax_hfc4s8s_pcimem.patch
+drivers-isdn-hardware-eicon-convert-to-generic-boolean-values.patch
+drivers-isdn-hisax-convert-to-generic-boolean-values.patch
ISDN cleanups
-fsaio-add-a-wait-queue-arg-to-the-wait_bit-action-routine.patch
-fsaio-add-a-wait-queue-arg-to-the-wait_bit-action-routine-gfs2-fix.patch
-fsaio-rename-__lock_page-to-lock_page_blocking.patch
-fsaio-interfaces-to-initialize-and-to-test-a-wait-bit-key.patch
-fsaio-add-a-default-io-wait-bit-field-in-task-struct.patch
-fsaio-enable-wait-bit-based-filtered-wakeups-to-work-for-aio.patch
-fsaio-enable-wait-bit-based-filtered-wakeups-to-work-for-aio-fix.patch
-fsaio-enable-wait-bit-based-filtered-wakeups-to-work-for-aio-fix-sparse-fix.patch
-fsaio-enable-asynchronous-wait-page-and-lock-page.patch
-fsaio-filesystem-aio-read.patch
-fsaio-aio-o_sync-filesystem-write.patch
temporarily dropped due to git-block droppage.
-sysctl-remove-the-proc_dir_entry-member-for-the-sysctl-tables-hack.patch
Dropped
+sysctl-remove-the-proc_dir_entry-member-for-the-sysctl-tables-fix.patch
Fix sysctl-remove-the-proc_dir_entry-member-for-the-sysctl-tables.patch
All 1449 patches:
ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.20-rc6/2.6.20-rc6-mm2/patch-list
On Mon, 29 Jan 2007, Andrew Morton wrote:
> http://userweb.kernel.org/~akpm/2.6.20-rc6-mm2/
I just got this on suspend/resume cycle on my IBM T42p
pcspkr pcspkr: EARLY resume
vesafb vesafb.0: EARLY resume
serial8250 serial8250: EARLY resume
i8042 i8042: EARLY resume
platform floppy.0: EARLY resume
BUG: soft lockup detected on CPU#0!
[<c01043ae>] show_trace_log_lvl+0x1a/0x2f
[<c0104941>] show_trace+0x12/0x14
[<c01049c5>] dump_stack+0x16/0x18
[<c0142053>] softlockup_tick+0x93/0xa2
[<c011eb5b>] run_local_timers+0x12/0x14
[<c011ed6f>] update_process_times+0x36/0x5a
[<c012c567>] tick_periodic+0x66/0x72
[<c012c580>] tick_handle_periodic+0xd/0x3d
[<c0105d6a>] timer_interrupt+0xe/0x15
[<c0142310>] handle_IRQ_event+0x1a/0x46
[<c01435ac>] handle_level_irq+0x7c/0xc4
[<c0105300>] do_IRQ+0x82/0x9e
[<c0103f6e>] common_interrupt+0x2e/0x34
[<c013a78e>] snapshot_ioctl+0x1e7/0x581
[<c016bc1d>] do_ioctl+0x41/0x51
[<c016be2d>] vfs_ioctl+0x200/0x217
[<c016be8d>] sys_ioctl+0x49/0x64
[<c0103cf8>] sysenter_past_esp+0x5d/0x99
=======================
platform dock.0: resuming
acpi acpi_system:00: resuming
acpi button_power:00: resuming
ACPI Processor Driver processor:00: resuming
I guess that it's caused by some timer changes (added Thomas and Ingo to
CC), which confuse the softlockup detector sense of time?
--
Jiri Kosina
On Mon, Jan 29, 2007 at 12:12:07AM -0800, Andrew Morton wrote:
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.20-rc6/2.6.20-rc6-mm2/
>
Hi,
The svc_pool_map_init_percpu() should get maxpool from the number of
online cpus, not the number of nodes. The following BUG is triggered
when we try to check if the cpu index is smaller than the number of nodes.
(The system is multi cpu, single node).
[ 133.196276] ------------[ cut here ]------------
[ 133.196334] kernel BUG at net/sunrpc/svc.c:128!
[ 133.196391] invalid opcode: 0000 [#1]
[ 133.196444] PREEMPT SMP
[ 133.196571] last sysfs file: /devices/pci0000:00/0000:00:00.0/class
[ 133.196630] Modules linked in: nfsd exportfs lockd sunrpc ipv6 i2c_dev i2c_core video thermal sony_acpi processor fan button battery asus_acpi ac uhci_hcd ehci_hcd rng_core
[ 133.197473] CPU: 0
[ 133.197474] EIP: 0060:[<f8a5973c>] Not tainted VLI
[ 133.197475] EFLAGS: 00010202 (2.6.20-rc6-mm2 #1)
[ 133.197656] EIP is at svc_pool_map_init_percpu+0x54/0x5a [sunrpc]
[ 133.197715] eax: 00000002 ebx: f8a762e4 ecx: 00000002 edx: 00000008
[ 133.197776] esi: 00000002 edi: f8aa71e0 ebp: c2fd3edc esp: c2fd3ed4
[ 133.197835] ds: 007b es: 007b fs: 00d8 gs: 0033 ss: 0068
[ 133.197894] Process rpc.nfsd (pid: 3595, ti=c2fd2000 task=f7e22030 task.ti=c2fd2000)
[ 133.197954] Stack: f8a7c081 00040000 c2fd3ee4 f8a597de c2fd3efc f8a59a55 c2fd3f10 00000000
[ 133.198360] 00000008 00000801 c2fd3f54 f8a7c1ac f8a7c4e9 00000001 f8aa9480 fffdd1fe
[ 133.198769] 00000292 f8aa9140 00015f90 0007dbcc 00078804 00000000 0000076e 00000008
[ 133.199175] Call Trace:
[ 133.199275] [<c010390d>] show_trace_log_lvl+0x1a/0x30
[ 133.199373] [<c01039c4>] show_stack_log_lvl+0x8d/0xb1
[ 133.199467] [<c0103bf1>] show_registers+0x1c0/0x336
[ 133.199561] [<c0103efd>] die+0x11f/0x213
[ 133.199654] [<c010406a>] do_trap+0x79/0xa7
[ 133.199748] [<c010433b>] do_invalid_op+0xa3/0xad
[ 133.199842] [<c03ee3a4>] error_code+0x7c/0x84
[ 133.199936] [<f8a597de>] svc_pool_map_init+0x4c/0x60 [sunrpc]
[ 133.200047] [<f8a59a55>] svc_create_pooled+0x14/0x44 [sunrpc]
[ 133.200156] [<f8a7c1ac>] nfsd_create_serv+0x5a/0xd4 [nfsd]
[ 133.200262] [<f8a7c498>] nfsd_svc+0x50/0xa1 [nfsd]
[ 133.200364] [<f8a7ca1f>] write_svc+0x1a/0x20 [nfsd]
[ 133.200466] [<f8a7c98a>] nfsctl_transaction_write+0x4a/0x6d [nfsd]
[ 133.200571] [<c019f29e>] sys_nfsservctl+0xa3/0xe5
[ 133.200666] [<c0102a94>] sysenter_past_esp+0x5d/0x99
[ 133.200762] =======================
[ 133.200816] Code: c1 77 22 83 fe 01 77 23 8b 43 0c ba 10 3f 54 c0 89 34 88 8b 43 08 89 0c b0 89 c8 83 c6 01 e8 4e 8f 7b c7 eb d7 5b 89 f0 5e 5d c3 <0f> 0b 89 f6 eb fc 55 ba 01 00 00 00 89 e5 56 31 f6 53 89 c3 e8
[ 133.203330] EIP: [<f8a5973c>] svc_pool_map_init_percpu+0x54/0x5a [sunrpc] SS:ESP 0068:c2fd3ed4
The following patch fixes the problem for me.
Regards,
Frederik
Signed-off-by: Frederik Deweerdt <[email protected]>
diff --git a/net/sunrpc/svc.c b/net/sunrpc/svc.c
index c8c7c55..a553f9f 100644
--- a/net/sunrpc/svc.c
+++ b/net/sunrpc/svc.c
@@ -115,7 +115,7 @@ fail:
static int
svc_pool_map_init_percpu(struct svc_pool_map *m)
{
- unsigned int maxpools = nr_node_ids;
+ unsigned int maxpools = num_online_cpus();
unsigned int pidx = 0;
unsigned int cpu;
int err;
On Mon, 2007-01-29 at 12:02 +0100, Jiri Kosina wrote:
>
> I guess that it's caused by some timer changes (added Thomas and Ingo to
> CC), which confuse the softlockup detector sense of time?
Does the patch below fix this ?
tglx
Index: linux-2.6.20-rc6-mm/kernel/time/tick-common.c
===================================================================
--- linux-2.6.20-rc6-mm.orig/kernel/time/tick-common.c
+++ linux-2.6.20-rc6-mm/kernel/time/tick-common.c
@@ -320,6 +320,7 @@ static int tick_notify(struct notifier_b
case CLOCK_EVT_NOTIFY_RESUME:
tick_resume_jiffy_update();
+ touch_softlockup_watchdog();
break;
case CLOCK_EVT_NOTIFY_CPU_DEAD:
Hi,
with dynticks and highres_timers enabled, cpufreq_ondemand makes mess here on
an AMD64 UP.
cpufreq_ondemand assumes that jiffies advance at exactly the same pace as the
sum of all kstat_cpu(cpu).cpustat.* members.
This isn't the case here as dmesg output from patch below shows.
Is cpufreq_ondemand correct assuming
"jiffies advance at exactly the same pace as the
sum of all kstat_cpu(cpu).cpustat.* members"?
Or is "dynticks and highres_timers"'s behaviour of incrementing the
sum of kstat_cpu(cpu).cpustat.* members faster than jiffies?
Karsten
diff -pur rc6-mm2/drivers/cpufreq/cpufreq_ondemand.c rc6-mm2-kw/drivers/cpufreq/cpufreq_ondemand.c
--- rc6-mm2/drivers/cpufreq/cpufreq_ondemand.c 2007-01-29 10:40:39.000000000 +0100
+++ rc6-mm2-kw/drivers/cpufreq/cpufreq_ondemand.c 2007-01-29 11:37:08.000000000 +0100
@@ -370,7 +370,15 @@ static void dbs_check_cpu(struct cpu_dbs
if (tmp_idle_ticks < idle_ticks)
idle_ticks = tmp_idle_ticks;
}
- load = (100 * (total_ticks - idle_ticks)) / total_ticks;
+ if (total_ticks < idle_ticks) {
+ static bool did;
+ if (!did) {
+ printk(KERN_INFO"%s: t%u < i%u\n", __FUNCTION__, total_ticks, idle_ticks);
+ did = true;
+ }
+ load = 0;
+ } else
+ load = (100 * (total_ticks - idle_ticks)) / total_ticks;
/* Check for frequency increase */
if (load > dbs_tuners_ins.up_threshold) {
On Mon, 29 Jan 2007, Thomas Gleixner wrote:
> > I guess that it's caused by some timer changes (added Thomas and Ingo to
> > CC), which confuse the softlockup detector sense of time?
> Does the patch below fix this ?
It does.
Acked-by: Jiri Kosina <[email protected]>
--
Jiri Kosina
On Mon, 2007-01-29 at 17:22 +0100, Karsten Wiese wrote:
> Hi,
>
> with dynticks and highres_timers enabled, cpufreq_ondemand makes mess here on
> an AMD64 UP.
> cpufreq_ondemand assumes that jiffies advance at exactly the same pace as the
> sum of all kstat_cpu(cpu).cpustat.* members.
> This isn't the case here as dmesg output from patch below shows.
>
> Is cpufreq_ondemand correct assuming
> "jiffies advance at exactly the same pace as the
> sum of all kstat_cpu(cpu).cpustat.* members"?
> Or is "dynticks and highres_timers"'s behaviour of incrementing the
> sum of kstat_cpu(cpu).cpustat.* members faster than jiffies?
No it should not. /me investigates.
tglx
On Mon, 29 Jan 2007 11:21:41 +0000
Frederik Deweerdt <[email protected]> wrote:
> On Mon, Jan 29, 2007 at 12:12:07AM -0800, Andrew Morton wrote:
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.20-rc6/2.6.20-rc6-mm2/
> >
>
> Hi,
>
> The svc_pool_map_init_percpu() should get maxpool from the number of
> online cpus, not the number of nodes. The following BUG is triggered
> when we try to check if the cpu index is smaller than the number of nodes.
> (The system is multi cpu, single node).
>
> [ 133.196276] ------------[ cut here ]------------
> [ 133.196334] kernel BUG at net/sunrpc/svc.c:128!
> [ 133.196391] invalid opcode: 0000 [#1]
> [ 133.196444] PREEMPT SMP
> [ 133.196571] last sysfs file: /devices/pci0000:00/0000:00:00.0/class
> [ 133.196630] Modules linked in: nfsd exportfs lockd sunrpc ipv6 i2c_dev i2c_core video thermal sony_acpi processor fan button battery asus_acpi ac uhci_hcd ehci_hcd rng_core
> [ 133.197473] CPU: 0
> [ 133.197474] EIP: 0060:[<f8a5973c>] Not tainted VLI
> [ 133.197475] EFLAGS: 00010202 (2.6.20-rc6-mm2 #1)
> [ 133.197656] EIP is at svc_pool_map_init_percpu+0x54/0x5a [sunrpc]
> [ 133.197715] eax: 00000002 ebx: f8a762e4 ecx: 00000002 edx: 00000008
> [ 133.197776] esi: 00000002 edi: f8aa71e0 ebp: c2fd3edc esp: c2fd3ed4
> [ 133.197835] ds: 007b es: 007b fs: 00d8 gs: 0033 ss: 0068
> [ 133.197894] Process rpc.nfsd (pid: 3595, ti=c2fd2000 task=f7e22030 task.ti=c2fd2000)
> [ 133.197954] Stack: f8a7c081 00040000 c2fd3ee4 f8a597de c2fd3efc f8a59a55 c2fd3f10 00000000
> [ 133.198360] 00000008 00000801 c2fd3f54 f8a7c1ac f8a7c4e9 00000001 f8aa9480 fffdd1fe
> [ 133.198769] 00000292 f8aa9140 00015f90 0007dbcc 00078804 00000000 0000076e 00000008
> [ 133.199175] Call Trace:
> [ 133.199275] [<c010390d>] show_trace_log_lvl+0x1a/0x30
> [ 133.199373] [<c01039c4>] show_stack_log_lvl+0x8d/0xb1
> [ 133.199467] [<c0103bf1>] show_registers+0x1c0/0x336
> [ 133.199561] [<c0103efd>] die+0x11f/0x213
> [ 133.199654] [<c010406a>] do_trap+0x79/0xa7
> [ 133.199748] [<c010433b>] do_invalid_op+0xa3/0xad
> [ 133.199842] [<c03ee3a4>] error_code+0x7c/0x84
> [ 133.199936] [<f8a597de>] svc_pool_map_init+0x4c/0x60 [sunrpc]
> [ 133.200047] [<f8a59a55>] svc_create_pooled+0x14/0x44 [sunrpc]
> [ 133.200156] [<f8a7c1ac>] nfsd_create_serv+0x5a/0xd4 [nfsd]
> [ 133.200262] [<f8a7c498>] nfsd_svc+0x50/0xa1 [nfsd]
> [ 133.200364] [<f8a7ca1f>] write_svc+0x1a/0x20 [nfsd]
> [ 133.200466] [<f8a7c98a>] nfsctl_transaction_write+0x4a/0x6d [nfsd]
> [ 133.200571] [<c019f29e>] sys_nfsservctl+0xa3/0xe5
> [ 133.200666] [<c0102a94>] sysenter_past_esp+0x5d/0x99
> [ 133.200762] =======================
> [ 133.200816] Code: c1 77 22 83 fe 01 77 23 8b 43 0c ba 10 3f 54 c0 89 34 88 8b 43 08 89 0c b0 89 c8 83 c6 01 e8 4e 8f 7b c7 eb d7 5b 89 f0 5e 5d c3 <0f> 0b 89 f6 eb fc 55 ba 01 00 00 00 89 e5 56 31 f6 53 89 c3 e8
> [ 133.203330] EIP: [<f8a5973c>] svc_pool_map_init_percpu+0x54/0x5a [sunrpc] SS:ESP 0068:c2fd3ed4
>
> The following patch fixes the problem for me.
>
> Regards,
> Frederik
>
>
> Signed-off-by: Frederik Deweerdt <[email protected]>
>
> diff --git a/net/sunrpc/svc.c b/net/sunrpc/svc.c
> index c8c7c55..a553f9f 100644
> --- a/net/sunrpc/svc.c
> +++ b/net/sunrpc/svc.c
> @@ -115,7 +115,7 @@ fail:
> static int
> svc_pool_map_init_percpu(struct svc_pool_map *m)
> {
> - unsigned int maxpools = nr_node_ids;
> + unsigned int maxpools = num_online_cpus();
> unsigned int pidx = 0;
> unsigned int cpu;
> int err;
Thanks.
Christoph, can you pleeeeeze be more careful? A few seconds inattention
and a dopey copy-n-paste bug leads to large amounts of wasted time for
other people.
I have a consistent problem running 'make modules_install' after compiling. The
directory structure forms in /lib/modules, but no modules install. This problem
showed up under -rc6-mm1 and -rc6-mm2, but not -rc6. I'm hoping somebody has
hit this before, otherwise it's git-bisect time.
Process is what I have been given to understand as proper: untar, patch,
configure and make as $USER, make modules_install as root. I'm on a new
Slackware-11.0 install (glibc 2.3.6, gcc 3.4.6, module-init-tools 3.2.2),
running linux-2.6.20-rc6. 'make' runs fine, no errors that I can tell.
The output of 'make modules_install' goes something like this:
(... sequence of same for all modules ...)
INSTALL sound/core/snd-page-alloc.ko
cp: cannot stat `sound/core/snd-page-alloc.ko': No such file or directory
INSTALL sound/core/seq/snd-seq.ko
cp: cannot stat `sound/core/seq/snd-seq.ko': No such file or directory
INSTALL sound/core/snd-rtctimer.ko
cp: cannot stat `sound/core/snd-rtctimer.ko': No such file or directory
INSTALL sound/core/snd-timer.ko
cp: cannot stat `sound/core/snd-timer.ko': No such file or directory
INSTALL sound/drivers/snd-virmidi.ko
cp: cannot stat `sound/drivers/snd-virmidi.ko': No such file or directory
INSTALL sound/pci/ac97/snd-ac97-codec.ko
cp: cannot stat `sound/pci/ac97/snd-ac97-codec.ko': No such file or directory
INSTALL sound/core/snd.ko
cp: cannot stat `sound/core/snd.ko': No such file or directory
INSTALL sound/drivers/snd-dummy.ko
cp: cannot stat `sound/drivers/snd-dummy.ko': No such file or directory
INSTALL sound/pci/hda/snd-hda-codec.ko
cp: cannot stat `sound/pci/hda/snd-hda-codec.ko': No such file or directory
INSTALL sound/pci/hda/snd-hda-intel.ko
cp: cannot stat `sound/pci/hda/snd-hda-intel.ko': No such file or directory
INSTALL sound/pci/snd-intel8x0.ko
cp: cannot stat `sound/pci/snd-intel8x0.ko': No such file or directory
INSTALL sound/soundcore.ko
cp: cannot stat `sound/soundcore.ko': No such file or directory
if [ -r System.map -a -x /sbin/depmod ]; then /sbin/depmod -ae -F System.map
2.6.20-rc6-mm2; fi
I have retrieved clean files to make clean trees, and that's not it. I've tried
making everything as root, and that's not it. I'm going to keep trying, but
hopefully someone already knows and can tell me what I'm doing wrong or why this
keeps failing.
Thanks!
Matt Frost
On Mon, 29 Jan 2007, Andrew Morton wrote:
> > static int
> > svc_pool_map_init_percpu(struct svc_pool_map *m)
> > {
> > - unsigned int maxpools = nr_node_ids;
> > + unsigned int maxpools = num_online_cpus();
> > unsigned int pidx = 0;
> > unsigned int cpu;
> > int err;
>
> Thanks.
Patch has the wrong solution as detailed in another message.
The line should be reverted to what it was before:
unsigned int maxpools = highest_possible_processor_id()+1;
> Christoph, can you pleeeeeze be more careful? A few seconds inattention
> and a dopey copy-n-paste bug leads to large amounts of wasted time for
> other people.
Looks like I need to add another nr_cpu_ids? I did not realize that the
same weird thing was done for cpus, sigh.
Le 29.01.2007 09:12, Andrew Morton a ?crit :
> Temporarily at
>
> http://userweb.kernel.org/~akpm/2.6.20-rc6-mm2/
>
> Will appear later at
>
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.20-rc6/2.6.20-rc6-mm2/
>
>
>
> - Dropped git-block due to CFQ breakage
Nice, reiser4 does work now. It was broken since 2.6.20-rc3-mm1, see
http://lkml.org/lkml/2007/1/6/57.
> - Dropped the fsaio patches due to their dependence on git-block.
>
> - Added the new hrtimers/dynticks patches. This is an update of the
> 2.6.20-rc4-mm1 patches, now apparently fixed.
thanks
~~
laurent
The utsname stuff has been moved from kernel/sysctl.c to the new file
utsname_sysctl.c. Let's use it...
Signed-off-by: Laurent Riffard <[email protected]>
---
Index: linux-2.6-mm/kernel/Makefile
===================================================================
--- linux-2.6-mm.orig/kernel/Makefile
+++ linux-2.6-mm/kernel/Makefile
@@ -8,7 +8,8 @@ obj-y = sched.o fork.o exec_domain.o
signal.o sys.o kmod.o workqueue.o pid.o \
extable.o params.o posix-timers.o \
kthread.o wait.o kfifo.o sys_ni.o posix-cpu-timers.o mutex.o \
- hrtimer.o rwsem.o latency.o nsproxy.o rcupdate.o srcu.o utsname.o
+ hrtimer.o rwsem.o latency.o nsproxy.o rcupdate.o srcu.o utsname.o \
+ utsname_sysctl.o
obj-$(CONFIG_STACKTRACE) += stacktrace.o
obj-y += time/
Thomas Gleixner napisa?(a):
> On Mon, 2007-01-29 at 12:02 +0100, Jiri Kosina wrote:
>> I guess that it's caused by some timer changes (added Thomas and Ingo to
>> CC), which confuse the softlockup detector sense of time?
>
> Does the patch below fix this ?
>
I had similar bug while resume, this patch also help. I attach config,
dmesg (after add patch) and lspci.
--
Maciej Rutecki <[email protected]>
http://www.unixy.pl
LTG - Linux Testers Group
(http://www.stardust.webpages.pl/ltg/wiki/)
On Mon, Jan 29, 2007 at 09:49:50AM -0800, Christoph Lameter wrote:
> On Mon, 29 Jan 2007, Andrew Morton wrote:
>
> > > static int
> > > svc_pool_map_init_percpu(struct svc_pool_map *m)
> > > {
> > > - unsigned int maxpools = nr_node_ids;
> > > + unsigned int maxpools = num_online_cpus();
> > > unsigned int pidx = 0;
> > > unsigned int cpu;
> > > int err;
> >
> > Thanks.
>
> Patch has the wrong solution as detailed in another message.
>
> The line should be reverted to what it was before:
>
> unsigned int maxpools = highest_possible_processor_id()+1;
>
Tested it, works as expected. Bit late I know :)
Regards,
Frederik
Laurent Riffard <[email protected]> writes:
> The utsname stuff has been moved from kernel/sysctl.c to the new file
> utsname_sysctl.c. Let's use it...
>
> Signed-off-by: Laurent Riffard <[email protected]>
Hmm. Maybe something got lost along the way but I have this
line in my kernel/Makefile and in the patch I sent out.
obj-$(CONFIG_SYSCTL) += utsname_sysctl.o
Do you not have that? What problem are you seeing?
Eric
Le 30.01.2007 16:11, Eric W. Biederman a ?crit :
> Laurent Riffard <[email protected]> writes:
>
>> The utsname stuff has been moved from kernel/sysctl.c to the new file
>> utsname_sysctl.c. Let's use it...
>>
>> Signed-off-by: Laurent Riffard <[email protected]>
>
> Hmm. Maybe something got lost along the way but I have this
> line in my kernel/Makefile and in the patch I sent out.
>
> obj-$(CONFIG_SYSCTL) += utsname_sysctl.o
>
> Do you not have that?
mmm...
linux-2.6-mm$ grep SYSCTL kernel/Makefile
linux-2.6-mm$ echo $?
1
linux-2.6-mm$ grep SYSCTL .config
CONFIG_SYSVIPC_SYSCTL=y
CONFIG_SYSCTL=y
CONFIG_SYSCTL_SYSCALL=y
CONFIG_PROC_SYSCTL=y
tmp$ grep "obj-\$(CONFIG_SYSCTL)" broken-out/*
tmp$ echo $?
1
tmp$
> What problem are you seeing?
Some /proc files were lacking:
/proc/sys/kernel/{osrelease|osrelease|version|...}.
--
laurent
On Mon, Jan 29, 2007 at 12:12:07AM -0800, Andrew Morton wrote:
>...
> Changes since 2.6.20-rc6-mm1:
>...
> +add-debugging-feature-proc-timer_stat.patch
>...
> New hrtimers/dynticks patches
>...
nr_entries can become static.
Signed-off-by: Adrian Bunk <[email protected]>
--- linux-2.6.20-rc6-mm3/kernel/time/timer_stats.c.old 2007-02-06 10:27:13.000000000 +0100
+++ linux-2.6.20-rc6-mm3/kernel/time/timer_stats.c 2007-02-06 10:27:31.000000000 +0100
@@ -112,7 +112,7 @@
#define MAX_ENTRIES_BITS 10
#define MAX_ENTRIES (1UL << MAX_ENTRIES_BITS)
-unsigned long nr_entries;
+static unsigned long nr_entries;
static struct entry entries[MAX_ENTRIES];
static atomic_t overflow_count;
* Adrian Bunk <[email protected]> wrote:
> On Mon, Jan 29, 2007 at 12:12:07AM -0800, Andrew Morton wrote:
> >...
> > Changes since 2.6.20-rc6-mm1:
> >...
> > +add-debugging-feature-proc-timer_stat.patch
> >...
> > New hrtimers/dynticks patches
> >...
>
>
> nr_entries can become static.
>
> Signed-off-by: Adrian Bunk <[email protected]>
thanks,
Acked-by: Ingo Molnar <[email protected]>
Ingo