Path: archiver1.google.com!newsfeed.google.com!sn-xit-02!supernews.com!
newsfeed.direct.ca!look.ca!cpk-news-hub1.bbnplanet.com!news.gtei.net!
news.maxwell.syr.edu!feed1.uncensored-news.com!propagator-la!
news-in-la.newsfeeds.com!news-in.superfeed.net!news.exit.com!
gehenna.pell.portland.or.us!nntp-server.caltech.edu!nntp-server.caltech.edu!mail2news96
Newsgroups: mlist.linux.kernel
Date: 	Sun, 16 Sep 2001 20:34:14 +0200
From: Andrea Arcangeli <and...@suse.de>
X-To: Tonu Samuel <t...@please.do.not.remove.this.spam.ee>
X-Cc: Linus Torvalds <torva...@transmeta.com>, linux-ker...@vger.kernel.org
Subject: vm rewrite ready [Re: broken VM in 2.4.10-pre9]
Message-ID: <linux.kernel.20010916203414.B1315@athlon.random>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Approved: n...@nntp-server.caltech.edu
Lines: 75

On Mon, Sep 17, 2001 at 06:25:38PM +0800, Tonu Samuel wrote:
> On 16 Sep 2001 05:31:11 +0000, Linus Torvalds wrote:
> 
> > Also note that the amount of "swap used" is totally meaningless in
> > 2.4.x. The 2.4.x kernel will _allocate_ the swap backing store much
> > earlier than 2.2.x, but that doesn't actuall ymean that it does any of
> > the IO. Indeed, allocating the swap backing store just means that the
> > swap pages are then kept track of, so that they can be aged along with
> > other stores.
> 
> Problem still exists and persists. Not long time ago man from Yahoo
> described well case when change from 2.2.19 to 2.4.x caused performance
> problems. On 2.2.19 everything ran fine. They have MySQL running+did

After a few days of developement I think I'm ready to release the VM
rewrite I did.

The alternate vm will be included in 2.4.10pre9aa1 (or anwways the very
next -aa release) and I'll maintain it in the -aa tree.  It is supposed
to provide:

1) stable kswapd, avoid the kswapd 100% load of the cpu problem
   (this is provided by the classzone design, btw I improved the
   implementation a little bit compared to the 2.3/2.4.0-test patches,
   now I try to do things as lazily as possible without the bookkeeping
   in the pagealloc/pagefreeing)
2) optimal performance, avoid slowdowns after multiple runs of workloads
   and avoid swapout storms (for databases not using O_DIRECT)
3) you will get swap+ram of available virtual memory

At the moment it's of course still a bit experimental and subject to
changes but I'm writing this email on top of it and it's perfectly
usable.

This isn't an hack/band-aid or a small set of changes, it's a
complete rewrite from scratch of the whole memory balancing including
garbage collections lru lists, kswapd etc... (only the swap_out() path
is almost unchanged)

The only benchmark I did so far is been `dbench`. Without the vm patch
applied dbench says:

Benchmark

Andrea
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Path: archiver1.google.com!newsfeed.google.com!sn-xit-02!supernews.com!
newsfeed.direct.ca!look.ca!newsfeed1.cidera.com!Cidera!news.maxwell.syr.edu!
feed1.uncensored-news.com!propagator-la!news-in-la.newsfeeds.com!
news-in.superfeed.net!news.exit.com!gehenna.pell.portland.or.us!
nntp-server.caltech.edu!nntp-server.caltech.edu!mail2news96
Newsgroups: mlist.linux.kernel
Date: 	Sun, 16 Sep 2001 16:07:16 -0300 (BRST)
From: Rik van Riel <r...@conectiva.com.br>
X-To: Andrea Arcangeli <and...@suse.de>
X-Cc: Tonu Samuel <t...@please.do.not.remove.this.spam.ee>,
        Linus Torvalds <torva...@transmeta.com>,
        <linux-ker...@vger.kernel.org>
Subject: Re: vm rewrite ready [Re: broken VM in 2.4.10-pre9]
Message-ID: 
<linux.kernel.Pine.LNX.4.33L.0109161559500.21279-100000@imladris.rielhome.conectiva>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Approved: n...@nntp-server.caltech.edu
Lines: 32

On Sun, 16 Sep 2001, Andrea Arcangeli wrote:

> The alternate vm will be included in 2.4.10pre9aa1 (or anwways the
> very next -aa release) and I'll maintain it in the -aa tree.

Cool, I'll definately take a look to see if there are any
good ideas ready to be integrated into the -linus or -ac
kernels.

> It is supposed to provide:

   [snip holy grail]

I doubt you'll be able to achieve all of those without
really major changes, but I'll take a look at your code
when you make it public ;)

cheers,

Rik
-- 
IA64: a worthy successor to i860.

http://www.surriel.com/		http://distro.conectiva.com/

Send all your spam to aardv...@nl.linux.org (spam digging piggy)

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Path: archiver1.google.com!newsfeed.google.com!sn-xit-02!supernews.com!
newsfeed.direct.ca!look.ca!newshub2.rdc1.sfba.home.com!news.home.com!
enews.sgi.com!news-out.spamkiller.net!propagator-la!news-in-la.newsfeeds.com!
news-in.superfeed.net!news.exit.com!gehenna.pell.portland.or.us!
nntp-server.caltech.edu!nntp-server.caltech.edu!mail2news96
Newsgroups: mlist.linux.kernel
Subject: Re: vm rewrite ready [Re: broken VM in 2.4.10-pre9]
X-To: r...@conectiva.com.br (Rik van Riel)
Date: 	Sun, 16 Sep 2001 20:17:14 +0100 (BST)
X-Cc: and...@suse.de (Andrea Arcangeli),
        t...@please.do.not.remove.this.spam.ee (Tonu Samuel),
        torva...@transmeta.com (Linus Torvalds), linux-ker...@vger.kernel.org
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Message-ID: <linux.kernel.E15ihPm-0005g9-00@the-village.bc.nu>
From: Alan Cox <a...@lxorguk.ukuu.org.uk>
Approved: n...@nntp-server.caltech.edu
Lines: 15

>    [snip holy grail]
> 
> I doubt you'll be able to achieve all of those without
> really major changes, but I'll take a look at your code
> when you make it public ;)

