2002-10-23 02:10:32

by Andrew Morton

[permalink] [raw]
Subject: 2.5.44-mm3


url: http://www.zip.com.au/~akpm/linux/patches/2.5/2.5.44/2.5.44-mm3/

. Lots of little fixes.

. Dropped the patch which allocates each CPU's per-cpu memory separately.
That's over in experimental/ and has been reworked to use alloc_pages_node(),
if anyone's interested.

. Badari has redone the patch which permits finer-than-fs-blocksize
direct IO.

. Patch from Rusty permits NR_CPUS > sizeof(unsigned long)*8.

. An enormous patch from Adam Richter against the loop driver. It needs
work, but let's get that under test.

. Added Ingo's put-page-offset-into-ptes-for-mmap patch. That's ia32-only
at present so I've uploaded a 2.5.44-mm3-non-ia32.gz rollup as well,
which doesn't have that one.

. Update to the patch management scripts is in
http://www.zip.com.au/~akpm/linux/patches/patch-scripts-0.2/
This includes a new command "pstatus" from Stephen Cameron which
provides a status summary of all your patches.

User testimonials include "neat", "it encourages you to make
fine-grained patches" and "I made 30 patches and almost all of
them were merged!".



Since 2.5.44-mm2

+rcu-idle-fix.patch

RCU idle detection fix

+dio-fine-alignment.patch

Fine-alignment for direct IO

+shrink_slab-overflow.patch

Fix an arith overflow in the VM whcih probably can't happen

-per-cpu-01-core.patch

Moved into experimental/

+larger-cpu-masks.patch

Support more CPUs

+adam-loop.patch

Loop driver rework

+decoded-wchan-output.patch

Create /proc/pid/wchan

+rcu-stats.patch

Display some rcu info in /proc/rcu

+generic-nonlinear-mappings-D0.patch

pgoff_t-in-pte_t.



All 101 patches:


rcu-idle-fix.patch
RCU idle detection fix

ide-warnings.patch
Fix some IDE compile warnings

dmi-warning.patch
fix a compile warning in dmi_scan.c

scsi-reboot-fix.patch

kgdb.patch

misc.patch
misc fixes

ramfs-aops.patch
Move ramfs address_space ops into libfs

ramfs-prepare-write-speedup.patch
correctness fixes in libfs address_space ops

pipe-fix.patch
use correct wakeups in fs/pipe.c

dio-submit-fix.patch
rework direct-io for bio_add_page

dio-fine-alignment.patch
Allow O_DIRECT to use 512-byte alignment

file_ra_state_init.patch
Add a function to initialise file readahead state

less-unlikelies.patch
reduced buslocked traffic in the page allocator

running-iowait.patch
expose nr_running and nr_iowait task counts in /proc

intel-user-copy-taka.patch
Faster copy_*_user for Intel ia32 CPUs

shrink_slab-overflow.patch

uaccess-uninline.patch

ingo-oom-kill.patch
oom-killer changes for threaded apps

unbloat-pid.patch
Reduce RAM use in kernel/pid.c

per-cpu-ratelimits.patch

for-each-cpu.patch
for_each_possible_cpu and for_each_online_cpu macros

per-cpu-warning.patch
Fix per-cpu compile warnings on UP

cpuup-notifiers.patch
extended cpu hotplug notifiers

per-cpu-02-rcu.patch
cpu_possible rcu per_cpu data

per-cpu-03-timer.patch
cpu_possible timer percpu data

per-cpu-04-tasklet.patch
cpu_possible tasklet percpu data

per-cpu-05-bh.patch
cpu_possible bh_accounting

export-per-cpu-symbol.patch
create EXPORT_PER_CPU_SYMBOL

per-cpu-page_state.patch

add_timer_on.patch
add_timer_on(): function to start a timer on a particular CPU

slab-split-01-rename.patch
slab cleanup: rename static functions

slab-split-02-SMP.patch
slab: enable the cpu arrays on uniprocessor

