public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* 2.5.61-mm1
@ 2003-02-15  7:13 Andrew Morton
  2003-02-15  7:25 ` 2.5.61-mm1 Nick Piggin
                   ` (4 more replies)
  0 siblings, 5 replies; 11+ messages in thread
From: Andrew Morton @ 2003-02-15  7:13 UTC (permalink / raw)
  To: linux-kernel, linux-mm


http://www.kernel.org/pub/linux/kernel/people/akpm/patches/2.5/2.5.61/2.5.61-mm1/

. Jens has fixed the request queue aliasing problem and we are no longer
  able to break the IO scheduler.  This was preventing the OSDL team from
  running dbt2 against recent kernels, so hopefully that is all fixed up now.

. The anticipatory scheduler is performing well.  I've included that now.

. Also included the CFQ I/O scheduler.  The kernel defaults to using the
  deadline/anticipatory scheduler.  Select CFQ by adding "elevator=cfq" to
  the kernel command line.  Do "dmesg|grep elevator" to see which one you
  are using.

. There is an updated version of the reiserfs_file_write patch here.  This
  patch addresses CPU efficiency when performing appending writes (ie: the
  usual sort).

  To do this, it requires that userspace pass "large" amounts of data into
  the write() system call.  So the filesystem returns a value of 128k in the
  stat.st_blksize field from the stat(2) system call.  In the hope that some
  applications are using that kernel-provided hint.

  Turns out that some parts of KDE (kmail, at least) were indeed using this
  hint, and it triggers a nasty bug in (at least) kmail: it is reading the
  same 128k of the file again and again and again.  It runs like a dog.
  Ed Tomlinson upgraded his KDE/kmail version and this problem went away.

  So that is something for reiserfs users to keep an eye on.



Changes since 2.5.60-mm2:


-smctr-fix.patch

 Merged

+deadline-alias-3.patch

 Fix an elevator aliasing bug (was causing direct-io lockups and oopses)

+linear-gcc-workaround.patch

 Work around a gcc-2.95.3 ICE in drivers/md/linear.c

+flush_tlb_all-preempt-safety.patch

 Make flush_tlb_all preempt+SMP-safe

-reiserfs_file_write.patch
+reiserfs_file_write-3.patch

 Updated

+tcp-wakeups.patch

 Resurrect this patch which uses faster wakeups in ipv4.  Worth 2% in a
 famous web serving benchmark on an 8-way.

-deadline-hash-fix.patch

 Obsoleted.

-cciss-2.patch
-cciss-3.patch
-cciss-5.patch
-cciss-6.patch
-cciss-7.patch
-cciss-8.patch
-cciss-9.patch
-cciss-10.patch
-cciss-11.patch

 Merged into ciss-1.patch

+cciss-overrun-fix.patch

 Fix a cciss_scsi bug

+ext3_debug-fix.patch

 Fix ext3 build when EXT3_DEBUG is defined

+visws-1.patch
+visws-2.patch
+visws-3.patch
+visws-4.patch
+visws-5.patch
+visws-6.patch
+visws-7.patch
+visws-8.patch
+visws-9.patch
+visws-10.patch
+visws-11.patch
+visws-12.patch
+visws-13.patch

 Resurrect visws support

+profiling-cleanup.patch

 Consolidate kernel profiling code

+remove-unused-congestion-stuff.patch

 Hugh keeps deleting all my lovely code.

+fix-Wundef.patch

 Clean up the build with -Wundef

+scsi-fix-NCR53C9x.patch

 Build fix

+radix_tree_maxindex-cleanup.patch

 radix-tree simplification and cleanup

+tty-module-refcounting.patch

 New module refcounting for the tty layer

+anticipatory_io_scheduling.patch
-ant-sched-9feb.patch
-ant-sched-12feb.patch

 Rolled-up anticipatory scheduler diff

+cfq-2.patch

 Complete Fair Queueing for the disk scheduler