Andrea made 2.2 finally stable under really high VM loads. I'm certainly
interested to see what comes out of this. 

Alan
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Path: archiver1.google.com!newsfeed.google.com!sn-xit-02!sn-xit-01!
supernews.com!newshub2.rdc1.sfba.home.com!news.home.com!enews.sgi.com!
news-out.spamkiller.net!propagator-la!news-in-la.newsfeeds.com!
news-in.superfeed.net!news.exit.com!gehenna.pell.portland.or.us!
nntp-server.caltech.edu!nntp-server.caltech.edu!mail2news96
Newsgroups: mlist.linux.kernel
Date: 	Sun, 16 Sep 2001 16:15:49 -0300 (BRST)
From: Rik van Riel <r...@conectiva.com.br>
X-To: Alan Cox <a...@lxorguk.ukuu.org.uk>
X-Cc: Andrea Arcangeli <and...@suse.de>,
        Tonu Samuel <t...@please.do.not.remove.this.spam.ee>,
        Linus Torvalds <torva...@transmeta.com>,
        <linux-ker...@vger.kernel.org>
Subject: Re: vm rewrite ready [Re: broken VM in 2.4.10-pre9]
Message-ID: 
<linux.kernel.Pine.LNX.4.33L.0109161614300.21279-100000@imladris.rielhome.conectiva>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Approved: n...@nntp-server.caltech.edu
Lines: 32

On Sun, 16 Sep 2001, Alan Cox wrote:

> >    [snip holy grail]
> >
> > I doubt you'll be able to achieve all of those without
> > really major changes, but I'll take a look at your code
> > when you make it public ;)
>
> Andrea made 2.2 finally stable under really high VM loads. I'm
> certainly interested to see what comes out of this.

Definately, I have no doubt he'll achieve some good
results.  It's the overly wild claims I'm having doubts
about.

I'm looking forward to seeing his patch...

regards,

Rik
-- 
IA64: a worthy successor to i860.

http://www.surriel.com/		http://distro.conectiva.com/

Send all your spam to aardv...@nl.linux.org (spam digging piggy)

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Path: archiver1.google.com!newsfeed.google.com!sn-xit-02!supernews.com!
newsfeed.direct.ca!look.ca!newshub2.rdc1.sfba.home.com!news.home.com!
newshub1-work.home.com!gehenna.pell.portland.or.us!nntp-server.caltech.edu!
nntp-server.caltech.edu!mail2news96
Newsgroups: mlist.linux.kernel
Date: 	Sun, 16 Sep 2001 21:19:35 +0200
From: Andrea Arcangeli <and...@suse.de>
X-To: Rik van Riel <r...@conectiva.com.br>
X-Cc: Tonu Samuel <t...@please.do.not.remove.this.spam.ee>,
        Linus Torvalds <torva...@transmeta.com>, linux-ker...@vger.kernel.org
Subject: Re: vm rewrite ready [Re: broken VM in 2.4.10-pre9]
Message-ID: <linux.kernel.20010916211934.C1315@athlon.random>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Approved: n...@nntp-server.caltech.edu
Lines: 50

On Sun, Sep 16, 2001 at 04:07:16PM -0300, Rik van Riel wrote:
> I doubt you'll be able to achieve all of those without
> really major changes, but I'll take a look at your code
> when you make it public ;)

as said it is quite a major change, it discards most of the the 2.4 vm
that I don't agree with, it is basically an evolution of the classzone
patch.

andrea@athlon:~/remote/kernel.org/kernels/v2.4/2.4.10pre9aa1 > diffstat 80_vm-aa-1 
 ID                      |binary
 arch/alpha/mm/fault.c   |    7 
 arch/i386/mm/fault.c    |   25 +
 fs/buffer.c             |   68 +--
 fs/dcache.c             |    2 
 fs/inode.c              |   59 +--
 fs/proc/proc_misc.c     |    8 
 include/linux/fs.h      |    2 
 include/linux/highmem.h |    2 
 include/linux/list.h    |    1 
 include/linux/mm.h      |   50 +-
 include/linux/mmzone.h  |    9 
 include/linux/pagemap.h |    1 
 include/linux/sched.h   |    3 
 include/linux/slab.h    |    2 
 include/linux/swap.h    |  148 ++-----
 include/linux/swapctl.h |   22 -
 kernel/fork.c           |    2 
 kernel/signal.c         |    2 
 kernel/sysctl.c         |    6 
 mm/filemap.c            |   38 -
 mm/memory.c             |   12 
 mm/numa.c               |    8 
 mm/oom_kill.c           |   40 --
 mm/page_alloc.c         |  501 +++++++++-----------------
 mm/shmem.c              |    2 
 mm/slab.c               |    8 
 mm/swap.c               |  105 -----
 mm/swap_state.c         |   14 
 mm/swapfile.c           |   21 -
 mm/vmscan.c             |  913 +++++++++++++++---------------------------------
 31 files changed, 699 insertions(+), 1382 deletions(-)
andrea@athlon:~/remote/kernel.org/kernels/v2.4/2.4.10pre9aa1 > 

Andrea
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Path: archiver1.google.com!newsfeed.google.com!sn-xit-02!supernews.com!
newsfeed.direct.ca!look.ca!newshub2.rdc1.sfba.home.com!news.home.com!
newshub1-work.home.com!gehenna.pell.portland.or.us!nntp-server.caltech.edu!
nntp-server.caltech.edu!mail2news96
Newsgroups: mlist.linux.kernel
Date: 	Sun, 16 Sep 2001 12:30:39 -0700 (PDT)
From: Linus Torvalds <torva...@transmeta.com>
X-To: Andrea Arcangeli <and...@suse.de>
X-cc: Rik van Riel <r...@conectiva.com.br>,
        Tonu Samuel <t...@please.do.not.remove.this.spam.ee>,
        <linux-ker...@vger.kernel.org>
Subject: Re: vm rewrite ready [Re: broken VM in 2.4.10-pre9]
Message-ID: <linux.kernel.Pine.LNX.4.33.0109161229140.8286-100000@penguin.transmeta.com>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Approved: n...@nntp-server.caltech.edu
Lines: 26


