2003-02-14 09:21:39

by Andrew Morton

[permalink] [raw]
Subject: 2.5.60-mm2


http://www.kernel.org/pub/linux/kernel/people/akpm/patches/2.5/2.5.60/2.5.60-mm2/

. Robert has fixed up Ingo's scheduler update, so that's back in.

. Considerable poking at the NFS MAP_SHARED OOM lockup. It is limping
along now, but writeout bandwidth is poor and it is still struggling.
Needs work.

. There's a one-liner which removes an O(n^2) search in the NFS writeback
path. It increases writeout bandwidth by 4x and decreases CPU load from
100% to 3%. Needs work.

. A patch to permit direct-io reads of the partial block at EOF. Seems to
work, but needs more testing.

. There is another anticipatory scheduler patch over in experimental/.

The main obective of the anticipatory scheduler is not really to improve
interactivity. It is to increase throughput. Nick is showing some
impressive benchmark results with this now. Some benchmarking of the
non-contest variety would be appreciated.

. Added Matthew Jacob's Qlogic ISP driver for a bit of testing. It locks
up mysteriously with my ISP12160 controller. Testing results for other
controllers would be appreciated.



Changes since 2.5.60-mm1:


linus.patch

Latest bk from Linus

-genhd-warnings.patch
-vmscan-warning.patch
-nfsd-warnings.patch
-partitions-warnings.patch
-nfs-warning-fix.patch
-reiserfs-hashes-warning-fix.patch
-st-warning-fix.patch
-adaptec-compile-fix.patch
-adaptec-debug-fix.patch
-oprofile-p4.patch
-oprofile_cpu-as-string.patch
-oprofile-braino.patch
-disassociate_tty-fix.patch
-epoll-update-2.5.60.patch
-misc.patch
-dcache_rcu-nfs-server-fix.patch
-cyclone-fixes.patch
-enable-timer_cyclone.patch
-hugetlbfs-i_size-fix.patch

+jfs-build-fix.patch

JFS compile fix for gcc-2.95.3.

-mandlock-oops-fix.patch
+mandlock-fix.patch

Updated flocking fix

+fault_in_pages-move.patch

Move fault_in_pages_readable/writeable to a header file so reiserfs can
reuse it.

reiserfs_file_write.patch

Updated

+ext3-eio-fix.patch

Fix a BUG with fsx-linux

+smctr-fix.patch

compile fix.

+sched-f3.patch
+rml-scheduler-bits.patch

Updated scheduler update.

+nfs-speedup.patch
+nfs-more-oom-fix.patch

NFS OOM work.

+nfs-sendfile.patch

"fix" an O(n^2) problem in the NFS client.

+put_page-speedup.patch

Speed up put_page() for CONFIG_HUGETLB_PAGE=y

+kernel_lock_bug2.patch
+ext2_ext3_listxattr-bug.patch
+xattr-flags.patch
+xattr-flags-policy.patch
+xattr-trusted.patch

Extended attribute feature work.

+generic_write_checks.patch

Break out the bounds checking from generic_file_write() so other
filesystems can use them.

+balance_dirty_pages-lockup-fix.patch

Fix a weird lockup in the writeback code.

+cciss-1.patch
+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

cciss array controller driver update

+direct-io-retval-fix.patch

Return the correct thing on -EIO

+dio-eof-read.patch

Allow direct-io reads of the non-aligned end of file.

+linux-isp.patch

Latest qlogic driver from http://www.feral.com bitkeeper

+linux-isp-update.patch

Port it to 2.5


In the experimental/ directory:

+handle-async-write-errors.patch

Framework for recording and reporting data loss during the async writeout
code.

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

Anticipatory scheduler updates.



All 66 patches

linus.patch

kgdb.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

mandlock-fix.patch
Subject: [PATCH] Fix mandatory locking

fault_in_pages-move.patch
move fault_in_pages_readable/writeable to header

reiserfs_file_write.patch
Subject: reiserfs file_write patch

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

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

smctr-fix.patch
smctr.c build fixes

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

deadline-hash-fix.patch

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

generic_write_checks.patch
separate checks from generic_file_aio_write

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

cciss-1.patch
make cciss driver compile

cciss-2.patch
make cciss driver compile (2)

cciss-3.patch
make cciss driver compile [3]

cciss-5.patch
make cciss driver compile [5]

cciss-6.patch
make cciss driver compile [6]

cciss-7.patch
make cciss driver compile [7]

cciss-8.patch
make cciss driver compile

cciss-9.patch
make cciss driver compile

cciss-10.patch
make cciss driver compile

cciss-11.patch
make cciss driver compile

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

dio-eof-read.patch

linux-isp.patch

linux-isp-update.patch

handle-async-write-errors.patch
Propagate async write errors to userspace

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

ant-sched-9feb.patch
anticipatory scheduler fix

ant-sched-12feb.patch
Anticipatory scheduler tuning




2003-02-14 09:35:19

by Dave Jones

[permalink] [raw]
Subject: Re: 2.5.60-mm2

On Fri, Feb 14, 2003 at 01:31:44AM -0800, Andrew Morton wrote:

> . Considerable poking at the NFS MAP_SHARED OOM lockup. It is limping
> along now, but writeout bandwidth is poor and it is still struggling.
> Needs work.
>
> . There's a one-liner which removes an O(n^2) search in the NFS writeback
> path. It increases writeout bandwidth by 4x and decreases CPU load from
> 100% to 3%. Needs work.

I'm puzzled that you've had NFS stable enough to test these.
How much testing has this stuff had? Here 2.5.60+bk clients fall over under
moderate NFS load. (And go splat quickly under high load).