+elevator-selection.patch

 Allow CFQ to be selected with "elevator=cfq" on the kernel boot
 commandline.



All 78 patches:

kgdb.patch

deadline-alias-3.patch

ppc64-reloc_hide.patch

ppc64-time-warning.patch
  kill ppc64 unused var warning

xfs-warning-fixes.patch

xfs-cli-fix.patch
  xfs interrupt flags fix

ppc64-smp_prepare_cpus-warning.patch
  ppc64: fix warning

report-lost-ticks.patch
  make lost-tick detection more informative

devfs-fix.patch

ptrace-flush.patch
  Subject: [PATCH] ptrace on 2.5.44

buffer-debug.patch
  buffer.c debugging

warn-null-wakeup.patch

jfs-build-fix.patch
  JFS build fix with gcc-2.95.3

ext3-truncate-ordered-pages.patch
  ext3: explicitly free truncated pages

linear-gcc-workaround.patch
  work around gcc-2.95.3 internal compler error in linear.c

flush_tlb_all-preempt-safety.patch
  Subject: [PATCH][2.5] flush_tlb_all is not preempt safe.

mandlock-fix.patch
  Fix mandatory locking

fault_in_pages-move.patch
  move fault_in_pages_readable/writeable to header

generic_write_checks.patch
  separate checks from generic_file_aio_write

reiserfs_file_write-3.patch

ext3-eio-fix.patch
  fix ext3 BUG due to race with truncate

tcp-wakeups.patch
  Use fast wakeups in TCP/IPV4

deadline-np-42.patch
  (undescribed patch)

deadline-np-43.patch
  (undescribed patch)

batch-tuning.patch
  I/O scheduler tuning

starvation-by-read-fix.patch
  fix starvation-by-readers in the IO scheduler

crc32-speedup.patch
  crc32 improvements for 2.5

scheduler-tunables.patch
  scheduler tunables

sched-f3.patch
  scheduler F3-updated

rml-scheduler-bits.patch
  scheduler bits

lockd-lockup-fix.patch
  Subject: Re: Fw: Re: 2.4.20 NFS server lock-up (SMP)

rcu-stats.patch
  RCU statistics reporting

dcache_rcu-fast_walk-revert.patch
  dcache_rcu: revert fast_walk code

dcache_rcu-main.patch
  dcache_rcu

smalldevfs.patch
  smalldevfs

ext3-journalled-data-assertion-fix.patch
  Remove incorrect assertion from ext3

nfs-speedup.patch

nfs-oom-fix.patch
  nfs oom fix

sk-allocation.patch
  Subject: Re: nfs oom

nfs-more-oom-fix.patch

nfs-sendfile.patch
  Implement sendfile() for NFS

rpciod-atomic-allocations.patch
  Make rcpiod use atomic allocations

put_page-speedup.patch
  hugetlb put_page speedup

kernel_lock_bug2.patch

ext2_ext3_listxattr-bug.patch
  xattr: listxattr fix

xattr-flags.patch
  xattr: infrastructure for permission overrides

xattr-flags-policy.patch
  xattr: allow kernel code to override EA permissions

xattr-trusted.patch
  xattr: trusted extended attributes

balance_dirty_pages-lockup-fix.patch
  blk_congestion_wait tuning and lockup fix

cciss-1.patch
  make cciss driver compile

cciss-overrun-fix.patch
  Subject: [PATCH] 2.5.60, cciss, fix array bounds overrun

direct-io-retval-fix.patch
  direct-io return value fix

dio-eof-read.patch
  direct-io: allow reading of the part-filled EOF block

linux-isp.patch

linux-isp-update.patch

ext3_debug-fix.patch
  Fix ext3 build when EXT#_DEBUG is defined

visws-1.patch
  visws: allow SMP kernel build without io_apic.c (1/13)

visws-2.patch
  visws: export some functions from i8259.c (2/13)

visws-3.patch
  visws: make startup_32 kernel entry point (3/13)

visws-4.patch
  visws: export boottime gdt descriptor (4/13)