On Sun, 16 Sep 2001, Andrea Arcangeli wrote:
>
> as said it is quite a major change, it discards most of the the 2.4 vm
> that I don't agree with, it is basically an evolution of the classzone
> patch.

That is the wrong direction to go into.

We'll be completely screwed on NuMA with the classzone patch. I've said so
before, I'll say so again.

The basic approach of the classzone patch is _wrong_, in making global
decisions where no "globality" exists.

I bet that the improvements are from other things, not from classzone
itself. An dI will bet that if we start doing classzones, we'll regret it
a LOT in a few years.

		Linus

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Path: archiver1.google.com!newsfeed.google.com!newsfeed.stanford.edu!
news.tele.dk!small.news.tele.dk!129.240.148.23!uio.no!nntp.uio.no!ifi.uio.no!
internet-mailinglist
Newsgroups: fa.linux.kernel
Return-Path: <linux-kernel-ow...@vger.kernel.org>
Original-Date: 	Mon, 17 Sep 2001 18:09:14 +0200
From: Andrea Arcangeli <and...@suse.de>
To: linux-ker...@vger.kernel.org
Subject: 2.4.10pre10aa1 (first spin to the vm rewrite included)
Original-Message-ID: <20010917180914.I713@athlon.random>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
X-GnuPG-Key-URL: http://e-mind.com/~andrea/aa.gnupg.asc
X-PGP-Key-URL: http://e-mind.com/~andrea/aa.asc
Sender: linux-kernel-ow...@vger.kernel.org
Precedence: bulk
X-Mailing-List: 	linux-kernel@vger.kernel.org
Organization: Internet mailing list
Date: Mon, 17 Sep 2001 16:14:25 GMT
Message-ID: <fa.g8d0mov.1igega6@ifi.uio.no>
Lines: 664

Some of the the main features of 2.4.10pre10aa1 are:

o	vm rewrite (see below a description)
o	do all the possible vma merging during mmap/mremap/mprotect and
	rewrite of the vma lookup engine using rb trees checkpointing for
	avoiding various browse of the tree during vma merging, mmap etc...
o	blkdev in pagecache (you can also open a blkdev and mmap it,
	or you can open it with O_DIRECT and do rawio without using /dev/raw)
o	rawio improvement with preallocation of the kiobuf in the f_iobuf
	provided by the O_DIRECT support (next step is to split the kiobuf
	for the contention case that doesn't happen during the DB workload
	and for the non I/O users like bttv)
o	O_DIRECT support
o	latest TUX 2 release developed by Ingo Molnar (RedHat Inc) (you need
	the tux 2.1.0 userspace package from redhat.com to use it)