Trying to run things like dbench causes lockups, fsx/fstress made it
reboot, plus the odd 'cheating' errors reported yesterday.

Dave

--
| Dave Jones. http://www.codemonkey.org.uk
| SuSE Labs

2003-02-14 09:48:31

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.5.60-mm2

Dave Jones <[email protected]> wrote:
>
> On Fri, Feb 14, 2003 at 01:31:44AM -0800, Andrew Morton wrote:
>
> > . Considerable poking at the NFS MAP_SHARED OOM lockup. It is limping
> > along now, but writeout bandwidth is poor and it is still struggling.
> > Needs work.
> >
> > . There's a one-liner which removes an O(n^2) search in the NFS writeback
> > path. It increases writeout bandwidth by 4x and decreases CPU load from
> > 100% to 3%. Needs work.
>
> I'm puzzled that you've had NFS stable enough to test these.

This was just writing out a single 400 megabyte file with `dd'. I didn't try
anything fancier.

> How much testing has this stuff had? Here 2.5.60+bk clients fall over under
> moderate NFS load. (And go splat quickly under high load).
>
> Trying to run things like dbench causes lockups, fsx/fstress made it
> reboot, plus the odd 'cheating' errors reported yesterday.

I have not tried pushing NFS with complex access patterns recently.


BTW, there's a little patch in there from Trond which I forgot to mention: it
implements sendfile for NFS, so loop-on-NFS works again.


But we have a refcounting bug somewhere:

# mount server:/dir /mnt/point
# losetup /dev/loop0 /mnt/point/file
# mount /dev/loop0 /mnt/loop0
# umount /mnt/loop0
# losetup -d /dev/loop0
# umount /mnt/point
umount: /mnt/point: device is busy

2003-02-14 10:01:03

by Thomas Schlichter

[permalink] [raw]
Subject: Re: 2.5.60-mm2

On Friday, 14. February 2003 10:38, Dave Jones wrote:
> On Fri, Feb 14, 2003 at 01:31:44AM -0800, Andrew Morton wrote:
> > . Considerable poking at the NFS MAP_SHARED OOM lockup. It is limping
> > along now, but writeout bandwidth is poor and it is still struggling.
> > Needs work.
> >
> > . There's a one-liner which removes an O(n^2) search in the NFS
> > writeback path. It increases writeout bandwidth by 4x and decreases CPU
> > load from 100% to 3%. Needs work.
>
> I'm puzzled that you've had NFS stable enough to test these.
> How much testing has this stuff had? Here 2.5.60+bk clients fall over under
> moderate NFS load. (And go splat quickly under high load).
>
> Trying to run things like dbench causes lockups, fsx/fstress made it
> reboot, plus the odd 'cheating' errors reported yesterday.
>
> Dave

I've got NFS problems with 2.5.5x - 60-bk3, too, but here I can workaround
them by simply pinging the NFS-server every second... Funny, but it works!
Perhaps this can help finding the real bug?!

Thomas


Attachments:
(No filename) (1.01 kB)
signed data
(No filename) (189.00 B)
signature
Download all attachments

2003-02-14 10:08:27

by Dave Jones

[permalink] [raw]
Subject: Re: 2.5.60-mm2

On Fri, Feb 14, 2003 at 01:58:02AM -0800, Andrew Morton wrote:

> > I'm puzzled that you've had NFS stable enough to test these.
> This was just writing out a single 400 megabyte file with `dd'. I didn't try
> anything fancier.

ok. Can you hold off pushing NFS bits to Linus until this gets
pinned down ? I really don't want to introduce any more variables
to this, especially when its so hard to pin down to an exact
replication scenario.

Trond thinks this could be not just NFS related but something
lurking deeper within net/ which could be even more annoying
to pin down, though I don't see any other odd network related
behaviour.

Dave

--
| Dave Jones. http://www.codemonkey.org.uk

2003-02-14 10:12:11

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.5.60-mm2

