2002-10-15 05:05:01

by Andrew Morton

[permalink] [raw]
Subject: 2.5.43-m3


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

- drop SARD again. It broke RAID0. Al is working on converting SARD
to a driverfs interface.

- fix the crashing in the timer code.

- went on an uninlining rampage and shrunk the kernel image by 10k or so.

- merge up the ext2/3 extended attribute code, convert that to use
the slab shrinking API in Linus's current tree.

- add a new timer API function:

add_timer_on(struct timer_list *timer, int cpu);

to start a timer on a different CPU.

- rework the slab shrinking code to use add_timer_on(), so we don't
need to launch a kernel thread just to get a timer onto another CPU.

- Add Ingo's current remap_file_pages() patch. I had to renumber his
syscall from 253 to 254 due to a clash with the oprofile syscall.


-misc.patch
-hugetlb-meminfo.patch
-dio-bio-add-fix-1.patch
-swsusp-feature.patch
-large-queue-throttle.patch
-exit-page-referenced.patch
-swappiness.patch
-mapped-start-active.patch
-rename-dirty_async_ratio.patch
-auto-dirty-memory.patch
-batched-slab-asap.patch
-fix-pgpgout.patch
-msync-correctness.patch
-remove-kiobufs.patch

Merged

-sard.patch

Out again

+mod_timer-race.patch

Fix the timer crashes.

+truncate-bkl.patch

Random BKL removal

+fsync_buffers_list-fix.patch

fsync correctness

+wli-show_free_areas.patch

Show the memory states when the oom-killer strikes

+add_timer_on.patch

add_timer_on()

-cpucache_init-fix.patch
-slab-split-10-list_for_each_fix.patch

Folded into slab-split-08-reap.patch

+slab-timer.patch

Use add_timer_on() for the slab per-cpu cache reaping function.

+slab-use-sem.patch

Drop the new slab rwlock and just use down_trylock(&cache_chain_sem);

+fs-inlines.patch
+mm-inlines.patch
+uninline-highmem.patch

Uninline various things.

-shpte-ifdef.patch
-shpte-mprotect-fix.patch
-shpte-unmap-fix.patch

Folded into shpte.patch

+xattr-2.patch
+xattr-3.patch
+xattr-4.patch

ext2/3 extended attributes

+xattr-shrinker.patch

Convert xattr to use set_shrinker/remove_shrinker

+mpopulate.patch

remap_file_pages()




linus.patch
cset-1.782-to-1.848.txt.gz

kgdb.patch

oprofile-25.patch

mod_timer-race.patch

net-loopback.patch
Disable second copy in the network loopback driver

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

orlov-allocator.patch

blk-queue-bounce.patch
inline blk_queue_bounce

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

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

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)

spin-lock-check.patch
spinlock/rwlock checking infrastructure

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

ramfs-aops.patch
Move ramfs address_space ops into libfs

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

hugetlbfs.patch
hugetlbfs file system

hugetlb-shm.patch
hugetlbfs backing for SYSV shared memory

page_reserved-accounting.patch
Global PageReserved accounting

use-page_reserved_accounting.patch
Use PG_reserved accounting in the VM

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

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

akpm-deadline.patch
deadline scheduler tweaks

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

raid0-fix.patch
RAID0 fix

fsync_buffers_list-fix.patch
fsync_buffers_list fix

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

o_streaming.patch
O_STREAMING support

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