o	latest UML release developed by Jeff Dike
o	rcu core included (thought it will be rewritten, I agreed with
	Dipankar that the per-cpu scheduling sequence number seems
	the best approch, such number can serve also as a statistic
	to usespace infact, it is very similar to Rusty's patch but it
	doesn't add any branch to the schedule fast path, he's rewriting
	the patch at the moment and I'll include it in the next release)

Only in 2.4.10pre8aa1: 00_gcc-30-extern-static-3
Only in 2.4.10pre8aa1: 00_nfs-delete-lock-1
Only in 2.4.10pre8aa1: 00_tgid-1

	Merged into mainline.

Only in 2.4.10pre10aa1: 80_vm-aa-1

	VM rewrite, should fix:

	-	kswapd looping forever on DMA or NORMAL classzones
	-	swap+ram will be almost all available address space
		(modulo when the swap cache serves to avoid swapins
		of shares anonymous memory after a fork)
	-	slowdowns after multiple runs of the workloads
	-	swapout storms
	-	dbench runs twice faster with this patch applied

	I've several ideas on how to change the vm algorithms to
	be even better, this first one may be a little too agrressive, however
	I tried a few of them and I did a check of the dbench numbers after
	that and they were always slower than the algorithm in the 80_vm-aa-1
	patch. (OTOH I don't want a VM that works wonderfully on dbench
	but not with other normal workloads)

	This patch may still swap a little too much (but it shouldnt'
	generate the storms during heavy I/O), I need feedback from differnt
	workloads to be sure it's ok, at this point it is trival for me to
	change the behaviour radically after I get the feedback and numbers
	from users and developers.

	So please test it so I will know if I must change something.

	About stability it should be rock solid, but of course there's
	not a very good statistic yet (my most critical desktop is running
	2.4.10pre10aa1 since last night under high load without problems yet).
	I probably have a bug in swapoff but let's ignore it for now, just
	try to run swapoff only before shutting down the machine. The fact
	is that the 2.4 VM is broken freeing physically dirty pages.
	The last owner of the page (usually the VM except in swapoff) has to
	clear the dirty flag before freeing the page, in swapoff it may
	be a little more complicate (we may need to grab the pagecache_lock
	to ensure nobody start using the page while we clear it). And swapoff
	is probably racy anyways as usual (swapoff in 2.2 is racy too). In
	short I didn't focused on swapoff yet, I just made an hack to make it
	to work while shutting down the machine so far.

	I know this patch could hurt some developer since I backed out
	lots of (broken) stuff that probably they liked, I'm sorry for that,
	but I will mainly listen to numbers, not to "voice/email" vapourware
	arguments (like the argument numa is broken, that's just a red herring,
	this patch flyes on the numa wildfire simulation with all the numa
	heuristics enabled as well as on uml with mem=4m, origin 2k or whatever
	x86/ia64 numa hardware will never ever have problems either with it and
	I will make sure it will work correctly).  So in short I will love to
	be proved wrong on the _paper_ with real life issues.

Only in 2.4.10pre10aa1: 00_alpha-compile-1

	Fix a few alpha compile troubles.

Only in 2.4.10pre8aa1: 00_alpha-fp-disabled-1
Only in 2.4.10pre10aa1: 00_alpha-fp-disabled-2

	Rediffed due trivial rejects.

Only in 2.4.10pre8aa1: 00_copy-user-lat-2
Only in 2.4.10pre10aa1: 00_copy-user-lat-3

	Rediffed due trivial rejects.

Only in 2.4.10pre8aa1: 00_module-gfp-2
Only in 2.4.10pre10aa1: 00_module-gfp-3

	Rediffed due trivial rejects.

Only in 2.4.10pre8aa1: 00_silent-stack-overflow-8
Only in 2.4.10pre10aa1: 00_silent-stack-overflow-9

	Rediffed due trivial rejects.

Only in 2.4.10pre8aa1: 10_prefetch-6
Only in 2.4.10pre10aa1: 10_prefetch-8

	Part of it merged into mainline, rediffed the missing part.

Only in 2.4.10pre8aa1: 40_blkdev-pagecache-16
Only in 2.4.10pre10aa1: 40_blkdev-pagecache-17

	Rediffed due trivial rejects.

Only in 2.4.10pre8aa1: 50_uml-patch-2.4.9-4.bz2
Only in 2.4.10pre10aa1: 50_uml-patch-2.4.9-6.bz2

	Picked last update with the move of the kernel address space from
	sourceforge.

Only in 2.4.10pre8aa1: 60_tux-2.4.9-ac10-H2
Only in 2.4.10pre10aa1: 60_tux-2.4.9-ac10-H7

	Picked last update from www.redhat.com/~mingo/ .

Only in 2.4.10pre8aa1: 70_mmap-rb-8
Only in 2.4.10pre10aa1: 70_mmap-rb-9

	Rediffed due trivial rejects.

URL:

	ftp://ftp.us.kernel.org/pub/linux/kernel/people/andrea/kernels/v2.4/2.4.10pre10aa1.bz2
	ftp://ftp.us.kernel.org/pub/linux/kernel/people/andrea/kernels/v2.4/2.4.10pre10aa1/
	ftp://ftp.us.kernel.org/pub/linux/kernel/people/andrea/kernels/v2.4/2.4.10pre10aa1/80_vm-aa-1

Some diffstats:

andrea@athlon:~ > diffstat ~/remote/kernel.org/kernels/v2.4/2.4.10pre10aa1/80_vm-aa-1 
 arch/alpha/mm/fault.c   |    7 
 arch/i386/mm/fault.c    |   25 +
 fs/buffer.c             |   68 +--
 fs/dcache.c             |    2 
 fs/inode.c              |   59 +--
 fs/proc/proc_misc.c     |    8 
 include/linux/fs.h      |    1 
 include/linux/highmem.h |    2 
 include/linux/list.h    |    1 
 include/linux/mm.h      |   50 +-
 include/linux/mmzone.h  |    9 
 include/linux/pagemap.h |    1 
 include/linux/sched.h   |    3 
 include/linux/slab.h    |    2 
 include/linux/swap.h    |  152 ++------
 include/linux/swapctl.h |   22 -
 kernel/fork.c           |    2 
 kernel/signal.c         |    2 
 kernel/sysctl.c         |    6 
 mm/filemap.c            |   46 --
 mm/memory.c             |   21 -
 mm/numa.c               |    8 
 mm/oom_kill.c           |   40 --
 mm/page_alloc.c         |  501 +++++++++-----------------
 mm/shmem.c              |    2 
 mm/slab.c               |    8 
 mm/swap.c               |  105 -----
 mm/swap_state.c         |   14 
 mm/swapfile.c           |   21 -
 mm/vmscan.c             |  909 ++++++++++++++----------------------------------
 30 files changed, 694 insertions(+), 1403 deletions(-)
andrea@athlon:~ > 

diffstat of the whole patch:

 CREDITS                                  |    2 
 Documentation/Configure.help             |  237 +++
 MAINTAINERS                              |    8 
 Makefile                                 |    9 
 arch/alpha/config.in                     |    6 
 arch/alpha/kernel/alpha_ksyms.c          |    4 
 arch/alpha/kernel/entry.S                |   18 
 arch/alpha/kernel/irq.c                  |    2 
 arch/alpha/kernel/irq_alpha.c            |    2 
 arch/alpha/kernel/process.c              |    5 
 arch/alpha/kernel/proto.h                |    5 
 arch/alpha/kernel/traps.c                |   30 
 arch/alpha/mm/fault.c                    |    9 
 arch/arm/config.in                       |    2 
 arch/arm/kernel/init_task.c              |    1 
 arch/arm/mm/fault-common.c               |    2 
 arch/cris/config.in                      |    1 
 arch/cris/kernel/process.c               |    1 
 arch/cris/mm/fault.c                     |    2 
 arch/i386/Makefile                       |    3 
 arch/i386/config.in                      |   14 
 arch/i386/kernel/entry.S                 |   16 
 arch/i386/kernel/init_task.c             |    1 
 arch/i386/kernel/io_apic.c               |   31 
 arch/i386/kernel/irq.c                   |    8 
 arch/i386/kernel/process.c               |    1 
 arch/i386/kernel/setup.c                 |   12 
 arch/i386/kernel/smp.c                   |    6 
 arch/i386/kernel/smpboot.c               |    2 
 arch/i386/lib/usercopy.c                 |    8 
 arch/i386/mm/extable.c                   |    2 
 arch/i386/mm/fault.c                     |   35 
 arch/i386/vmlinux.lds.S                  |   83 +
 arch/ia64/config.in                      |    1 
 arch/ia64/kernel/init_task.c             |    1 
 arch/ia64/mm/fault.c                     |    2 
 arch/m68k/config.in                      |    1 
 arch/m68k/kernel/process.c               |    1 
 arch/m68k/mm/fault.c                     |    2 
 arch/mips/config.in                      |    1 
 arch/mips/kernel/init_task.c             |    1 
 arch/mips/mm/fault.c                     |    2 
 arch/mips64/config.in                    |    1 
 arch/mips64/kernel/init_task.c           |    1 
 arch/mips64/mm/fault.c                   |    2 
 arch/parisc/config.in                    |    1 
 arch/parisc/kernel/init_task.c           |    1 
 arch/ppc/config.in                       |    3 
 arch/ppc/kernel/process.c                |    1 
 arch/ppc/mm/fault.c                      |    5 
 arch/s390/config.in                      |    1 
 arch/s390/kernel/init_task.c             |    1 
 arch/s390/mm/fault.c                     |    2 
 arch/s390x/config.in                     |    1 
 arch/s390x/kernel/init_task.c            |    1 
 arch/s390x/mm/fault.c                    |    2 
 arch/sh/config.in                        |    1 
 arch/sh/kernel/init_task.c               |    1 
 arch/sh/mm/fault.c                       |    4 
 arch/sparc/config.in                     |    1 
 arch/sparc/kernel/init_task.c            |    1 
 arch/sparc/mm/fault.c                    |    4 
 arch/sparc64/config.in                   |    4 
 arch/sparc64/kernel/init_task.c          |    1 
 arch/sparc64/mm/fault.c                  |    2 
 arch/um/Makefile                         |  103 +
 arch/um/Makefile-i386                    |    8 
 arch/um/Makefile-ia64                    |    1 
 arch/um/Makefile-ppc                     |    5 
 arch/um/boot/Makefile                    |    3 
 arch/um/config.in                        |  109 +
 arch/um/config.release                   |  290 ++++
 arch/um/defconfig                        |  293 ++++
 arch/um/drivers/Makefile                 |   50 
 arch/um/drivers/chan_kern.c              |  270 ++++
 arch/um/drivers/chan_user.c              |  250 +++
 arch/um/drivers/daemon.h                 |   39 
 arch/um/drivers/daemon_kern.c            |  128 +
 arch/um/drivers/daemon_kern.h            |    8 
 arch/um/drivers/daemon_user.c            |  210 +++
 arch/um/drivers/etap.h                   |   34 
 arch/um/drivers/etap_kern.h              |   24 
 arch/um/drivers/ethertap_kern.c          |  139 ++
 arch/um/drivers/ethertap_user.c          |  231 +++
 arch/um/drivers/mcast.h                  |   36 
 arch/um/drivers/mcast_kern.c             |  168 ++
 arch/um/drivers/mcast_kern.h             |    8 
 arch/um/drivers/mcast_user.c             |  214 +++
 arch/um/drivers/mconsole_kern.c          |  235 +++
 arch/um/drivers/mconsole_user.c          |  168 ++
 arch/um/drivers/mmapper_kern.c           |  134 ++
 arch/um/drivers/net_kern.c               |  631 +++++++++
 arch/um/drivers/net_kern.h               |   66 
 arch/um/drivers/net_user.c               |   65 
 arch/um/drivers/net_user.h               |   43 
 arch/um/drivers/slip.h                   |   33 
 arch/um/drivers/slip_kern.c              |  106 +
 arch/um/drivers/slip_kern.h              |    8 
 arch/um/drivers/slip_user.c              |  284 ++++
 arch/um/drivers/ssl.c                    |  310 ++++
 arch/um/drivers/ssl.h                    |   23 
 arch/um/drivers/stdio_console.c          |  294 ++++
 arch/um/drivers/stdio_console.h          |   26 
 arch/um/drivers/stdio_console_user.c     |   53 
 arch/um/drivers/tuntap.h                 |   38 
 arch/um/drivers/tuntap_kern.c            |  130 +
 arch/um/drivers/tuntap_kern.h            |   24 
 arch/um/drivers/tuntap_user.c            |  264 +++
 arch/um/drivers/ubd.c                    |  796 +++++++++++
 arch/um/drivers/ubd_user.c               |  474 +++++++
 arch/um/fs/Makefile                      |   16 
 arch/um/fs/hostfs/Makefile               |   31 
 arch/um/fs/hostfs/hostfs.h               |   74 +
 arch/um/fs/hostfs/hostfs_kern.c          |  782 +++++++++++
 arch/um/fs/hostfs/hostfs_user.c          |  337 +++++
 arch/um/include/chan.h                   |  129 +
 arch/um/include/debug.h                  |    9 
 arch/um/include/kern.h                   |   42 
 arch/um/include/kern_util.h              |  135 ++
 arch/um/include/mconsole.h               |   49 
 arch/um/include/mconsole_kern.h          |   47 
 arch/um/include/mem_user.h               |   55 
 arch/um/include/process.h                |   26 
 arch/um/include/sysdep-i386/ptrace.h     |   63 
 arch/um/include/sysdep-i386/sigcontext.h |   26 
 arch/um/include/sysdep-i386/syscalls.h   |   55 
 arch/um/include/sysdep-ia64/ptrace.h     |   26 
 arch/um/include/sysdep-ia64/sigcontext.h |   20 
 arch/um/include/sysdep-ia64/syscalls.h   |   20 
 arch/um/include/sysdep-ppc/ptrace.h      |   96 +
 arch/um/include/sysdep-ppc/sigcontext.h  |   67 +
 arch/um/include/sysdep-ppc/syscalls.h    |   50 
 arch/um/include/sysrq.h                  |    6 
 arch/um/include/ubd_user.h               |   72 +
 arch/um/include/umid.h                   |   18 
 arch/um/include/umn.h                    |   27 
 arch/um/include/user.h                   |   27 
 arch/um/include/user_util.h              |  148 ++
 arch/um/kernel/Makefile                  |   78 +
 arch/um/kernel/current.c                 |   24 
 arch/um/kernel/exec_kern.c               |  125 +
 arch/um/kernel/exec_user.c               |   46 
 arch/um/kernel/init_task.c               |   56 
 arch/um/kernel/irq.c                     |  812 ++++++++++++
 arch/um/kernel/irq_user.c                |  165 ++
 arch/um/kernel/ksyms.c                   |   23 
 arch/um/kernel/mem.c                     |  197 ++
 arch/um/kernel/mem_user.c                |  215 +++
 arch/um/kernel/mprot.h                   |    6 
 arch/um/kernel/process.c                 |  330 ++++
 arch/um/kernel/process_kern.c            |  823 ++++++++++++
 arch/um/kernel/ptrace.c                  |  252 +++
 arch/um/kernel/reboot.c                  |   54 
 arch/um/kernel/resource.c                |   23 
 arch/um/kernel/setup.c                   |   19 
 arch/um/kernel/signal_kern.c             |  351 +++++
 arch/um/kernel/signal_user.c             |   89 +
 arch/um/kernel/smp.c                     |  141 ++
 arch/um/kernel/sys_call_table.c          |  437 ++++++
 arch/um/kernel/syscall_kern.c            |  359 +++++
 arch/um/kernel/syscall_user.c            |  203 +++
 arch/um/kernel/sysrq.c                   |   72 +
 arch/um/kernel/time.c                    |  119 +
 arch/um/kernel/time_kern.c               |  129 +
 arch/um/kernel/tlb.c                     |  215 +++
 arch/um/kernel/trap_kern.c               |  361 +++++
 arch/um/kernel/trap_user.c               |  392 +++++
 arch/um/kernel/uaccess_user.c            |  125 +
 arch/um/kernel/um_arch.c                 |  332 ++++
 arch/um/kernel/umid.c                    |  214 +++
 arch/um/kernel/unmap.c                   |   34 
 arch/um/kernel/user_syms.c               |  112 +
 arch/um/kernel/user_util.c               |  337 +++++
 arch/um/link.ld.in                       |  105 +
 arch/um/main.c                           |  193 ++
 arch/um/ptproxy/Makefile                 |   28 
 arch/um/ptproxy/proxy.c                  |  285 ++++
 arch/um/ptproxy/ptproxy.h                |   42 
 arch/um/ptproxy/ptrace.c                 |  209 +++
 arch/um/ptproxy/sysdep.c                 |   59 
 arch/um/ptproxy/sysdep.h                 |   13 
 arch/um/ptproxy/wait.c                   |   79 +
 arch/um/ptproxy/wait.h                   |   18 
 arch/um/sys-i386/Makefile                |   49 
 arch/um/sys-i386/ksyms.c                 |   16 
 arch/um/sys-i386/ldt.c                   |   22 
 arch/um/sys-i386/ptrace.c                |   76 +
 arch/um/sys-i386/ptrace_user.c           |   25 
 arch/um/sys-i386/sigcontext.c            |   46 
 arch/um/sys-i386/syscalls.c              |   68 +
 arch/um/sys-i386/sysrq.c                 |   22 
 arch/um/sys-ia64/Makefile                |   26 
 arch/um/sys-ppc/Makefile                 |   78 +
 arch/um/sys-ppc/misc.S                   |  116 +
 arch/um/sys-ppc/miscthings.c             |   56 
 arch/um/sys-ppc/ptrace.c                 |   28 
 arch/um/sys-ppc/ptrace_user.c            |   39 
 arch/um/sys-ppc/sigcontext.c             |   43 
 drivers/block/blkpg.c                    |    2 
 drivers/block/ll_rw_blk.c                |    7 
 drivers/block/loop.c                     |   42 
 drivers/block/rd.c                       |  192 ++
 drivers/char/Makefile                    |    6 
 drivers/char/pc_keyb.c                   |    1 
 drivers/char/raw.c                       |   30 
 drivers/char/serial.c                    |    2 
 drivers/ide/ide.c                        |    2 
 drivers/md/Makefile                      |    2 
 drivers/md/lvm-fs.c                      |  618 +++++++++
 drivers/md/lvm-internal.h                |  103 +
 drivers/md/lvm-snap.c                    |  451 ++++--
 drivers/md/lvm-snap.h                    |   47 
 drivers/md/lvm.c                         | 2065 +++++++++++++------------------
 drivers/net/3c59x.c                      |    9 
 drivers/net/eepro100.c                   |   15 
 drivers/scsi/megaraid.c                  |    2 
 drivers/scsi/qla1280.h                   |    2 
 fs/block_dev.c                           |  708 ++++++----
 fs/buffer.c                              |  336 +++--
 fs/dcache.c                              |   27 
 fs/devices.c                             |    1 
 fs/exec.c                                |    3 
 fs/ext2/dir.c                            |   34 
 fs/ext2/fsync.c                          |    1 
 fs/ext2/inode.c                          |    7 
 fs/fcntl.c                               |   22 
 fs/file_table.c                          |    5 
 fs/inode.c                               |  113 -
 fs/namei.c                               |   14 
 fs/open.c                                |   13 
 fs/proc/proc_misc.c                      |   76 +
 fs/reiserfs/file.c                       |    3 
 fs/reiserfs/inode.c                      |    1 
 fs/select.c                              |    2 
 fs/super.c                               |    6 
 include/asm-alpha/fcntl.h                |    3 
 include/asm-alpha/mmzone.h               |    2 
 include/asm-alpha/module.h               |    4 
 include/asm-alpha/processor.h            |   24 
 include/asm-alpha/rwsem_xchgadd.h        |   27 
 include/asm-alpha/timex.h                |    4 
 include/asm-alpha/uaccess.h              |   40 
 include/asm-alpha/unistd.h               |    4 
 include/asm-arm/processor.h              |    7 
 include/asm-arm/timex.h                  |    4 
 include/asm-cris/processor.h             |   10 
 include/asm-cris/timex.h                 |    4 
 include/asm-i386/fcntl.h                 |    3 
 include/asm-i386/hw_irq.h                |   17 
 include/asm-i386/kmap_types.h            |    1 
 include/asm-i386/module.h                |    4 
 include/asm-i386/page.h                  |    4 
 include/asm-i386/page_offset.h           |    6 
 include/asm-i386/pgalloc.h               |    7 
 include/asm-i386/pgtable.h               |    4 
 include/asm-i386/processor.h             |   10 
 include/asm-i386/rwsem.h                 |  226 ---
 include/asm-i386/rwsem_xchgadd.h         |   93 +
 include/asm-i386/timex.h                 |    4 
 include/asm-i386/uaccess.h               |    5 
 include/asm-ia64/fcntl.h                 |    1 
 include/asm-ia64/processor.h             |   24 
 include/asm-ia64/timex.h                 |    4 
 include/asm-m68k/processor.h             |    2 
 include/asm-m68k/timex.h                 |    4 
 include/asm-mips/processor.h             |    3 
 include/asm-mips/timex.h                 |    5 
 include/asm-mips64/processor.h           |    3 
 include/asm-mips64/timex.h               |    4 
 include/asm-parisc/processor.h           |    3 
 include/asm-parisc/timex.h               |    4 
 include/asm-ppc/fcntl.h                  |    1 
 include/asm-ppc/kmap_types.h             |    1 
 include/asm-ppc/processor.h              |    8 
 include/asm-ppc/timex.h                  |    4 
 include/asm-s390/processor.h             |    4 
 include/asm-s390/timex.h                 |    4 
 include/asm-s390x/processor.h            |    4 
 include/asm-s390x/timex.h                |    4 
 include/asm-sh/processor.h               |    3 
 include/asm-sh/timex.h                   |    4 
 include/asm-sparc/fcntl.h                |    2 
 include/asm-sparc/kmap_types.h           |    1 
 include/asm-sparc/processor.h            |    3 
 include/asm-sparc/timex.h                |    4 
 include/asm-sparc64/fcntl.h              |    3 
 include/asm-sparc64/processor.h          |    3 
 include/asm-sparc64/timex.h              |    4 
 include/asm-um/a.out.h                   |   18 
 include/asm-um/archparam-i386.h          |   26 
 include/asm-um/archparam-ppc.h           |   41 
 include/asm-um/atomic.h                  |    6 
 include/asm-um/bitops.h                  |    6 
 include/asm-um/boot.h                    |    6 
 include/asm-um/bugs.h                    |    6 
 include/asm-um/byteorder.h               |    6 
 include/asm-um/cache.h                   |    6 
 include/asm-um/checksum.h                |    6 
 include/asm-um/cobalt.h                  |    6 
 include/asm-um/current.h                 |   26 
 include/asm-um/delay.h                   |    7 
 include/asm-um/desc.h                    |    6 
 include/asm-um/div64.h                   |    6 
 include/asm-um/dma.h                     |   10 
 include/asm-um/elf.h                     |   16 
 include/asm-um/errno.h                   |    6 
 include/asm-um/fcntl.h                   |    6 
 include/asm-um/fixmap.h                  |    6 
 include/asm-um/floppy.h                  |    6 
 include/asm-um/hardirq.h                 |    6 
 include/asm-um/hdreg.h                   |    6 
 include/asm-um/highmem.h                 |    6 
 include/asm-um/hw_irq.h                  |   10 
 include/asm-um/ide.h                     |    6 
 include/asm-um/init.h                    |   11 
 include/asm-um/io.h                      |    6 
 include/asm-um/ioctl.h                   |    6 
 include/asm-um/ioctls.h                  |    6 
 include/asm-um/ipc.h                     |    6 
 include/asm-um/ipcbuf.h                  |    6 
 include/asm-um/irq.h                     |   27 
 include/asm-um/keyboard.h                |    6 
 include/asm-um/linux_logo.h              |    6 
 include/asm-um/locks.h                   |    6 
 include/asm-um/mca_dma.h                 |    6 
 include/asm-um/mman.h                    |    6 
 include/asm-um/mmu.h                     |    6 
 include/asm-um/mmu_context.h             |   25 
 include/asm-um/module.h                  |    6 
 include/asm-um/msgbuf.h                  |    6 
 include/asm-um/mtrr.h                    |    6 
 include/asm-um/namei.h                   |    6 
 include/asm-um/page.h                    |   40 
 include/asm-um/page_offset.h             |    1 
 include/asm-um/param.h                   |   24 
 include/asm-um/pci.h                     |    6 
 include/asm-um/pgalloc.h                 |  143 ++
 include/asm-um/pgtable.h                 |  378 +++++
 include/asm-um/poll.h                    |    6 
 include/asm-um/posix_types.h             |    6 
 include/asm-um/processor-generic.h       |  198 ++
 include/asm-um/processor-i386.h          |    6 
 include/asm-um/processor-ppc.h           |   15 
 include/asm-um/ptrace.h                  |   32 
 include/asm-um/resource.h                |    6 
 include/asm-um/rwlock.h                  |    6 
 include/asm-um/rwsem-spin.h              |    6 
 include/asm-um/rwsem_xchgadd.h           |    6 
 include/asm-um/scatterlist.h             |    6 
 include/asm-um/segment.h                 |    4 
 include/asm-um/semaphore.h               |    6 
 include/asm-um/sembuf.h                  |    6 
 include/asm-um/serial.h                  |    6 
 include/asm-um/shmbuf.h                  |    6 
 include/asm-um/shmparam.h                |    6 
 include/asm-um/sigcontext-generic.h      |    6 
 include/asm-um/sigcontext-i386.h         |    6 
 include/asm-um/sigcontext-ppc.h          |   10 
 include/asm-um/siginfo.h                 |    6 
 include/asm-um/signal.h                  |    6 
 include/asm-um/smp.h                     |   14 
 include/asm-um/smplock.h                 |    6 
 include/asm-um/socket.h                  |    6 
 include/asm-um/sockios.h                 |    6 
 include/asm-um/softirq.h                 |   13 
 include/asm-um/spinlock.h                |   10 
 include/asm-um/stat.h                    |    6 
 include/asm-um/statfs.h                  |    6 
 include/asm-um/string.h                  |    7 
 include/asm-um/system-generic.h          |   49 
 include/asm-um/system-i386.h             |    6 
 include/asm-um/system-ppc.h              |   16 
 include/asm-um/termbits.h                |    6 
 include/asm-um/termios.h                 |    6 
 include/asm-um/timex.h                   |   19 
 include/asm-um/types.h                   |    6 
 include/asm-um/uaccess.h                 |  188 ++
 include/asm-um/unaligned.h               |    6 
 include/asm-um/unistd.h                  |  100 +
 include/asm-um/user.h                    |    6 
 include/asm-um/vga.h                     |    6 
 include/linux/blk.h                      |    9 
 include/linux/blkdev.h                   |   11 
 include/linux/cache.h                    |    9 
 include/linux/compiler.h                 |   13 
 include/linux/condsched.h                |   14 
 include/linux/dcache.h                   |    2 
 include/linux/errno.h                    |    3 
 include/linux/ext2_fs_i.h                |    1 
 include/linux/fs.h                       |   94 +
 include/linux/highmem.h                  |    2 
 include/linux/hostfs_fs_i.h              |   21 
 include/linux/kernel.h                   |    2 
 include/linux/kernel_stat.h              |   49 
 include/linux/list.h                     |    8 
 include/linux/loop.h                     |    1 
 include/linux/lvm.h                      |  334 +----
 include/linux/mm.h                       |  116 +
 include/linux/mmzone.h                   |    9 
 include/linux/numa_sched.h               |   53 
 include/linux/pagemap.h                  |    1 
 include/linux/rbtree.h                   |  133 +
 include/linux/rcupdate.h                 |   48 
 include/linux/rwsem-spinlock.h           |   62 
 include/linux/rwsem.h                    |   71 -
 include/linux/rwsem_spinlock.h           |   62 
 include/linux/rwsem_xchgadd.h            |  104 +
 include/linux/sched.h                    |  113 +
 include/linux/slab.h                     |    2 
 include/linux/socket.h                   |    5 
 include/linux/swap.h                     |  157 --
 include/linux/swapctl.h                  |   22 
 include/linux/sysctl.h                   |   55 
 include/linux/time.h                     |   42 
 include/linux/timer.h                    |    1 
 include/linux/tty.h                      |    3 
 include/net/sock.h                       |    3 
 include/net/tcp.h                        |    1 
 include/net/tux.h                        |  747 +++++++++++
 include/net/tux_u.h                      |  164 ++
 init/main.c                              |    1 
 kernel/Makefile                          |    4 
 kernel/exit.c                            |   16 
 kernel/fork.c                            |   36 
 kernel/ksyms.c                           |   23 
 kernel/printk.c                          |    2 
 kernel/rcupdate.c                        |  165 ++
 kernel/sched.c                           |  173 +-
 kernel/signal.c                          |   14 
 kernel/sysctl.c                          |    8 
 kernel/timer.c                           |   14 
 lib/Makefile                             |    8 
 lib/rbtree.c                             |  293 ++++
 lib/rwsem.c                              |  210 ---
 lib/rwsem_spinlock.c                     |  124 +
 lib/rwsem_xchgadd.c                      |   92 +
 mm/filemap.c                             |  549 ++++++--
 mm/highmem.c                             |    4 
 mm/memory.c                              |   43 
 mm/mlock.c                               |    6 
 mm/mmap.c                                |  472 ++++---
 mm/mmap_avl.c                            |  374 -----
 mm/mprotect.c                            |  105 +
 mm/mremap.c                              |   75 -
 mm/numa.c                                |    8 
 mm/oom_kill.c                            |   40 
 mm/page_alloc.c                          |  571 +++-----
 mm/shmem.c                               |    2 
 mm/slab.c                                |  103 -
 mm/swap.c                                |  105 -
 mm/swap_state.c                          |   14 
 mm/swapfile.c                            |   21 
 mm/vmalloc.c                             |    2 
 mm/vmscan.c                              |  909 ++++---------
 net/Config.in                            |    1 
 net/Makefile                             |    1 
 net/core/dev.c                           |    4 
 net/ipv4/tcp.c                           |    4 
 net/ipv6/ip6_output.c                    |    2 
 net/netsyms.c                            |   18 
 net/socket.c                             |  119 +
 net/tux/Config.in                        |    7 
 net/tux/Makefile                         |   16 
 net/tux/abuf.c                           |  176 ++
 net/tux/accept.c                         |  847 ++++++++++++
 net/tux/cachemiss.c                      |  258 +++
 net/tux/cgi.c                            |  211 +++
 net/tux/extcgi.c                         |  325 ++++
 net/tux/input.c                          |  850 ++++++++++++
 net/tux/logger.c                         |  787 +++++++++++
 net/tux/main.c                           | 1248 ++++++++++++++++++
 net/tux/mod.c                            |  243 +++
 net/tux/output.c                         |  268 ++++
 net/tux/parser.h                         |   92 +
 net/tux/postpone.c                       |   77 +
 net/tux/proc.c                           |  755 +++++++++++
 net/tux/proto_ftp.c                      | 1441 +++++++++++++++++++++
 net/tux/proto_http.c                     | 1341 ++++++++++++++++++++
 net/tux/redirect.c                       |  158 ++
 net/tux/times.c                          |  176 ++
 net/tux/times.h                          |   26 
 net/tux/userspace.c                      |   27 
 482 files changed, 37800 insertions(+), 5180 deletions(-)

Andrea
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Path: archiver1.google.com!newsfeed.google.com!newsfeed.stanford.edu!
news.tele.dk!small.news.tele.dk!129.240.148.23!uio.no!nntp.uio.no!ifi.uio.no!
internet-mailinglist
Newsgroups: fa.linux.kernel
Return-Path: <linux-kernel-ow...@vger.kernel.org>
Original-Date: 	Tue, 18 Sep 2001 12:05:59 +0530
From: Dipankar Sarma <dipan...@in.ibm.com>
To: and...@suse.de
Cc: linux-ker...@vger.kernel.org
Subject: Re: 2.4.10pre10aa1 (first spin to the vm rewrite included)
Original-Message-ID: <20010918120559.A32241@in.ibm.com>
Reply-To: dipan...@in.ibm.com
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
X-Mailer: Mutt 1.0.1i
Sender: linux-kernel-ow...@vger.kernel.org
Precedence: bulk
X-Mailing-List: 	linux-kernel@vger.kernel.org
Organization: Internet mailing list
Date: Tue, 18 Sep 2001 06:32:10 GMT
Message-ID: <fa.c181jev.11jai3l@ifi.uio.no>
Lines: 31

In article <20010917180914.I...@athlon.random> and...@suse.de wrote:
> Some of the the main features of 2.4.10pre10aa1 are:

> o	rcu core included (thought it will be rewritten, I agreed with
> 	Dipankar that the per-cpu scheduling sequence number seems
> 	the best approch, such number can serve also as a statistic
> 	to usespace infact, it is very similar to Rusty's patch but it
> 	doesn't add any branch to the schedule fast path, he's rewriting
> 	the patch at the moment and I'll include it in the next release)

Sorry, in the latest patch I folded the per-cpu context switch counter into 
per-cpu counters for other quiescent states - user mode code and idle loop
in order to save on an extra compare making a single counter :-)
So, it is not much of a user space statistics anymore.

I can put that counter back, but I think eventually it may anyway
make sense to start using per-cpu statistics counters. As a matter
of fact we are working on a framework to support these. If we do
use per-cpu statistics counters later, RCU can make use of the
per-cpu context switch statistics counter.

Thanks
Dipankar
-- 
Dipankar Sarma  <dipan...@in.ibm.com> Project: http://lse.sourceforge.net
Linux Technology Center, IBM Software Lab, Bangalore, India.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/