visws-5.patch
  visws: boot changes (5/13)

visws-6.patch
  Subject: [PATCH] visws: move header file into asm/arch-visws (6/13)

visws-7.patch
  visws: add missing mach_apic.h file (7/13)

visws-8.patch
  visws: pci support (8/13)

visws-9.patch
  visws: core (9/13)

visws-10.patch
  visws: framebuffer driver update (10/13)

visws-11.patch
  visws: sound update (11/13)

visws-12.patch
  visws: MAINTAINERS file update (12/13)

visws-13.patch
  visws: i386/KConfig update (13/13)

profiling-cleanup.patch
  Subject: [PATCH]: consolidate and cleanup profiling code.

remove-unused-congestion-stuff.patch
  Subject: [PATCH] remove unused congestion stuff

fix-Wundef.patch
  Make the world safe for -Wundef

scsi-fix-NCR53C9x.patch
  fix compile breakage on drivers/scsi/NCR53C9x.c

radix_tree_maxindex-cleanup.patch
  Use table lookup for radix_tree_maxindex()

tty-module-refcounting.patch
  TYT module refcounting fix

anticipatory_io_scheduling.patch
  Subject: [PATCH] 2.5.59-mm3 antic io sched

cfq-2.patch
  CFQ scheduler, #2

elevator-selection.patch
  boot-time selection of disk elevator type



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: 2.5.61-mm1
  2003-02-15  7:13 2.5.61-mm1 Andrew Morton
@ 2003-02-15  7:25 ` Nick Piggin
  2003-02-15 11:27 ` 2.5.61-mm1 Con Kolivas
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 11+ messages in thread
From: Nick Piggin @ 2003-02-15  7:25 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, linux-mm

Andrew Morton wrote:

>http://www.kernel.org/pub/linux/kernel/people/akpm/patches/2.5/2.5.61/2.5.61-mm1/
>
>. Jens has fixed the request queue aliasing problem and we are no longer
>  able to break the IO scheduler.  This was preventing the OSDL team from
>  running dbt2 against recent kernels, so hopefully that is all fixed up now.
>
>. The anticipatory scheduler is performing well.  I've included that now.
>
And for those interested, if you find unusual IO performance,
please try disabling AS and reporting results. Thanks.

echo 0 > /sys/block/?/iosched/antic_expire

This value defaults to 10 (ms). More than around 20 might do
funny though not harmful stuff due to a fragile bitshift.

Nick



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: 2.5.61-mm1
  2003-02-15  7:13 2.5.61-mm1 Andrew Morton
  2003-02-15  7:25 ` 2.5.61-mm1 Nick Piggin
@ 2003-02-15 11:27 ` Con Kolivas
  2003-02-15 23:41   ` 2.5.61-mm1 Andrew Morton
  2003-02-15 14:29 ` 2.5.61-mm1 Ed Tomlinson
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 11+ messages in thread
From: Con Kolivas @ 2003-02-15 11:27 UTC (permalink / raw)
  To: linux-kernel; +Cc: Andrew Morton

I'm getting the same problem as 2.5.60-mm2 during boot:

bad: scheduling while atomic!
Call Trace:
 [<c0112ab1>] do_schedule+0x3d/0x2f4
 [<c0112fb5>] wait_for_completion+0x8d/0xd0
 [<c0112dac>] default_wake_function+0x0/0x1c
 [<c0112dac>] default_wake_function+0x0/0x1c
 [<c0122219>] create_workqueue+0x125/0x178
 [<c010508e>] init+0x2a/0x17c
 [<c0105064>] init+0x0/0x17c
 [<c0106e5d>] kernel_thread_helper+0x5/0xc