Dave Jones <[email protected]> wrote:
>
> On Fri, Feb 14, 2003 at 01:58:02AM -0800, Andrew Morton wrote:
>
> > > I'm puzzled that you've had NFS stable enough to test these.
> > This was just writing out a single 400 megabyte file with `dd'. I didn't try
> > anything fancier.
>
> ok. Can you hold off pushing NFS bits to Linus until this gets
> pinned down ? I really don't want to introduce any more variables
> to this, especially when its so hard to pin down to an exact
> replication scenario.

I wouldn't push any NFS bits. It has a breathing maintainer ;)

I've been mainly looking at the OOM problems, which need MM help. Got
distracted.


2003-02-14 12:52:58

by Con Kolivas

[permalink] [raw]
Subject: Re: 2.5.60-mm2

Got this on serial console while trying to boot 2.5.60-mm2:

bad: scheduling while atomic!
Call Trace:
[<c0112a41>] do_schedule+0x3d/0x2f4
[<c0112f45>] wait_for_completion+0x8d/0xd0
[<c0112d3c>] default_wake_function+0x0/0x1c
[<c0112d3c>] default_wake_function+0x0/0x1c
[<c01221a9>] 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:
[<c0112a41>] do_schedule+0x3d/0x2f4
[<c0112f45>] wait_for_completion+0x8d/0xd0
[<c0112d3c>] default_wake_function+0x0/0x1c
[<c0112d3c>] 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:
[<c0112a41>] do_schedule+0x3d/0x2f4
[<c0112f45>] wait_for_completion+0x8d/0xd0
[<c0112d3c>] default_wake_function+0x0/0x1c
[<c0112d3c>] 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:
[<c0112a41>] do_schedule+0x3d/0x2f4
[<c0112f45>] wait_for_completion+0x8d/0xd0
[<c0112d3c>] default_wake_function+0x0/0x1c
[<c0112d3c>] 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.60-mm2 with no debug enabled
bad: scheduling while atomic!
Call Trace:
[<c0112a41>] do_schedule+0x3d/0x2f4
[<c0112f45>] wait_for_completion+0x8d/0xd0
[<c0112d3c>] default_wake_function+0x0/0x1c
[<c0112d3c>] default_wake_function+0x0/0x1c
[<c01221a9>] create_workqueue+0x125/0x178
[<c021708f>] pagebuf_daemon_start+0xb/0x4c
[<c016180a>] create_proc_entry+0x9a/0xb4
[<c0151aeb>] 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
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:
[<c0112a41>] do_schedule+0x3d/0x2f4
[<c011b907>] add_timer+0x11b/0x120
[<c011c478>] schedule_timeout+0x84/0xac
[<c011c3e8>] process_timeout+0x0/0xc
[<c024d974>] e100_selftest+0x58/0xb0
[<c02297f9>] pci_device_probe+0x41/0x5c
[<c02302d3>] bus_match+0x37/0x60
[<c0230394>] driver_attach+0x3c/0x5c
[<c0230622>] bus_add_driver+0xa6/0xd8
[<c023095c>] driver_register+0x34/0x38
[<c02298f2>] 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:
[<c0112a41>] do_schedule+0x3d/0x2f4
[<c011b907>] add_timer+0x11b/0x120
[<c011c478>] schedule_timeout+0x84/0xac
[<c011c3e8>] process_timeout+0x0/0xc
[<c02297f9>] pci_device_probe+0x41/0x5c
[<c02302d3>] bus_match+0x37/0x60
[<c0230394>] driver_attach+0x3c/0x5c
[<c0230622>] bus_add_driver+0xa6/0xd8
[<c023095c>] driver_register+0x34/0x38
[<c02298f2>] pci_register_driver+0x42/0x54
[<c010508e>] init+0x2a/0x17c
[<c0105064>] init+0x0/0x17c
[<c0106e5d>] kernel_thread_helper+0x5/0xc

Freeing alive device c13a8000, eth%d
alloc_skb called nonatomically from interrupt c027978c
------------[ cut here ]------------
kernel BUG at net/core/skbuff.c:178!
invalid operand: 0000
CPU: 0
EIP: 0060:[<c0270863>] Not tainted
EFLAGS: 00010246
EIP is at alloc_skb+0x43/0x1a4
eax: 0000003a ebx: c0389b60 ecx: c02f4188 edx: 00000296
esi: c13a8000 edi: 000000d0 ebp: c13a8000 esp: c129feac
ds: 007b es: 007b ss: 0068
Process swapper (pid: 1, threadinfo=c129e000 task=c129c040)
Stack: c02e9740 c027978c c0389b60 c13a8000 00000005 c027978c 00000f60 000000d0
c0389b60 c0279c3e 00000010 c13a8000 ffffffff c011f98a c0389b60 00000005
c13a8000 c129e000 c03876a1 c03876c8 c02754b0 c040ee64 00000005 c13a8000
Call Trace:
[<c027978c>] rtmsg_ifinfo+0x10/0x78
[<c027978c>] rtmsg_ifinfo+0x10/0x78
[<c0279c3e>] rtnetlink_event+0x36/0x3c
[<c011f98a>] notifier_call_chain+0x1e/0x38
[<c02754b0>] register_netdevice+0x168/0x174
[<c0254c3e>] register_netdev+0x5e/0x70
[<c02297f9>] pci_device_probe+0x41/0x5c
[<c02302d3>] bus_match+0x37/0x60
[<c0230394>] driver_attach+0x3c/0x5c
[<c0230622>] bus_add_driver+0xa6/0xd8
[<c023095c>] driver_register+0x34/0x38
[<c02298f2>] pci_register_driver+0x42/0x54
[<c010508e>] init+0x2a/0x17c
[<c0105064>] init+0x0/0x17c
[<c0106e5d>] kernel_thread_helper+0x5/0xc

Code: 0f 0b b2 00 e3 96 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

.config attached

Con


Attachments:
(No filename) (4.84 kB)
osdl.config (12.83 kB)
Download all attachments

2003-02-14 20:50:10

by Shawn

[permalink] [raw]
Subject: Re: compile fail: 2.5.60-mm2

Generating include/linux/version.h (updated)
Making asm->asm-i386 symlink
make -f scripts/Makefile.build obj=scripts
SPLIT include/linux/autoconf.h -> include/config/*
make -f scripts/Makefile.build obj=init init/vermagic.o
gcc296 -Wp,-MD,init/.vermagic.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=vermagic -DKBUILD_MODNAME=vermagic -c -o init/.tmp_vermagic.o init/vermagic.c
Starting the build. KBUILD_BUILTIN=1 KBUILD_MODULES=
make -f scripts/Makefile.build obj=init
gcc296 -Wp,-MD,init/.main.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=main -DKBUILD_MODNAME=main -c -o init/.tmp_main.o init/main.c
Generating include/linux/compile.h (updated)
gcc296 -Wp,-MD,init/.version.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=version -DKBUILD_MODNAME=version -c -o init/.tmp_version.o init/version.c
gcc296 -Wp,-MD,init/.do_mounts.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=do_mounts -DKBUILD_MODNAME=do_mounts -c -o init/.tmp_do_mounts.o init/do_mounts.c
gcc296 -Wp,-MD,init/.initramfs.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=initramfs -DKBUILD_MODNAME=initramfs -c -o init/.tmp_initramfs.o init/initramfs.c
ld -m elf_i386 -r -o init/built-in.o init/main.o init/version.o init/do_mounts.o init/initramfs.o init/vermagic.o
make -f scripts/Makefile.build obj=usr
gcc296 -Wp,-MD,usr/.gen_init_cpio.d -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -o usr/gen_init_cpio usr/gen_init_cpio.c
./usr/gen_init_cpio | gzip -9c > usr/initramfs_data.cpio.gz
ld -m elf_i386 --format binary --oformat elf32-i386 -r -T usr/initramfs_data.scr usr/initramfs_data.cpio.gz -o usr/initramfs_data.o
ld -m elf_i386 -r -o usr/built-in.o usr/initramfs_data.o
make -f scripts/Makefile.build obj=arch/i386/kernel
gcc296 -Wp,-MD,arch/i386/kernel/.process.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=process -DKBUILD_MODNAME=process -c -o arch/i386/kernel/.tmp_process.o arch/i386/kernel/process.c
gcc296 -Wp,-MD,arch/i386/kernel/.semaphore.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=semaphore -DKBUILD_MODNAME=semaphore -c -o arch/i386/kernel/.tmp_semaphore.o arch/i386/kernel/semaphore.c
gcc296 -Wp,-MD,arch/i386/kernel/.signal.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=signal -DKBUILD_MODNAME=signal -c -o arch/i386/kernel/.tmp_signal.o arch/i386/kernel/signal.c
gcc296 -Wp,-MD,arch/i386/kernel/.entry.o.d -D__ASSEMBLY__ -D__KERNEL__ -Iinclude -Iinclude/asm-i386/mach-default -nostdinc -iwithprefix include -traditional -c -o arch/i386/kernel/entry.o arch/i386/kernel/entry.S
gcc296 -Wp,-MD,arch/i386/kernel/.traps.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=traps -DKBUILD_MODNAME=traps -c -o arch/i386/kernel/.tmp_traps.o arch/i386/kernel/traps.c
gcc296 -Wp,-MD,arch/i386/kernel/.irq.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=irq -DKBUILD_MODNAME=irq -c -o arch/i386/kernel/.tmp_irq.o arch/i386/kernel/irq.c
gcc296 -Wp,-MD,arch/i386/kernel/.vm86.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=vm86 -DKBUILD_MODNAME=vm86 -c -o arch/i386/kernel/.tmp_vm86.o arch/i386/kernel/vm86.c
gcc296 -Wp,-MD,arch/i386/kernel/.ptrace.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=ptrace -DKBUILD_MODNAME=ptrace -c -o arch/i386/kernel/.tmp_ptrace.o arch/i386/kernel/ptrace.c
gcc296 -Wp,-MD,arch/i386/kernel/.i8259.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=i8259 -DKBUILD_MODNAME=i8259 -c -o arch/i386/kernel/.tmp_i8259.o arch/i386/kernel/i8259.c
gcc296 -Wp,-MD,arch/i386/kernel/.ioport.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=ioport -DKBUILD_MODNAME=ioport -c -o arch/i386/kernel/.tmp_ioport.o arch/i386/kernel/ioport.c
gcc296 -Wp,-MD,arch/i386/kernel/.ldt.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=ldt -DKBUILD_MODNAME=ldt -c -o arch/i386/kernel/.tmp_ldt.o arch/i386/kernel/ldt.c
gcc296 -Wp,-MD,arch/i386/kernel/.setup.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=setup -DKBUILD_MODNAME=setup -c -o arch/i386/kernel/.tmp_setup.o arch/i386/kernel/setup.c
gcc296 -Wp,-MD,arch/i386/kernel/.time.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=time -DKBUILD_MODNAME=time -c -o arch/i386/kernel/.tmp_time.o arch/i386/kernel/time.c
gcc296 -Wp,-MD,arch/i386/kernel/.sys_i386.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=sys_i386 -DKBUILD_MODNAME=sys_i386 -c -o arch/i386/kernel/.tmp_sys_i386.o arch/i386/kernel/sys_i386.c
gcc296 -Wp,-MD,arch/i386/kernel/.pci-dma.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=pci_dma -DKBUILD_MODNAME=pci_dma -c -o arch/i386/kernel/.tmp_pci-dma.o arch/i386/kernel/pci-dma.c
gcc296 -Wp,-MD,arch/i386/kernel/.i386_ksyms.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=i386_ksyms -DKBUILD_MODNAME=i386_ksyms -c -o arch/i386/kernel/.tmp_i386_ksyms.o arch/i386/kernel/i386_ksyms.c
gcc296 -Wp,-MD,arch/i386/kernel/.i387.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=i387 -DKBUILD_MODNAME=i387 -c -o arch/i386/kernel/.tmp_i387.o arch/i386/kernel/i387.c
gcc296 -Wp,-MD,arch/i386/kernel/.dmi_scan.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=dmi_scan -DKBUILD_MODNAME=dmi_scan -c -o arch/i386/kernel/.tmp_dmi_scan.o arch/i386/kernel/dmi_scan.c
gcc296 -Wp,-MD,arch/i386/kernel/.bootflag.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=bootflag -DKBUILD_MODNAME=bootflag -c -o arch/i386/kernel/.tmp_bootflag.o arch/i386/kernel/bootflag.c
make -f scripts/Makefile.build obj=arch/i386/kernel/acpi
gcc296 -Wp,-MD,arch/i386/kernel/acpi/.boot.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=boot -DKBUILD_MODNAME=boot -c -o arch/i386/kernel/acpi/.tmp_boot.o arch/i386/kernel/acpi/boot.c
In file included from arch/i386/kernel/acpi/boot.c:30:
include/asm-i386/mach-default/mach_apic.h: In function `apic_id_registered':
include/asm-i386/mach-default/mach_apic.h:24: warning: implicit declaration of function `apic_read'
include/asm-i386/mach-default/mach_apic.h:24: `phys_cpu_present_map' undeclared (first use in this function)
include/asm-i386/mach-default/mach_apic.h:24: (Each undeclared identifier is reported only once
include/asm-i386/mach-default/mach_apic.h:24: for each function it appears in.)
include/asm-i386/mach-default/mach_apic.h: In function `init_apic_ldr':
include/asm-i386/mach-default/mach_apic.h:39: warning: implicit declaration of function `apic_write_around'
include/asm-i386/mach-default/mach_apic.h: In function `clustered_apic_check':
include/asm-i386/mach-default/mach_apic.h:53: `nr_ioapics' undeclared (first use in this function)
include/asm-i386/mach-default/mach_apic.h: At top level:
include/asm-i386/mach-default/mach_apic.h:82: warning: `struct mpc_config_processor' declared inside parameter list
include/asm-i386/mach-default/mach_apic.h:82: warning: its scope is only this definition or declaration, which is probably not what you want.
include/asm-i386/mach-default/mach_apic.h: In function `mpc_apic_id':
include/asm-i386/mach-default/mach_apic.h:85: dereferencing pointer to incomplete type
include/asm-i386/mach-default/mach_apic.h:86: dereferencing pointer to incomplete type
include/asm-i386/mach-default/mach_apic.h:86: `CPU_FAMILY_MASK' undeclared (first use in this function)
include/asm-i386/mach-default/mach_apic.h:87: dereferencing pointer to incomplete type
include/asm-i386/mach-default/mach_apic.h:87: `CPU_MODEL_MASK' undeclared (first use in this function)
include/asm-i386/mach-default/mach_apic.h:88: dereferencing pointer to incomplete type
include/asm-i386/mach-default/mach_apic.h:89: dereferencing pointer to incomplete type
include/asm-i386/mach-default/mach_apic.h:90: warning: control reaches end of non-void function
include/asm-i386/mach-default/mach_apic.h: In function `check_phys_apicid_present':
include/asm-i386/mach-default/mach_apic.h:98: `phys_cpu_present_map' undeclared (first use in this function)
In file included from arch/i386/kernel/acpi/boot.c:31:
include/asm-i386/mach-default/mach_mpparse.h: At top level:
include/asm-i386/mach-default/mach_mpparse.h:5: warning: `struct mpc_config_translation' declared inside parameter list
include/asm-i386/mach-default/mach_mpparse.h:5: warning: `struct mpc_config_bus' declared inside parameter list
include/asm-i386/mach-default/mach_mpparse.h: In function `mpc_oem_bus_info':
include/asm-i386/mach-default/mach_mpparse.h:7: warning: implicit declaration of function `Dprintk'
include/asm-i386/mach-default/mach_mpparse.h:7: dereferencing pointer to incomplete type
include/asm-i386/mach-default/mach_mpparse.h: At top level:
include/asm-i386/mach-default/mach_mpparse.h:11: warning: `struct mpc_config_translation' declared inside parameter list
include/asm-i386/mach-default/mach_mpparse.h:11: warning: `struct mpc_config_bus' declared inside parameter list
include/asm-i386/mach-default/mach_mpparse.h:16: warning: `struct mp_config_table' declared inside parameter list
arch/i386/kernel/acpi/boot.c: In function `acpi_parse_lapic':
arch/i386/kernel/acpi/boot.c:131: warning: implicit declaration of function `mp_register_lapic'
arch/i386/kernel/acpi/boot.c: In function `acpi_parse_ioapic':
arch/i386/kernel/acpi/boot.c:196: warning: implicit declaration of function `mp_register_ioapic'
arch/i386/kernel/acpi/boot.c: In function `acpi_parse_int_src_ovr':
arch/i386/kernel/acpi/boot.c:217: warning: implicit declaration of function `mp_override_legacy_irq'
arch/i386/kernel/acpi/boot.c: In function `acpi_boot_init':
arch/i386/kernel/acpi/boot.c:348: warning: implicit declaration of function `mp_register_lapic_address'
arch/i386/kernel/acpi/boot.c:394: warning: implicit declaration of function `mp_config_acpi_legacy_irqs'
arch/i386/kernel/acpi/boot.c:419: `smp_found_config' undeclared (first use in this function)
make[2]: *** [arch/i386/kernel/acpi/boot.o] Error 1
make[1]: *** [arch/i386/kernel/acpi] Error 2
make: *** [arch/i386/kernel] Error 2


Attachments:
2.5.60-mm2.config (22.55 kB)
2.5.60-mm2.out (14.44 kB)
Download all attachments

2003-02-14 21:11:03

by Joshua Kwan

[permalink] [raw]
Subject: Re: compile fail: 2.5.60-mm2

I received the same exact failure message. I tried enabling APIC support
but the same file failed to compile. I use gcc-3.2, though.

-Josh

On Fri, Feb 14, 2003 at 02:59:33PM -0600, Core wrote:
> Compile fail.
>
> config and make log attached.
[...]
> make -f scripts/Makefile.build obj=arch/i386/kernel/acpi
> gcc296 -Wp,-MD,arch/i386/kernel/acpi/.boot.o.d -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=athlon -Iinclude/asm-i386/mach-default -fomit-frame-pointer -nostdinc -iwithprefix include -DKBUILD_BASENAME=boot -DKBUILD_MODNAME=boot -c -o arch/i386/kernel/acpi/.tmp_boot.o arch/i386/kernel/acpi/boot.c
> In file included from arch/i386/kernel/acpi/boot.c:30:
> include/asm-i386/mach-default/mach_apic.h: In function `apic_id_registered':
> include/asm-i386/mach-default/mach_apic.h:24: warning: implicit declaration of function `apic_read'
> include/asm-i386/mach-default/mach_apic.h:24: `phys_cpu_present_map' undeclared (first use in this function)
> include/asm-i386/mach-default/mach_apic.h:24: (Each undeclared identifier is reported only once
> include/asm-i386/mach-default/mach_apic.h:24: for each function it appears in.)
> include/asm-i386/mach-default/mach_apic.h: In function `init_apic_ldr':
> include/asm-i386/mach-default/mach_apic.h:39: warning: implicit declaration of function `apic_write_around'
> include/asm-i386/mach-default/mach_apic.h: In function `clustered_apic_check':
> include/asm-i386/mach-default/mach_apic.h:53: `nr_ioapics' undeclared (first use in this function)
> include/asm-i386/mach-default/mach_apic.h: At top level:
> include/asm-i386/mach-default/mach_apic.h:82: warning: `struct mpc_config_processor' declared inside parameter list
> include/asm-i386/mach-default/mach_apic.h:82: warning: its scope is only this definition or declaration, which is probably not what you want.
> include/asm-i386/mach-default/mach_apic.h: In function `mpc_apic_id':
> include/asm-i386/mach-default/mach_apic.h:85: dereferencing pointer to incomplete type
> include/asm-i386/mach-default/mach_apic.h:86: dereferencing pointer to incomplete type
> include/asm-i386/mach-default/mach_apic.h:86: `CPU_FAMILY_MASK' undeclared (first use in this function)
> include/asm-i386/mach-default/mach_apic.h:87: dereferencing pointer to incomplete type
> include/asm-i386/mach-default/mach_apic.h:87: `CPU_MODEL_MASK' undeclared (first use in this function)
> include/asm-i386/mach-default/mach_apic.h:88: dereferencing pointer to incomplete type
> include/asm-i386/mach-default/mach_apic.h:89: dereferencing pointer to incomplete type
> include/asm-i386/mach-default/mach_apic.h:90: warning: control reaches end of non-void function
> include/asm-i386/mach-default/mach_apic.h: In function `check_phys_apicid_present':
> include/asm-i386/mach-default/mach_apic.h:98: `phys_cpu_present_map' undeclared (first use in this function)
> In file included from arch/i386/kernel/acpi/boot.c:31:
> include/asm-i386/mach-default/mach_mpparse.h: At top level:
> include/asm-i386/mach-default/mach_mpparse.h:5: warning: `struct mpc_config_translation' declared inside parameter list
> include/asm-i386/mach-default/mach_mpparse.h:5: warning: `struct mpc_config_bus' declared inside parameter list
> include/asm-i386/mach-default/mach_mpparse.h: In function `mpc_oem_bus_info':
> include/asm-i386/mach-default/mach_mpparse.h:7: warning: implicit declaration of function `Dprintk'
> include/asm-i386/mach-default/mach_mpparse.h:7: dereferencing pointer to incomplete type
> include/asm-i386/mach-default/mach_mpparse.h: At top level:
> include/asm-i386/mach-default/mach_mpparse.h:11: warning: `struct mpc_config_translation' declared inside parameter list
> include/asm-i386/mach-default/mach_mpparse.h:11: warning: `struct mpc_config_bus' declared inside parameter list
> include/asm-i386/mach-default/mach_mpparse.h:16: warning: `struct mp_config_table' declared inside parameter list
> arch/i386/kernel/acpi/boot.c: In function `acpi_parse_lapic':
> arch/i386/kernel/acpi/boot.c:131: warning: implicit declaration of function `mp_register_lapic'
> arch/i386/kernel/acpi/boot.c: In function `acpi_parse_ioapic':
> arch/i386/kernel/acpi/boot.c:196: warning: implicit declaration of function `mp_register_ioapic'
> arch/i386/kernel/acpi/boot.c: In function `acpi_parse_int_src_ovr':
> arch/i386/kernel/acpi/boot.c:217: warning: implicit declaration of function `mp_override_legacy_irq'
> arch/i386/kernel/acpi/boot.c: In function `acpi_boot_init':
> arch/i386/kernel/acpi/boot.c:348: warning: implicit declaration of function `mp_register_lapic_address'
> arch/i386/kernel/acpi/boot.c:394: warning: implicit declaration of function `mp_config_acpi_legacy_irqs'
> arch/i386/kernel/acpi/boot.c:419: `smp_found_config' undeclared (first use in this function)
> make[2]: *** [arch/i386/kernel/acpi/boot.o] Error 1
> make[1]: *** [arch/i386/kernel/acpi] Error 2
> make: *** [arch/i386/kernel] Error 2


--
New PGP public key: 0x27AFC3EE


Attachments:
(No filename) (4.92 kB)
(No filename) (189.00 B)
Download all attachments

2003-02-14 21:58:36

by Andrew Morton

[permalink] [raw]
Subject: Re: compile fail: 2.5.60-mm2

Core <[email protected]> wrote:
>
> Compile fail.
>
> config and make log attached.

This seems to be fixed in Linus's current tree.


2003-02-15 20:17:12

by Diego Calleja

[permalink] [raw]
Subject: Re: 2.5.60-mm2

On Fri, 14 Feb 2003 01:31:44 -0800
Andrew Morton <[email protected]> wrote:

> The main obective of the anticipatory scheduler is not really to improve
> interactivity. It is to increase throughput. Nick is showing some
> impressive benchmark results with this now. Some benchmarking of the
> non-contest variety would be appreciated.
[...]
> anticipatory_io_scheduling.patch
> Subject: [PATCH] 2.5.59-mm3 antic io sched
>
> ant-sched-9feb.patch
> anticipatory scheduler fix
>
> ant-sched-12feb.patch
> Anticipatory scheduler tuning

(I applied those three)
Those are tiobench's results:
in both:
No size specified, using 510 MB

Unit information
================
File size = megabytes
Blk Size = bytes
Rate = megabytes per second
CPU% = percentage of CPU used during the test
Latency = milliseconds
Lat% = percent of requests that took longer than X seconds
CPU Eff = Rate divided by CPU% - throughput per cpu load

diff between both

Sequential reads
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
-2.5.60-mm2 510 4096 1 21.23 8.264% 0.183 111.66 0.00000 0.00000 257
-2.5.60-mm2 510 4096 2 7.33 3.506% 1.061 196.42 0.00000 0.00000 209
-2.5.60-mm2 510 4096 4 5.39 2.593% 2.874 275.79 0.00000 0.00000 208
-2.5.60-mm2 510 4096 8 4.45 2.125% 6.846 1008.67 0.00000 0.00000 209

+2.5.60-mm2-ant 510 4096 1 42.07 17.81% 0.092 57.22 0.00000 0.00000 236
+2.5.60-mm2-ant 510 4096 2 22.84 12.08% 0.332 308.44 0.00000 0.00000 189
+2.5.60-mm2-ant 510 4096 4 17.40 9.298% 0.873 695.78 0.00000 0.00000 187
+2.5.60-mm2-ant 510 4096 8 11.62 6.064% 2.484 1334.89 0.00000 0.00000 192

Random Reads
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
-2.5.60-mm2 510 4096 1 0.75 0.775% 5.190 57.26 0.00000 0.00000 97
-2.5.60-mm2 510 4096 2 0.62 0.611% 12.433 122.61 0.00000 0.00000 102
-2.5.60-mm2 510 4096 4 0.54 0.524% 28.542 534.94 0.00000 0.00000 102
-2.5.60-mm2 510 4096 8 0.49 0.527% 58.520 941.25 0.00000 0.00000 94

+2.5.60-mm2-ant 510 4096 1 0.71 0.742% 5.522 62.66 0.00000 0.00000 95
+2.5.60-mm2-ant 510 4096 2 0.63 0.574% 12.137 274.13 0.00000 0.00000 109
+2.5.60-mm2-ant 510 4096 4 0.58 0.548% 24.428 282.18 0.00000 0.00000 106
+2.5.60-mm2-ant 510 4096 8 0.63 0.549% 41.976 596.08 0.00000 0.00000 115



Sequential Writes
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
-2.5.60-mm2 510 4096 1 26.59 38.97% 0.119 559.77 0.00000 0.00000 68
-2.5.60-mm2 510 4096 2 16.14 29.96% 0.390 6813.03 0.00306 0.00000 54
-2.5.60-mm2 510 4096 4 9.55 18.37% 1.249 16573.28 0.01615 0.00154 52
-2.5.60-mm2 510 4096 8 6.35 11.40% 4.342 45796.21 0.02093 0.01550 56

+2.5.60-mm2-ant 510 4096 1 33.87 49.55% 0.093 370.18 0.00000 0.00000 68
+2.5.60-mm2-ant 510 4096 2 12.56 24.08% 0.531 9524.84 0.00613 0.00000 52
+2.5.60-mm2-ant 510 4096 4 6.68 13.08% 2.071 20422.31 0.03153 0.00231 51
+2.5.60-mm2-ant 510 4096 8 6.90 13.45% 3.086 41464.78 0.02790 0.01163 51



Random Writes
File Blk Num Avg Maximum Lat% Lat% CPU
Identifier Size Size Thr Rate (CPU%) Latency Latency >2s >10s Eff
---------------------------- ------ ----- --- ------ ------ --------- ----------- -------- -------- -----
-2.5.60-mm2 510 4096 1 0.99 1.050% 0.140 33.67 0.00000 0.00000 95
-2.5.60-mm2 510 4096 2 1.02 1.138% 0.043 11.72 0.00000 0.00000 90
-2.5.60-mm2 510 4096 4 1.02 1.423% 0.082 99.74 0.00000 0.00000 72
-2.5.60-mm2 510 4096 8 0.99 1.329% 0.074 74.51 0.00000 0.00000 74

+2.5.60-mm2-ant 510 4096 1 0.96 0.917% 0.027 1.03 0.00000 0.00000 105
+2.5.60-mm2-ant 510 4096 2 1.00 1.472% 0.044 2.42 0.00000 0.00000 68
+2.5.60-mm2-ant 510 4096 4 0.95 1.367% 0.044 1.96 0.00000 0.00000 69
+2.5.60-mm2-ant 510 4096 8 0.99 1.431% 0.079 75.46 0.00000 0.00000 69

2003-02-17 01:55:08

by Bill Davidsen

[permalink] [raw]
Subject: Re: 2.5.60-mm2

On Fri, 14 Feb 2003, Thomas Schlichter wrote:


> I've got NFS problems with 2.5.5x - 60-bk3, too, but here I can workaround
> them by simply pinging the NFS-server every second... Funny, but it works!
> Perhaps this can help finding the real bug?!

I was looking for network issues when I started timing pings, and didn't
see any. I thought it was bad timing, link not raining when you have a
coat, but maybe I was curing it.

--
bill davidsen <[email protected]>
CTO, TMR Associates, Inc
Doing interesting things with little computers since 1979.

2003-02-17 12:01:48

by Bill Davidsen

[permalink] [raw]
Subject: Re: 2.5.60-mm2

On Sun, 16 Feb 2003, I wrote:

> > I've got NFS problems with 2.5.5x - 60-bk3, too, but here I can workaround
> > them by simply pinging the NFS-server every second... Funny, but it works!
> > Perhaps this can help finding the real bug?!

[ let's try this again, not typing in a moving car ]

> I was looking for network issues when I started timing pings, and didn't
> see any. I thought it was bad timing, like not raining when you have a
> coat, but maybe I was curing it.

Since it's possible that pings will actually change the problem rather
than measure it, I'll tcpdump for a while and see if that tells me
anything. I suspected network problems, since tcp has priority over udp in
some places.

I looked at the code last night, but I don't see anything explaining a
ping making things better. Something getting flushed?

--
bill davidsen <[email protected]>
CTO, TMR Associates, Inc
Doing interesting things with little computers since 1979.

2003-02-17 12:29:09

by Thomas Schlichter

[permalink] [raw]
Subject: Re: 2.5.60-mm2

Quoting Bill Davidsen <[email protected]>:

> On Sun, 16 Feb 2003, I wrote:
>
> > > I've got NFS problems with 2.5.5x - 60-bk3, too, but here I can
> workaround
> > > them by simply pinging the NFS-server every second... Funny, but it
> works!
> > > Perhaps this can help finding the real bug?!
>
> [ let's try this again, not typing in a moving car ]
>
> > I was looking for network issues when I started timing pings, and didn't
> > see any. I thought it was bad timing, like not raining when you have a
> > coat, but maybe I was curing it.
>
> Since it's possible that pings will actually change the problem rather
> than measure it, I'll tcpdump for a while and see if that tells me
> anything. I suspected network problems, since tcp has priority over udp in
> some places.
>
> I looked at the code last night, but I don't see anything explaining a
> ping making things better. Something getting flushed?

I'm sorry, I don't exactly know what you want me to do... I'm not involved in
the linux net code and I did not even try to understand it yet...

I just have a small environment with a FreeBSD 4.6 box using my Linux box as a
NFS file server. This worked fine with my 2.4 kernel but with the 2.5.x test
kernels I've got the problem the FreeBSD box says 'NFS server not responding'
until I do simple pings (ICMP echo request, ICMP echo respond) to the linux box
(the NFS server)...

Letting the ping run all the time NFS works so stable I even can do lots of
compilations over it without any problems.

So I don't have any answer WHY this helps, but it does... Perhaps it really is
just a timing issue, I just don't know... If you can tell me what to measure and
which values would be interesting I'll do these tests and send you the
results...


Thomas Schlichter

2003-02-17 18:25:50

by Bill Davidsen

[permalink] [raw]
Subject: Re: 2.5.60-mm2

On Mon, 17 Feb 2003, Thomas Schlichter wrote:

> Quoting Bill Davidsen <[email protected]>:

> > > I was looking for network issues when I started timing pings, and didn't
> > > see any. I thought it was bad timing, like not raining when you have a
> > > coat, but maybe I was curing it.
> >
> > Since it's possible that pings will actually change the problem rather
> > than measure it, I'll tcpdump for a while and see if that tells me
> > anything. I suspected network problems, since tcp has priority over udp in
> > some places.
> >
> > I looked at the code last night, but I don't see anything explaining a
> > ping making things better. Something getting flushed?
>
> I'm sorry, I don't exactly know what you want me to do... I'm not involved in
> the linux net code and I did not even try to understand it yet...

Thanks, you've already done it! I assumed that when I didn't see any
problems while the ping was running that it was just bad timing, and the
problem didn't happen while I was looking. Your note that the pinging
actually prevents the problem gives me something new to investigate.

> I just have a small environment with a FreeBSD 4.6 box using my Linux box as a
> NFS file server. This worked fine with my 2.4 kernel but with the 2.5.x test
> kernels I've got the problem the FreeBSD box says 'NFS server not responding'
> until I do simple pings (ICMP echo request, ICMP echo respond) to the linux box
> (the NFS server)...
>
> Letting the ping run all the time NFS works so stable I even can do lots of
> compilations over it without any problems.
>
> So I don't have any answer WHY this helps, but it does... Perhaps it really is
> just a timing issue, I just don't know... If you can tell me what to measure and
> which values would be interesting I'll do these tests and send you the
> results...

I someone can suggest "what to do" I'll do it as well. At the moment I'm
building a table of 2.5.59 client against 2.4.19, AIX, BSD, etc, and vice
versa. I am looking for hangs with and without the ping running, in hopes
that the results will be useful, possibly to me but more likely to someone
who can see what's happening.

For the record, I see severe hangs with 2.4.19 server and 2.5.59 client,
I'll know what effect the ping has in a few minutes.

--
bill davidsen <[email protected]>
CTO, TMR Associates, Inc
Doing interesting things with little computers since 1979.