fs-inlines.patch
Kill some inlining in fs/*

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

uninline-highmem.patch
uninline the highmem mapping functions

shpte.patch

shmmap.patch
Proactively share page tables for shared memory

xattr-2.patch

xattr-shrinker.patch

xattr-3.patch

xattr-4.patch

read_barrier_depends.patch
extended barrier primitives

rcu_ltimer.patch
RCU core

dcache_rcu.patch
Use RCU for dcache

mpopulate.patch
remap_file_pages


2002-10-15 05:14:39

by Andrew Morton

[permalink] [raw]
Subject: Re: 2.5.43-m3


yeah, yeah. off-by-one.

Andrew Morton wrote:
>
> ...
> - Add Ingo's current remap_file_pages() patch. I had to renumber his
> syscall from 253 to 254 due to a clash with the oprofile syscall.
>

This will only work on ia32. To test on other architectures, please
do a patch -p1 -R of

http://www.zip.com.au/~akpm/linux/patches/2.5/2.5.42/2.5.42-mm3/broken-out/mpopulate.patch

2002-10-15 05:51:40

by Matt Reppert

[permalink] [raw]
Subject: [PATCH] Compile without xattrs

On Mon, 14 Oct 2002 22:10:41 -0700
Andrew Morton <[email protected]> wrote:

> - merge up the ext2/3 extended attribute code, convert that to use
> the slab shrinking API in Linus's current tree.

Trivial patch for the "too chicken to enable xattrs for now" case, but I
need this to compile:

--- linux-2.5-orig/include/linux/ext2_xattr.h 2002-10-15 00:47:03 -0500
+++ linux-2.5/include/linux/ext2_xattr.h 2002-10-15 00:45:48 -0500
@@ -92,20 +92,20 @@
ext2_xattr_get(struct inode *inode, int name_index,
const char *name, void *buffer, size_t size)
{
- return -ENOTSUP;
+ return -ENOTSUPP;
}

static inline int
ext2_xattr_list(struct inode *inode, char *buffer, size_t size)
{
- return -ENOTSUP;
+ return -ENOTSUPP;
}

static inline int
ext2_xattr_set(struct inode *inode, int name_index, const char *name,
const void *value, size_t size, int flags)
{
- return -ENOTSUP;
+ return -ENOTSUPP;
}

static inline void
--- linux-2.5-orig/include/linux/ext3_xattr.h 2002-10-15 00:49:59.000000000 -0500
+++ linux-2.5/include/linux/ext3_xattr.h 2002-10-15 00:50:12.000000000 -0500
@@ -92,20 +92,20 @@
ext3_xattr_get(struct inode *inode, int name_index, const char *name,
void *buffer, size_t size, int flags)
{
- return -ENOTSUP;
+ return -ENOTSUPP;
}

static inline int
ext3_xattr_list(struct inode *inode, void *buffer, size_t size, int flags)
{
- return -ENOTSUP;
+ return -ENOTSUPP;
}

static inline int
ext3_xattr_set(handle_t *handle, struct inode *inode, int name_index,
const char *name, const void *value, size_t size, int flags)
{
- return -ENOTSUP;
+ return -ENOTSUPP;
}

static inline void


Matt

2002-10-15 05:59:58

by Andrew Morton

[permalink] [raw]
Subject: Re: [PATCH] Compile without xattrs

Matt Reppert wrote:
>
> On Mon, 14 Oct 2002 22:10:41 -0700
> Andrew Morton <[email protected]> wrote:
>
> > - merge up the ext2/3 extended attribute code, convert that to use
> > the slab shrinking API in Linus's current tree.
>
> Trivial patch for the "too chicken to enable xattrs for now" case, but I
> need this to compile:
>

Thanks. I uploaded a copy to
http://www.zip.com.au/~akpm/linux/patches/2.5/2.5.42/2.5.42-mm3/no-xattrs.patch

2002-10-15 10:05:33

by Andreas Gruenbacher

[permalink] [raw]
Subject: Re: [Ext2-devel] [PATCH] Compile without xattrs

On Tuesday 15 October 2002 07:57, Matt Reppert wrote:
> On Mon, 14 Oct 2002 22:10:41 -0700
>
> Andrew Morton <[email protected]> wrote:
> > - merge up the ext2/3 extended attribute code, convert that to use
> > the slab shrinking API in Linus's current tree.
>
> Trivial patch for the "too chicken to enable xattrs for now" case, but I
> need this to compile:

Please add this to include/linux/errno.h instead:

#define ENOTSUP EOPNOTSUPP /* Operation not supported */

ENOTSUPP is distinct from (EOPNOTSUPP = ENOTSUP)