aio_setup: sizeof(struct page) = 40
Journalled Block Device driver loaded
bad: scheduling while atomic!
Call Trace:
 [<c0112ab1>] do_schedule+0x3d/0x2f4
 [<c0112fb5>] wait_for_completion+0x8d/0xd0
 [<c0112dac>] default_wake_function+0x0/0x1c
 [<c0112dac>] default_wake_function+0x0/0x1c
 [<c010508e>] init+0x2a/0x17c
 [<c0105064>] init+0x0/0x17c
 [<c0106e5d>] kernel_thread_helper+0x5/0xc

bad: scheduling while atomic!
Call Trace:
 [<c0112ab1>] do_schedule+0x3d/0x2f4
 [<c0112fb5>] wait_for_completion+0x8d/0xd0
 [<c0112dac>] default_wake_function+0x0/0x1c
 [<c0112dac>] default_wake_function+0x0/0x1c
 [<c010508e>] init+0x2a/0x17c
 [<c0105064>] init+0x0/0x17c
 [<c0106e5d>] kernel_thread_helper+0x5/0xc

bad: scheduling while atomic!
Call Trace:
 [<c0112ab1>] do_schedule+0x3d/0x2f4
 [<c0112fb5>] wait_for_completion+0x8d/0xd0
 [<c0112dac>] default_wake_function+0x0/0x1c
 [<c0112dac>] default_wake_function+0x0/0x1c
 [<c010508e>] init+0x2a/0x17c
 [<c0105064>] init+0x0/0x17c
 [<c0106e5d>] kernel_thread_helper+0x5/0xc

SGI XFS for Linux 2.5.61-mm1 with no debug enabled
bad: scheduling while atomic!
Call Trace:
 [<c0112ab1>] do_schedule+0x3d/0x2f4
 [<c0112fb5>] wait_for_completion+0x8d/0xd0
 [<c0112dac>] default_wake_function+0x0/0x1c
 [<c0112dac>] default_wake_function+0x0/0x1c
 [<c0122219>] create_workqueue+0x125/0x178
 [<c021711f>] pagebuf_daemon_start+0xb/0x4c
 [<c0161a4a>] create_proc_entry+0x9a/0xb4
 [<c0151d2b>] register_filesystem+0x3b/0x70
 [<c010508e>] init+0x2a/0x17c
 [<c0105064>] init+0x0/0x17c
 [<c0106e5d>] kernel_thread_helper+0x5/0xc

Serial: 8250/16550 driver $Revision: 1.90 $ IRQ sharing enabled
tts/0 at I/O 0x3f8 (irq = 4) is a 16550A
tts/1 at I/O 0x2f8 (irq = 3) is a 16550A
pty: 256 Unix98 ptys configured
Real Time Clock Driver v1.11
Non-volatile memory driver v1.2
using deadline elevator
Intel(R) PRO/100 Network Driver - version 2.1.29-k4
Copyright (c) 2002 Intel Corporation

PCI: Found IRQ 11 for device 00:04.0
bad: scheduling while atomic!
Call Trace:
 [<c0112ab1>] do_schedule+0x3d/0x2f4
 [<c011b977>] add_timer+0x11b/0x120
 [<c011c4e8>] schedule_timeout+0x84/0xac
 [<c011c458>] process_timeout+0x0/0xc
 [<c024e944>] e100_selftest+0x58/0xb0
 [<c02297d9>] pci_device_probe+0x41/0x5c
 [<c02302b3>] bus_match+0x37/0x60
 [<c0230374>] driver_attach+0x3c/0x5c
 [<c0230602>] bus_add_driver+0xa6/0xd8
 [<c023093c>] driver_register+0x34/0x38
 [<c02298d2>] pci_register_driver+0x42/0x54
 [<c010508e>] init+0x2a/0x17c
 [<c0105064>] init+0x0/0x17c
 [<c0106e5d>] kernel_thread_helper+0x5/0xc