slab-split-03-tail.patch
slab: reduced internal fragmentation

slab-split-04-drain.patch
slab: take the spinlock in the drain function.

slab-split-05-name.patch
slab: remove spaces from /proc identifiers

slab-split-06-mand-cpuarray.patch
slab: cleanups and speedups

slab-split-07-inline.patch
slab: uninline poisoning checks

slab-split-08-reap.patch
slab: reap timers

slab-timer.patch

slab-use-sem.patch

slab-cleanup.patch
Slab cleanup

slab-per-cpu.patch
Use CPU notifiers in slab

ingo-mmap-speedup.patch
Ingo's mmap speedup

task-unmapped-base-fix.patch
Don't take TASK_UNMAPPED_BAE at compile time

mm-inlines.patch
remove some inlines from mm/*

o_streaming.patch
O_STREAMING support

larger-cpu-masks.patch
support NR_CPUS > sizeof(unsigned long) * 8

shmem_getpage-unlock_page.patch
tmpfs 1/9 shmem_getpage unlock_page

shmem_getpage-beyond-eof.patch
tmpfs 2/9 shmem_getpage beyond eof

shmem_getpage-reading-holes.patch
tmpfs 3/9 shmem_getpage reading holes

shmem-fs-cleanup.patch
tmpfs 4/9 shmem fs cleanup

shmem_file_sendfile.patch
tmpfs 5/9 shmem_file_sendfile

shmem_file_write-update.patch
tmpfs 6/9 shmem_file_write update

shmem_getpage-flush_dcache.patch
tmpfs 7/9 shmem_getpage flush_dcache

loopable-tmpfs.patch
tmpfs 8/9 loopable tmpfs

event-II.patch
f_version/i_version cleanups

event-ext2.patch
f_version/i_version cleanups: ext2

mod_timer-race.patch

blkdev-o_direct-short-read.patch
Fix O_DIRECT blockdev reads at end-of-device

adam-loop.patch

orlov-allocator.patch

blk-queue-bounce.patch
inline blk_queue_bounce

lseek-ext2_readdir.patch
remove lock_kernel() from ext2_readdir()

decoded-wchan-output.patch
pre-decoded wchan output in /proc/pid/wchan

write-deadlock.patch
Fix the generic_file_write-from-same-mmapped-page deadlock

rd-cleanup.patch
Cleanup and fix the ramdisk driver (doesn't work right yet)

hugetlb-prefault.patch
hugetlbpages: factor out some code for hugetlbfs

hugetlb-header-split.patch
Move hugetlb declarations into their own header

htlb-update.patch
hugetlb fixes and cleanups

hugetlb-page-count.patch
fix hugetlb thinko

hugetlbfs.patch
hugetlbfs file system

hugetlb-shm.patch
hugetlbfs backing for SYSV shared memory

truncate-bkl.patch
don't take the BKL in inode_setattr

akpm-deadline.patch
deadline scheduler tweaks

pipe-speedup.patch
user faster wakeups in the pipe code

dcache_rcu.patch
Use RCU for dcache

rcu-stats.patch
RCU statistics reporting

mpopulate.patch
remap_file_pages

shmem_populate.patch
tmpfs 9/9 Ingo's shmem_populate

ext23-acl-xattr-01.patch

ext23-acl-xattr-02.patch

ext23-acl-xattr-03.patch

ext23-acl-xattr-04.patch

ext23-acl-xattr-05.patch

ext23-acl-xattr-06.patch

ext23-acl-xattr-07.patch

ext23-acl-xattr-08.patch

ext23-acl-xattr-09.patch

ext23-acl-xattr-10.patch

ext23-acl-xattr-11.patch

ext2-mount-fix.patch

acl-xattr-on.patch
turn on posix acls and extended attributes

rmqueue_bulk.patch
bulk page allocator

free_pages_bulk.patch
Bulk page freeing function

hot_cold_pages.patch
Hot/Cold pages and zone->lock amortisation

readahead-cold-pages.patch
Use cache-cold pages for pagecache reads.

pagevec-hot-cold-hint.patch
hot/cold hints for truncate and page reclaim

page-reservation.patch
Page reservation API

wli-show_free_areas.patch
show_free_areas extensions

shpte-ng.patch

generic-nonlinear-mappings-D0.patch
generic nonlinear mappings


2002-10-23 09:55:05

by Con Kolivas

[permalink] [raw]
Subject: Re: 2.5.44-mm3

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Problem

I run hdparm in my init (to disable apm on the hard drive routinely) and got
this when I tried to boot mm3:

CPU:0
EIP 0060:[<c01b630e>] Not tainted
EFLAGS: 00010286
eax: 00000000 ebx: cdf73f00 ecx: cd4b0cd4 edx: c02479c4
esi: cdf73f00 edi: c02479cf ebp: 00000000 esp: cd4bbefc
ds: 0068 es: 0068 ss: 0068
Process hdparm (pid: 315, threadinfo=cd4ba000 tsk=cd938ce0)
Stack: cdf73f00 c013b3dc cd4b0cd4 cdab6540 cd4b0cd4 cdab6540 ffffffe9 cdfe65e0
cdf73f20 00000000 00000000 160065e0 ffffffa 00000000 c013b65e cdf73f00
cd4b0cd4 cdab6540 cd4b0cd4 cdab6540 cd4b0cd4 c0134d7a cd4b0cd4 cdab6540
Call Trace: [<c013b3dc>] [<c013b65e>] [<c0134d7a>] [<c0134cb2>] [<c0135023>]
[<c0106cd3>]
Code: 8b 40 2c 8b 5c 24 0c 8b 90 e8 00 00 00 ff 80 54 01 00 00 50


Then when I try to use the keyboard each keystroke produces something like:
evbug.c: Event. Dev: isa0060/serio0/input0, Type: 0, Code: 0, Value, 0

The machine still works ok after this but I keep getting this with each
keystroke.

Con
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.0 (GNU/Linux)

iD8DBQE9tnNfF6dfvkL3i1gRAtICAKCS4jwiqEdS/A8kUivzny6tn6549wCeIXZr
wcpKVUGAPbSGCq0HplGfOUA=
=8/+L
-----END PGP SIGNATURE-----

2002-10-23 13:03:38

by Ravikiran G Thirumalai

[permalink] [raw]
Subject: Re: 2.5.44-mm3

Hi,
My machine did not boot with CONFIG_NR_CPUS = 4. Same .config as one
used for 2.5.44-mm2. Could be the __node_to_cpu_mask redifinition from
the larger-cpu-masks patch ....

Thanks,
Kiran

2002-10-23 14:21:52

by Martin J. Bligh

[permalink] [raw]
Subject: Re: 2.5.44-mm3

> My machine did not boot with CONFIG_NR_CPUS = 4. Same .config as one
> used for 2.5.44-mm2. Could be the __node_to_cpu_mask redifinition from
> the larger-cpu-masks patch ....

I think Rusty is asleep now, but he sent me this earlier ... want
to try it? I just cut & pasted, so you'll have to apply it by hand.
As it is, you'll get 0 size for NR_CPUS < 8 I think.

M.

2.5.44-mm3-node-fix/include/asm-generic/topology.h
--- linux-2.5.44-mm3/include/asm-generic/topology.h 2002-10-23 12:03:14.000000000 +1000
+++ working-2.5.44-mm3-node-fix/include/asm-generic/topology.h 2002-10-23 19:47:36.000000000 +1000
@@ -42,7 +42,7 @@
#define __node_to_first_cpu(node) (0)
#endif
#ifndef __node_to_cpu_mask
-#define __node_to_cpu_mask(mask, node) (memset((mask), 0xFF, NR_CPUS/8))
+#define __node_to_cpu_mask(mask, node) (memset((mask), 0xFF, (NR_CPUS+7)/8))
#endif
#ifndef __node_to_memblk
#define __node_to_memblk(node) (0)