(Yes, it's a mess.)

--Andreas.

> --- linux-2.5-orig/include/linux/ext2_xattr.h 2002-10-15 00:47:03 -0500
> +++ linux-2.5/include/linux/ext2_xattr.h 2002-10-15 00:45:48 -0500
> @@ -92,20 +92,20 @@
> ext2_xattr_get(struct inode *inode, int name_index,
> const char *name, void *buffer, size_t size)
> {
> - return -ENOTSUP;
> + return -ENOTSUPP;
> }
>
> static inline int
> ext2_xattr_list(struct inode *inode, char *buffer, size_t size)
> {
> - return -ENOTSUP;
> + return -ENOTSUPP;
> }
>
> static inline int
> ext2_xattr_set(struct inode *inode, int name_index, const char *name,
> const void *value, size_t size, int flags)
> {
> - return -ENOTSUP;
> + return -ENOTSUPP;
> }
>
> static inline void
> --- linux-2.5-orig/include/linux/ext3_xattr.h 2002-10-15 00:49:59.000000000
> -0500 +++ linux-2.5/include/linux/ext3_xattr.h 2002-10-15
> 00:50:12.000000000 -0500 @@ -92,20 +92,20 @@
> ext3_xattr_get(struct inode *inode, int name_index, const char *name,
> void *buffer, size_t size, int flags)
> {
> - return -ENOTSUP;
> + return -ENOTSUPP;
> }
>
> static inline int
> ext3_xattr_list(struct inode *inode, void *buffer, size_t size, int flags)
> {
> - return -ENOTSUP;
> + return -ENOTSUPP;
> }
>
> static inline int
> ext3_xattr_set(handle_t *handle, struct inode *inode, int name_index,
> const char *name, const void *value, size_t size, int flags)
> {
> - return -ENOTSUP;
> + return -ENOTSUPP;
> }
>
> static inline void
>
>
> Matt

2002-10-15 10:48:56

by Christoph Hellwig

[permalink] [raw]
Subject: Re: [Ext2-devel] [PATCH] Compile without xattrs

On Tue, Oct 15, 2002 at 12:11:19PM +0200, Andreas Gruenbacher wrote:
> On Tuesday 15 October 2002 07:57, Matt Reppert wrote:
> > On Mon, 14 Oct 2002 22:10:41 -0700
> >
> > Andrew Morton <[email protected]> wrote:
> > > - merge up the ext2/3 extended attribute code, convert that to use
> > > the slab shrinking API in Linus's current tree.
> >
> > Trivial patch for the "too chicken to enable xattrs for now" case, but I
> > need this to compile:
>
> Please add this to include/linux/errno.h instead:
>
> #define ENOTSUP EOPNOTSUPP /* Operation not supported */
>
> ENOTSUPP is distinct from (EOPNOTSUPP = ENOTSUP)
>
> (Yes, it's a mess.)

You explained some time ago that it is not posix-compliant to have
two errnos with the same numerical value. So please do it right..

2002-10-15 11:12:32

by Theodore Ts'o

[permalink] [raw]
Subject: Re: [Ext2-devel] [PATCH] Compile without xattrs

On Tue, Oct 15, 2002 at 12:11:19PM +0200, Andreas Gruenbacher wrote:
> On Tuesday 15 October 2002 07:57, Matt Reppert wrote:
> > On Mon, 14 Oct 2002 22:10:41 -0700
> >
> > Andrew Morton <[email protected]> wrote:
> > > - merge up the ext2/3 extended attribute code, convert that to use
> > > the slab shrinking API in Linus's current tree.
> >
> > Trivial patch for the "too chicken to enable xattrs for now" case, but I
> > need this to compile:
>
> Please add this to include/linux/errno.h instead:
>
> #define ENOTSUP EOPNOTSUPP /* Operation not supported */
>
> ENOTSUPP is distinct from (EOPNOTSUPP = ENOTSUP)

Actually, what I've been doing is just using EOPNOTSUPP directly in
the patches; I just missed those error returns in ext[23]_xattr.h.

- Ted