bad: scheduling while atomic!
Call Trace:
 [<c0112ab1>] do_schedule+0x3d/0x2f4
 [<c011b977>] add_timer+0x11b/0x120
 [<c011c4e8>] schedule_timeout+0x84/0xac
 [<c011c458>] process_timeout+0x0/0xc
 [<c02297d9>] pci_device_probe+0x41/0x5c
 [<c02302b3>] bus_match+0x37/0x60
 [<c0230374>] driver_attach+0x3c/0x5c
 [<c0230602>] bus_add_driver+0xa6/0xd8
 [<c023093c>] driver_register+0x34/0x38
 [<c02298d2>] pci_register_driver+0x42/0x54
 [<c010508e>] init+0x2a/0x17c
 [<c0105064>] init+0x0/0x17c
 [<c0106e5d>] kernel_thread_helper+0x5/0xc

Freeing alive device c13a6000, eth%d
alloc_skb called nonatomically from interrupt c027a74c
------------[ cut here ]------------
kernel BUG at net/core/skbuff.c:178!
invalid operand: 0000
CPU:    0
EIP:    0060:[<c0271823>]    Not tainted
EFLAGS: 00010246
EIP is at alloc_skb+0x43/0x1a4
eax: 0000003a   ebx: c038adc0   ecx: c02f5308   edx: 00000296
esi: c13a6000   edi: 000000d0   ebp: c13a6000   esp: c129feac
ds: 007b   es: 007b   ss: 0068
Process swapper (pid: 1, threadinfo=c129e000 task=c129c040)
Stack: c02ea8c0 c027a74c c038adc0 c13a6000 00000005 c027a74c 00000f60 000000d0
       c038adc0 c027abfe 00000010 c13a6000 ffffffff c011f9fa c038adc0 00000005
       c13a6000 c129e000 c03888e1 c0388908 c0276470 c04111c4 00000005 c13a6000
Call Trace:
 [<c027a74c>] rtmsg_ifinfo+0x10/0x78
 [<c027a74c>] rtmsg_ifinfo+0x10/0x78
 [<c027abfe>] rtnetlink_event+0x36/0x3c
 [<c011f9fa>] notifier_call_chain+0x1e/0x38
 [<c0276470>] register_netdevice+0x168/0x174
 [<c0255c0e>] register_netdev+0x5e/0x70
 [<c02297d9>] pci_device_probe+0x41/0x5c
 [<c02302b3>] bus_match+0x37/0x60
 [<c0230374>] driver_attach+0x3c/0x5c
 [<c0230602>] bus_add_driver+0xa6/0xd8
 [<c023093c>] driver_register+0x34/0x38
 [<c02298d2>] pci_register_driver+0x42/0x54
 [<c010508e>] init+0x2a/0x17c
 [<c0105064>] init+0x0/0x17c
 [<c0106e5d>] kernel_thread_helper+0x5/0xc

Code: 0f 0b b2 00 63 a8 2e c0 83 c4 08 83 e7 ef 31 c0 9c 59 fa be
 <0>Kernel panic: Aiee, killing interrupt handler!
In interrupt handler - not syncing

Con

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: 2.5.61-mm1
  2003-02-15  7:13 2.5.61-mm1 Andrew Morton
  2003-02-15  7:25 ` 2.5.61-mm1 Nick Piggin
  2003-02-15 11:27 ` 2.5.61-mm1 Con Kolivas
@ 2003-02-15 14:29 ` Ed Tomlinson
  2003-02-16  0:12 ` 2.5.61-mm1 James H. Cloos Jr.
  2003-02-17 22:44 ` 2.5.61-mm1 Cliff White
  4 siblings, 0 replies; 11+ messages in thread
From: Ed Tomlinson @ 2003-02-15 14:29 UTC (permalink / raw)
  To: linux-kernel, linux-mm

On February 15, 2003 02:13 am, Andrew Morton wrote:
>   Turns out that some parts of KDE (kmail, at least) were indeed using this
>   hint, and it triggers a nasty bug in (at least) kmail: it is reading the
>   same 128k of the file again and again and again.  It runs like a dog.
>   Ed Tomlinson upgraded his KDE/kmail version and this problem went away.

The versions of kmail involved were 3.04, which manifests the bug when switching
between folders with lots of entries (10,000+).  The kmail in kde 3.1 does not
have this problem.

Ed Tomlinson


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: 2.5.61-mm1
  2003-02-15 11:27 ` 2.5.61-mm1 Con Kolivas
@ 2003-02-15 23:41   ` Andrew Morton
  2003-02-16  1:03     ` 2.5.61-mm1 Con Kolivas
  0 siblings, 1 reply; 11+ messages in thread
From: Andrew Morton @ 2003-02-15 23:41 UTC (permalink / raw)
  To: Con Kolivas; +Cc: linux-kernel

Con Kolivas <kernel@kolivas.org> wrote:
>
> I'm getting the same problem as 2.5.60-mm2 during boot:
> 
> bad: scheduling while atomic!
> Call Trace:
>  [<c0112ab1>] do_schedule+0x3d/0x2f4
>  [<c0112fb5>] wait_for_completion+0x8d/0xd0
>  [<c0112dac>] default_wake_function+0x0/0x1c
>  [<c0112dac>] default_wake_function+0x0/0x1c
>  [<c0122219>] create_workqueue+0x125/0x178
>  [<c010508e>] init+0x2a/0x17c
>  [<c0105064>] init+0x0/0x17c
>  [<c0106e5d>] kernel_thread_helper+0x5/0xc

This appears to be due to smalldevfs disagreeing with dcache_rcu over
dcache_lock conventions.

I'll drop out smalldevfs until Adam returns, and has time to look at it,
Thanks.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: 2.5.61-mm1
  2003-02-15  7:13 2.5.61-mm1 Andrew Morton
                   ` (2 preceding siblings ...)
  2003-02-15 14:29 ` 2.5.61-mm1 Ed Tomlinson
@ 2003-02-16  0:12 ` James H. Cloos Jr.
  2003-02-16  0:29   ` 2.5.61-mm1 Andrew Morton
  2003-02-17 22:44 ` 2.5.61-mm1 Cliff White
  4 siblings, 1 reply; 11+ messages in thread
From: James H. Cloos Jr. @ 2003-02-16  0:12 UTC (permalink / raw)
  To: linux-kernel

I just tried 2.5.61 and 2.5.61-mm1 on a dell inspiron 8100.

2.5.61 is working OK, but -mm1 hung as soon as it tried to exec init.
init=/bin/bash showed the same failure.

init(8) was able to print out it's first line, announcing its version
but then stopped.  with init=/bin/bash bash did not output anything.

-JimC




^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: 2.5.61-mm1
  2003-02-16  0:12 ` 2.5.61-mm1 James H. Cloos Jr.
@ 2003-02-16  0:29   ` Andrew Morton
  2003-02-17 11:38     ` 2.5.61-mm1 Maneesh Soni
  0 siblings, 1 reply; 11+ messages in thread
From: Andrew Morton @ 2003-02-16  0:29 UTC (permalink / raw)
  To: James H. Cloos Jr.; +Cc: linux-kernel

"James H. Cloos Jr." <cloos@jhcloos.com> wrote:
>
> I just tried 2.5.61 and 2.5.61-mm1 on a dell inspiron 8100.
> 
> 2.5.61 is working OK, but -mm1 hung as soon as it tried to exec init.
> init=/bin/bash showed the same failure.
> 
> init(8) was able to print out it's first line, announcing its version
> but then stopped.  with init=/bin/bash bash did not output anything.
> 

If you are using devfs then yes, there is a locking problem.

If you are not using devfs then please send me your .config.

Thanks.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: 2.5.61-mm1
  2003-02-15 23:41   ` 2.5.61-mm1 Andrew Morton
@ 2003-02-16  1:03     ` Con Kolivas
  0 siblings, 0 replies; 11+ messages in thread
From: Con Kolivas @ 2003-02-16  1:03 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

On Sun, 16 Feb 2003 10:41 am, Andrew Morton wrote:
> Con Kolivas <kernel@kolivas.org> wrote:
> > I'm getting the same problem as 2.5.60-mm2 during boot:
> >
> > bad: scheduling while atomic!
> > Call Trace:
> >  [<c0112ab1>] do_schedule+0x3d/0x2f4
> >  [<c0112fb5>] wait_for_completion+0x8d/0xd0
> >  [<c0112dac>] default_wake_function+0x0/0x1c
> >  [<c0112dac>] default_wake_function+0x0/0x1c
> >  [<c0122219>] create_workqueue+0x125/0x178
> >  [<c010508e>] init+0x2a/0x17c
> >  [<c0105064>] init+0x0/0x17c
> >  [<c0106e5d>] kernel_thread_helper+0x5/0xc
>
> This appears to be due to smalldevfs disagreeing with dcache_rcu over
> dcache_lock conventions.
>
> I'll drop out smalldevfs until Adam returns, and has time to look at it,

Backing out that patch fixes it thanks.

Con

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: 2.5.61-mm1
  2003-02-17 11:38     ` 2.5.61-mm1 Maneesh Soni
@ 2003-02-17 11:29       ` Andrew Morton
  0 siblings, 0 replies; 11+ messages in thread
From: Andrew Morton @ 2003-02-17 11:29 UTC (permalink / raw)
  To: maneesh; +Cc: cloos, linux-kernel, adam, kernel

Maneesh Soni <maneesh@in.ibm.com> wrote:
>
> The following patch should enable smalldevfs to work with dcache_rcu.

I suspected this might happen ;)  Many thanks.


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: 2.5.61-mm1
  2003-02-16  0:29   ` 2.5.61-mm1 Andrew Morton
@ 2003-02-17 11:38     ` Maneesh Soni
  2003-02-17 11:29       ` 2.5.61-mm1 Andrew Morton
  0 siblings, 1 reply; 11+ messages in thread
From: Maneesh Soni @ 2003-02-17 11:38 UTC (permalink / raw)
  To: Andrew Morton; +Cc: James H. Cloos Jr., linux-kernel, adam, kernel

On Sun, Feb 16, 2003 at 12:31:31AM +0000, Andrew Morton wrote:
> "James H. Cloos Jr." <cloos@jhcloos.com> wrote:
> >
> > I just tried 2.5.61 and 2.5.61-mm1 on a dell inspiron 8100.
> > 
> > 2.5.61 is working OK, but -mm1 hung as soon as it tried to exec init.
> > init=/bin/bash showed the same failure.
> > 
> > init(8) was able to print out it's first line, announcing its version
> > but then stopped.  with init=/bin/bash bash did not output anything.
> > 
> 
> If you are using devfs then yes, there is a locking problem.
> 
> If you are not using devfs then please send me your .config.
> 
> Thanks.

Hello Andrew,

The following patch should enable smalldevfs to work with dcache_rcu. The
locking problem is because smalldevfs is written keeping fastwalk
in mind where as dcache_rcu backs out fastwalk code to 2.5.10 level.

Patch is based on 2.5.61-mm1.

Regards,
Maneesh

dcache_rcu-smalldevfs.patch

diff -urN linux-2.5.61-mm1/fs/devfs/base.c linux-2.5.61-mm1-smalldevfs-dcache_rcu/fs/devfs/base.c
--- linux-2.5.61-mm1/fs/devfs/base.c	2003-02-17 12:04:54.000000000 +0530
+++ linux-2.5.61-mm1-smalldevfs-dcache_rcu/fs/devfs/base.c	2003-02-17 12:29:46.000000000 +0530
@@ -60,8 +60,7 @@
 		memcpy(buf, *path, len);
 		buf[len] = '\0';
 
-		spin_lock(&dcache_lock);
-		err = link_path_walk(buf, nd); /* releases dcache_lock */
+		err = link_path_walk(buf, nd); 
 
 		if (err)
 			return err;
@@ -101,14 +100,13 @@
 
 	memset(&nd, 0, sizeof(nd));
 	nd.flags = LOOKUP_PARENT;
-	nd.mnt = devfs_vfsmount;
-	nd.dentry = dir;
+	nd.mnt = mntget(devfs_vfsmount);
+	nd.dentry = dget(dir);
 
 	err = walk_parents_mkdir(&name, &nd, is_dir);
 	if (err)
 		return err;
 
-	spin_lock(&dcache_lock);
 	err = link_path_walk(name, &nd);
 	if (err)
 		return err;
@@ -247,10 +245,9 @@
 	buf[sizeof(buf)-1] = '\0';
 
 	memset(&nd, 0, sizeof(nd));
-	nd.mnt = devfs_vfsmount;
-	nd.dentry = devfs_vfsmount->mnt_sb->s_root;
+	nd.mnt = mntget(devfs_vfsmount);
+	nd.dentry = dget(devfs_vfsmount->mnt_sb->s_root);
 
-	spin_lock(&dcache_lock);
 	err = link_path_walk(buf, &nd);
 	if (!err) {
 		devfs_unregister(nd.dentry);


-- 
Maneesh Soni
IBM Linux Technology Center, 
IBM India Software Lab, Bangalore.
Phone: +91-80-5044999 email: maneesh@in.ibm.com
http://lse.sourceforge.net/

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: 2.5.61-mm1
  2003-02-15  7:13 2.5.61-mm1 Andrew Morton
                   ` (3 preceding siblings ...)
  2003-02-16  0:12 ` 2.5.61-mm1 James H. Cloos Jr.
@ 2003-02-17 22:44 ` Cliff White
  4 siblings, 0 replies; 11+ messages in thread
From: Cliff White @ 2003-02-17 22:44 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, linux-mm, cliffw

> 
> http://www.kernel.org/pub/linux/kernel/people/akpm/patches/2.5/2.5.61/2.5.61-mm1/
> 
> . Jens has fixed the request queue aliasing problem and we are no longer
>   able to break the IO scheduler.  This was preventing the OSDL team from
>   running dbt2 against recent kernels, so hopefully that is all fixed up now.
> 
Thanks again for doing all this, really appreciate it.
Well, we're closer....
The showstopper for us is still the flock() issue. We have Mathew Wilcox's patch from
2.5.52, which we have been applying to all recent kernels. The patch is in PLM as patch id
# 1061. The issue is in BugMe as bug #94 . 
Without proper flock() we cannot stop and restart the database, which means we can't run the test. 
We've tried applying Wilcox's flock patch to -mm1, but it's doesn't go clean, and frankly we're not smart enough
to do the merge by hand -  lock code scares us. 

We just tested 2.5.61 vanilla, and 2.5.61-mm1. 

The patch applies cleanly to stock 2.5.61, and we can cycle the database.
We can't run dbt2 on stock 2.5.61, because of the scheduler bug. 
We believe the scheduler fix in -mm1 will be the ticket, but we can't try
it because of the flock() issue. So we're wedged. 
Can someone smarter than us maybe do a merge? 

thanks,
cliffw



^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2003-02-17 22:34 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-02-15  7:13 2.5.61-mm1 Andrew Morton
2003-02-15  7:25 ` 2.5.61-mm1 Nick Piggin
2003-02-15 11:27 ` 2.5.61-mm1 Con Kolivas
2003-02-15 23:41   ` 2.5.61-mm1 Andrew Morton
2003-02-16  1:03     ` 2.5.61-mm1 Con Kolivas
2003-02-15 14:29 ` 2.5.61-mm1 Ed Tomlinson
2003-02-16  0:12 ` 2.5.61-mm1 James H. Cloos Jr.
2003-02-16  0:29   ` 2.5.61-mm1 Andrew Morton
2003-02-17 11:38     ` 2.5.61-mm1 Maneesh Soni
2003-02-17 11:29       ` 2.5.61-mm1 Andrew Morton
2003-02-17 22:44 ` 2.5.61-mm1 Cliff White

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox