From: Ingo Molnar <mingo@elte.hu>
To: Andrew Morton <akpm@osdl.org>
Cc: rlrevell@joe-job.com, linux-kernel@vger.kernel.org,
felipe_alfaro@linuxmail.org, mista.tapas@gmx.net, kr@cybsft.com,
Mark_H_Johnson@Raytheon.com
Subject: Re: [patch] voluntary-preempt-2.6.9-rc1-bk12-R6
Date: Fri, 10 Sep 2004 15:28:41 +0200 [thread overview]
Message-ID: <20040910132841.GA8552@elte.hu> (raw)
In-Reply-To: <20040909130526.2b015999.akpm@osdl.org>
[-- Attachment #1: Type: text/plain, Size: 502 bytes --]
* Andrew Morton <akpm@osdl.org> wrote:
> diff -puN mm/vmscan.c~swapspace-layout-improvements mm/vmscan.c
> --- 25/mm/vmscan.c~swapspace-layout-improvements 2004-06-03 21:32:51.087602712 -0700
> +++ 25-akpm/mm/vmscan.c 2004-06-03 21:32:51.102600432 -0700
i've attached a merge against current BK-ish kernels. Lee, would you be
interested in testing it? It applies cleanly to an -S0 VP tree. I've
tested it only lightly - it compiles and boots and survives some simple
swapping but that's all.
Ingo
[-- Attachment #2: swapspace-layout-improvements-2.6.9-rc1-bk12-A1 --]
[-- Type: text/plain, Size: 8058 bytes --]
--- linux/include/linux/swap.h.orig
+++ linux/include/linux/swap.h
@@ -193,7 +193,7 @@ extern int rw_swap_page_sync(int, swp_en
extern struct address_space swapper_space;
#define total_swapcache_pages swapper_space.nrpages
extern void show_swap_cache_info(void);
-extern int add_to_swap(struct page *);
+extern int add_to_swap(struct page *page, void *cookie, pgoff_t index);
extern void __delete_from_swap_cache(struct page *);
extern void delete_from_swap_cache(struct page *);
extern int move_to_swap_cache(struct page *, swp_entry_t);
@@ -209,7 +209,7 @@ extern long total_swap_pages;
extern unsigned int nr_swapfiles;
extern struct swap_info_struct swap_info[];
extern void si_swapinfo(struct sysinfo *);
-extern swp_entry_t get_swap_page(void);
+extern swp_entry_t get_swap_page(void *cookie, pgoff_t index);
extern int swap_duplicate(swp_entry_t);
extern int valid_swaphandles(swp_entry_t, unsigned long *);
extern void swap_free(swp_entry_t);
@@ -274,7 +274,7 @@ static inline int remove_exclusive_swap_
return 0;
}
-static inline swp_entry_t get_swap_page(void)
+static inline swp_entry_t get_swap_page(void *cookie, pgoff_t index)
{
swp_entry_t entry;
entry.val = 0;
--- linux/kernel/power/swsusp.c.orig
+++ linux/kernel/power/swsusp.c
@@ -317,7 +317,7 @@ static int write_suspend_image(void)
for (i=0; i<nr_copy_pages; i++) {
if (!(i%100))
printk( "." );
- entry = get_swap_page();
+ entry = get_swap_page(NULL, i);
if (!entry.val)
panic("\nNot enough swapspace when writing data" );
@@ -335,7 +335,7 @@ static int write_suspend_image(void)
cur = (union diskpage *)((char *) pagedir_nosave)+i;
BUG_ON ((char *) cur != (((char *) pagedir_nosave) + i*PAGE_SIZE));
printk( "." );
- entry = get_swap_page();
+ entry = get_swap_page(NULL, i);
if (!entry.val) {
printk(KERN_CRIT "Not enough swapspace when writing pgdir\n" );
panic("Don't know how to recover");
@@ -358,7 +358,7 @@ static int write_suspend_image(void)
BUG_ON (sizeof(struct suspend_header) > PAGE_SIZE-sizeof(swp_entry_t));
BUG_ON (sizeof(union diskpage) != PAGE_SIZE);
BUG_ON (sizeof(struct link) != PAGE_SIZE);
- entry = get_swap_page();
+ entry = get_swap_page(NULL, i);
if (!entry.val)
panic( "\nNot enough swapspace when writing header" );
if (swapfile_used[swp_type(entry)] != SWAPFILE_SUSPEND)
--- linux/kernel/power/pmdisk.c.orig
+++ linux/kernel/power/pmdisk.c
@@ -206,7 +206,7 @@ static int write_swap_page(unsigned long
swp_entry_t entry;
int error = 0;
- entry = get_swap_page();
+ entry = get_swap_page(NULL, addr >> PAGE_SHIFT);
if (swp_offset(entry) &&
swapfile_used[swp_type(entry)] == SWAPFILE_SUSPEND) {
error = rw_swap_page_sync(WRITE, entry,
--- linux/mm/vmscan.c.orig
+++ linux/mm/vmscan.c
@@ -390,7 +390,10 @@ static int shrink_list(struct list_head
* Try to allocate it some swap space here.
*/
if (PageAnon(page) && !PageSwapCache(page)) {
- if (!add_to_swap(page))
+ void *cookie = page->mapping;
+ pgoff_t index = page->index;
+
+ if (!add_to_swap(page, cookie, index))
goto activate_locked;
}
#endif /* CONFIG_SWAP */
--- linux/mm/swap_state.c.orig
+++ linux/mm/swap_state.c
@@ -137,8 +137,12 @@ void __delete_from_swap_cache(struct pag
*
* Allocate swap space for the page and add the page to the
* swap cache. Caller needs to hold the page lock.
+ *
+ * We attempt to lay pages out on swap to that virtually-contiguous pages are
+ * contiguous on-disk. To do this we utilise page->index (offset into vma) and
+ * page->mapping (the anon_vma's address).
*/
-int add_to_swap(struct page * page)
+int add_to_swap(struct page *page, void *cookie, pgoff_t index)
{
swp_entry_t entry;
int pf_flags;
@@ -148,7 +152,7 @@ int add_to_swap(struct page * page)
BUG();
for (;;) {
- entry = get_swap_page();
+ entry = get_swap_page(cookie, index);
if (!entry.val)
return 0;
--- linux/mm/shmem.c.orig
+++ linux/mm/shmem.c
@@ -740,7 +740,7 @@ static int shmem_writepage(struct page *
struct shmem_inode_info *info;
swp_entry_t *entry, swap;
struct address_space *mapping;
- unsigned long index;
+ pgoff_t index;
struct inode *inode;
BUG_ON(!PageLocked(page));
@@ -752,7 +752,7 @@ static int shmem_writepage(struct page *
info = SHMEM_I(inode);
if (info->flags & VM_LOCKED)
goto redirty;
- swap = get_swap_page();
+ swap = get_swap_page(mapping, index);
if (!swap.val)
goto redirty;
--- linux/mm/swapfile.c.orig
+++ linux/mm/swapfile.c
@@ -25,6 +25,7 @@
#include <linux/rmap.h>
#include <linux/security.h>
#include <linux/backing-dev.h>
+#include <linux/hash.h>
#include <asm/pgtable.h>
#include <asm/tlbflush.h>
@@ -83,71 +84,51 @@ void swap_unplug_io_fn(struct backing_de
up_read(&swap_unplug_sem);
}
-static inline int scan_swap_map(struct swap_info_struct *si)
-{
- unsigned long offset;
- /*
- * We try to cluster swap pages by allocating them
- * sequentially in swap. Once we've allocated
- * SWAPFILE_CLUSTER pages this way, however, we resort to
- * first-free allocation, starting a new cluster. This
- * prevents us from scattering swap pages all over the entire
- * swap partition, so that we reduce overall disk seek times
- * between swap pages. -- sct */
- if (si->cluster_nr) {
- while (si->cluster_next <= si->highest_bit) {
- offset = si->cluster_next++;
- if (si->swap_map[offset])
- continue;
- si->cluster_nr--;
- goto got_page;
- }
- }
- si->cluster_nr = SWAPFILE_CLUSTER;
+int akpm;
- /* try to find an empty (even not aligned) cluster. */
- offset = si->lowest_bit;
- check_next_cluster:
- if (offset+SWAPFILE_CLUSTER-1 <= si->highest_bit)
- {
- unsigned long nr;
- for (nr = offset; nr < offset+SWAPFILE_CLUSTER; nr++)
- if (si->swap_map[nr])
- {
- offset = nr+1;
- goto check_next_cluster;
- }
- /* We found a completly empty cluster, so start
- * using it.
- */
- goto got_page;
- }
- /* No luck, so now go finegrined as usual. -Andrea */
- for (offset = si->lowest_bit; offset <= si->highest_bit ; offset++) {
- if (si->swap_map[offset])
+/*
+ * We divide the swapdev into 1024 kilobyte chunks. We use the cookie and the
+ * upper bits of the index to select a chunk and the rest of the index as the
+ * offset into the selected chunk.
+ */
+#define CHUNK_SHIFT (20 - PAGE_SHIFT)
+#define CHUNK_MASK (-1UL << CHUNK_SHIFT)
+
+static int
+scan_swap_map(struct swap_info_struct *si, void *cookie, pgoff_t index)
+{
+ unsigned long chunk;
+ unsigned long nchunks;
+ unsigned long block;
+ unsigned long scan;
+
+ nchunks = si->max >> CHUNK_SHIFT;
+ chunk = 0;
+ if (nchunks)
+ chunk = hash_long((unsigned long)cookie + (index & CHUNK_MASK),
+ BITS_PER_LONG) % nchunks;
+
+ block = (chunk << CHUNK_SHIFT) + (index & ~CHUNK_MASK);
+
+ for (scan = 0; scan < si->max; scan++, block++) {
+ if (block == si->max)
+ block = 0;
+ if (block == 0)
continue;
- si->lowest_bit = offset+1;
- got_page:
- if (offset == si->lowest_bit)
- si->lowest_bit++;
- if (offset == si->highest_bit)
- si->highest_bit--;
- if (si->lowest_bit > si->highest_bit) {
- si->lowest_bit = si->max;
- si->highest_bit = 0;
- }
- si->swap_map[offset] = 1;
- si->inuse_pages++;
+ if (si->swap_map[block])
+ continue;
+ si->swap_map[block] = 1;
nr_swap_pages--;
- si->cluster_next = offset+1;
- return offset;
+ if (akpm)
+ printk("cookie:%p, index:%lu, chunk:%lu nchunks:%lu "
+ "block:%lu\n",
+ cookie, index, chunk, nchunks, block);
+ return block;
}
- si->lowest_bit = si->max;
- si->highest_bit = 0;
return 0;
}
-swp_entry_t get_swap_page(void)
+swp_entry_t get_swap_page(void *cookie, pgoff_t index)
{
struct swap_info_struct * p;
unsigned long offset;
@@ -166,7 +147,7 @@ swp_entry_t get_swap_page(void)
p = &swap_info[type];
if ((p->flags & SWP_ACTIVE) == SWP_ACTIVE) {
swap_device_lock(p);
- offset = scan_swap_map(p);
+ offset = scan_swap_map(p, cookie, index);
swap_device_unlock(p);
if (offset) {
entry = swp_entry(type,offset);
next prev parent reply other threads:[~2004-09-10 13:27 UTC|newest]
Thread overview: 225+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20040903120957.00665413@mango.fruits.de>
[not found] ` <20040903100946.GA22819@elte.hu>
[not found] ` <20040903123139.565c806b@mango.fruits.de>
2004-09-03 10:32 ` lockup with voluntary preempt R0 and VP, KP, etc, disabled Ingo Molnar
2004-09-03 11:59 ` Florian Schmidt
2004-09-03 11:55 ` Ingo Molnar
2004-09-03 13:01 ` Florian Schmidt
2004-09-03 12:04 ` Florian Schmidt
2004-09-03 12:08 ` Florian Schmidt
2004-09-03 18:28 ` Lee Revell
2004-09-03 18:54 ` Florian Schmidt
2004-09-03 18:52 ` Lee Revell
2004-09-03 19:06 ` K.R. Foley
2004-09-04 19:51 ` [patch] voluntary-preempt-2.6.9-rc1-bk4-R4 Ingo Molnar
2004-09-05 14:02 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 Ingo Molnar
2004-09-05 16:07 ` Matt Heler
2004-09-05 18:16 ` Lee Revell
2004-09-05 19:12 ` Ingo Molnar
2004-09-05 21:03 ` Lee Revell
2004-09-06 6:30 ` Ingo Molnar
2004-09-06 7:44 ` Lee Revell
2004-09-07 3:17 ` K.R. Foley
2004-09-06 11:06 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 Ingo Molnar
2004-09-06 11:48 ` Rafael J. Wysocki
2004-09-06 12:25 ` Alexander Nyberg
2004-09-06 12:29 ` Ingo Molnar
2004-09-07 9:26 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R7 Ingo Molnar
2004-09-07 11:57 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R8 Ingo Molnar
2004-09-07 14:50 ` Alexander Nyberg
2004-09-07 15:04 ` Ingo Molnar
2004-09-07 15:29 ` Alexander Nyberg
2004-09-07 19:56 ` Rafael J. Wysocki
2004-09-07 22:59 ` Lee Revell
2004-09-08 8:20 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R9 Ingo Molnar
2004-09-08 9:46 ` Rafael J. Wysocki
2004-09-08 9:56 ` Ingo Molnar
2004-09-08 22:37 ` Lee Revell
2004-09-09 6:17 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-S0 Ingo Molnar
2004-09-09 19:30 ` Lee Revell
2004-09-09 20:23 ` Lee Revell
2004-09-19 12:26 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 Ingo Molnar
2004-09-19 17:05 ` Felipe Alfaro Solana
2004-09-20 17:14 ` K.R. Foley
2004-09-20 19:48 ` Ingo Molnar
2004-09-21 2:25 ` K.R. Foley
2004-09-20 19:47 ` Magnus Määttä
2004-09-21 2:07 ` BKL backtraces - was: " K.R. Foley
2004-09-21 7:18 ` Ingo Molnar
2004-09-21 7:44 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S2 Ingo Molnar
2004-09-21 18:51 ` K.R. Foley
2004-09-22 10:33 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S3 Ingo Molnar
2004-09-22 15:07 ` K.R. Foley
2004-09-22 17:16 ` Lee Revell
2004-09-22 17:40 ` K.R. Foley
2004-09-22 19:45 ` Ingo Molnar
2004-09-22 17:09 ` K.R. Foley
2004-09-22 19:08 ` Lee Revell
2004-09-23 1:13 ` Lee Revell
2004-09-23 12:28 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S4 Ingo Molnar
2004-09-23 12:57 ` Norberto Bensa
2004-09-23 13:01 ` Ingo Molnar
2004-09-23 13:07 ` Ingo Molnar
2004-09-23 13:09 ` Ingo Molnar
2004-09-23 16:46 ` Norberto Bensa
2004-09-23 17:13 ` Norberto Bensa
2004-09-23 18:20 ` Ingo Molnar
2004-09-23 13:35 ` Rui Nuno Capela
2004-09-23 13:40 ` Ingo Molnar
2004-09-23 16:23 ` Rui Nuno Capela
2004-09-23 18:07 ` Rui Nuno Capela
2004-09-24 12:43 ` OHCI_QUIRK_INITRESET (was: 2.6.9-rc2-mm2 ohci_hcd doesn't work) Rui Nuno Capela
2004-09-24 12:55 ` Ingo Molnar
2004-09-24 14:00 ` Rui Nuno Capela
2004-09-24 16:16 ` Bjorn Helgaas
2004-09-25 23:37 ` David Brownell
2004-09-26 13:09 ` Rui Nuno Capela
2004-09-27 15:11 ` Bjorn Helgaas
2004-09-23 21:12 ` [patch] voluntary-preempt-2.6.9-rc2-mm3-S5 Ingo Molnar
2004-09-24 0:32 ` Rui Nuno Capela
2004-09-24 2:22 ` K.R. Foley
2004-09-24 3:30 ` K.R. Foley
2004-09-24 7:40 ` Ingo Molnar
2004-09-24 11:05 ` K.R. Foley
2004-09-24 11:45 ` Ingo Molnar
2004-09-24 7:44 ` [patch] voluntary-preempt-2.6.9-rc2-mm3-S6 Ingo Molnar
2004-09-28 0:05 ` [patch] voluntary-preempt-2.6.9-rc2-mm4-S7 Ingo Molnar
2004-09-28 20:17 ` Rui Nuno Capela
2004-09-28 21:03 ` Rui Nuno Capela
2004-09-28 21:46 ` Rui Nuno Capela
2004-09-28 22:01 ` Matt Heler
2004-09-29 17:43 ` Lee Revell
2004-09-29 18:40 ` Lee Revell
2004-09-29 20:30 ` Ingo Molnar
2004-09-29 20:34 ` Lee Revell
2004-10-02 3:02 ` Lee Revell
2004-10-02 9:50 ` Ingo Molnar
2004-10-03 2:01 ` Lee Revell
2004-10-03 2:14 ` Lee Revell
2004-10-03 2:19 ` Lee Revell
2004-10-03 20:08 ` Ingo Molnar
2004-10-03 6:37 ` Lee Revell
2004-10-03 6:50 ` Lee Revell
2004-10-03 7:06 ` Lee Revell
2004-10-03 19:57 ` Ingo Molnar
2004-10-04 0:53 ` Lee Revell
2004-10-04 10:17 ` Ingo Molnar
2004-10-04 17:20 ` Lee Revell
2004-10-03 20:05 ` Ingo Molnar
2004-10-03 21:09 ` [patch] voluntary-preempt-2.6.9-rc3-mm1-S8 Ingo Molnar
2004-10-04 21:53 ` [patch] voluntary-preempt-2.6.9-rc3-mm1-S9 Ingo Molnar
2004-10-05 0:31 ` Lee Revell
2004-10-05 0:56 ` Florian Schmidt
2004-10-05 0:45 ` Lee Revell
2004-10-05 0:38 ` Andrew Rodland
2004-10-05 1:19 ` Rui Nuno Capela
2004-10-05 5:32 ` Peter Williams
2004-10-05 6:38 ` Ingo Molnar
2004-10-05 1:42 ` Florian Schmidt
2004-10-05 2:05 ` Florian Schmidt
2004-10-05 3:09 ` Andrew Rodland
2004-10-05 10:24 ` Florian Schmidt
2004-10-05 7:02 ` [patch] voluntary-preempt-2.6.9-rc3-mm2-T0 Ingo Molnar
2004-10-05 11:11 ` Rui Nuno Capela
2004-10-05 11:17 ` Ingo Molnar
2004-10-05 12:07 ` Hugh Dickins
2004-10-05 11:12 ` Florian Schmidt
2004-10-05 11:03 ` Ingo Molnar
2004-10-05 11:14 ` Rui Nuno Capela
2004-10-05 11:16 ` Ingo Molnar
2004-10-05 13:47 ` [patch] voluntary-preempt-2.6.9-rc3-mm2-T1 Ingo Molnar
2004-10-05 16:37 ` Rui Nuno Capela
2004-10-05 18:42 ` Ingo Molnar
2004-10-05 19:38 ` Rui Nuno Capela
2004-10-05 19:44 ` Ingo Molnar
2004-10-05 20:01 ` Rui Nuno Capela
2004-10-06 0:12 ` Lee Revell
2004-10-06 7:51 ` Ingo Molnar
2004-10-07 10:52 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Ingo Molnar
[not found] ` <20041007134116.3e53b239.h.mth@web.de>
2004-10-07 11:44 ` Ingo Molnar
2004-10-07 12:08 ` Hanno Meyer-Thurow
2004-10-07 12:16 ` Rui Nuno Capela
2004-10-07 13:53 ` Rui Nuno Capela
2004-10-07 14:13 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Con Kolivas
2004-10-07 23:26 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Rui Nuno Capela
2004-10-08 5:36 ` Lee Revell
2004-10-08 6:49 ` Con Kolivas
2004-10-08 18:05 ` Lee Revell
2004-10-08 7:06 ` Ingo Molnar
2004-10-08 7:36 ` Peter Williams
2004-10-08 17:27 ` Lee Revell
2004-10-07 17:55 ` K.R. Foley
2004-10-07 20:29 ` K.R. Foley
2004-10-07 21:55 ` Ingo Molnar
2004-10-08 1:41 ` K.R. Foley
2004-10-08 7:02 ` Ingo Molnar
2004-10-08 14:03 ` K.R. Foley
2004-10-08 14:28 ` Ingo Molnar
2004-10-08 21:14 ` Lee Revell
2004-10-08 23:11 ` Lee Revell
2004-10-09 4:16 ` Lee Revell
2004-10-09 4:57 ` Lee Revell
2004-10-09 5:09 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Con Kolivas
2004-10-09 5:21 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Lee Revell
2004-10-09 5:23 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Con Kolivas
2004-10-09 5:31 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Lee Revell
2004-10-09 5:34 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Con Kolivas
2004-10-09 5:50 ` Preemption model (was Re: voluntary-preempt-2.6.9-rc3-mm3-T3) Lee Revell
2004-10-09 5:53 ` Con Kolivas
2004-10-09 10:46 ` voluntary-preempt-2.6.9-rc3-mm3-T3 Ingo Molnar
2004-10-09 13:21 ` voluntary-preempt-2.6.9-rc3-mm3-T3 K.R. Foley
2004-10-09 18:16 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Florian Schmidt
2004-10-11 14:29 ` [patch] CONFIG_PREEMPT_REALTIME, 'Fully Preemptible Kernel', VP-2.6.9-rc4-mm1-T4 Ingo Molnar
2004-10-11 17:48 ` Florian Schmidt
2004-10-11 21:22 ` Rui Nuno Capela
2004-10-11 21:37 ` Lee Revell
2004-10-12 4:30 ` [patch] voluntary-preempt-2.6.9-rc3-mm3-T3 Lee Revell
2004-10-12 9:17 ` Ingo Molnar
2004-10-13 16:52 ` Lee Revell
2004-10-13 16:48 ` Lee Revell
2004-10-08 11:16 ` [patch] voluntary-preempt-2.6.9-rc3-mm2-T1 William Lee Irwin III
2004-09-22 17:30 ` Oops in __posix_lock_file was:Re: [patch] voluntary-preempt-2.6.9-rc2-mm1-S2 K.R. Foley
2004-09-22 19:43 ` Ingo Molnar
2004-09-21 18:24 ` [patch] voluntary-preempt-2.6.9-rc2-mm1-S1 K.R. Foley
2004-09-21 19:21 ` Ingo Molnar
2004-09-21 19:37 ` K.R. Foley
2004-09-08 6:56 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 Lee Revell
2004-09-09 19:29 ` Ingo Molnar
2004-09-09 19:33 ` Lee Revell
2004-09-09 20:43 ` Lee Revell
2004-09-09 20:51 ` Ingo Molnar
2004-09-09 21:03 ` Scott Wood
2004-09-09 20:05 ` Andrew Morton
2004-09-09 20:09 ` Alan Cox
2004-09-09 21:28 ` Andrew Morton
2004-09-09 22:45 ` William Lee Irwin III
2004-09-09 22:11 ` Alan Cox
2004-09-09 23:20 ` William Lee Irwin III
2004-09-10 13:28 ` Ingo Molnar [this message]
2004-09-10 14:28 ` Paolo Ciarrocchi
2004-09-10 16:45 ` Lee Revell
2004-09-10 22:54 ` Lee Revell
2004-09-11 0:21 ` K.R. Foley
2004-09-09 20:13 ` Lee Revell
2004-09-22 0:17 ` William Lee Irwin III
2004-09-07 22:55 ` [patch] voluntary-preempt-2.6.9-rc1-bk12-R5 Lee Revell
2004-09-07 23:13 ` Lee Revell
2004-09-07 23:58 ` Rui Nuno Capela
2004-09-08 8:23 ` Ingo Molnar
2004-09-08 8:31 ` Ingo Molnar
2004-09-09 11:09 ` Rui Nuno Capela
2004-09-15 1:16 ` Lee Revell
2004-09-15 9:29 ` Rui Nuno Capela
2004-09-15 9:38 ` Ingo Molnar
2004-09-15 9:53 ` Rui Nuno Capela
2004-09-15 10:00 ` Ingo Molnar
2004-09-15 10:35 ` Rui Nuno Capela
2004-09-25 19:26 ` Lee Revell
2004-09-25 20:38 ` Ingo Molnar
2004-09-25 20:40 ` Lee Revell
2004-09-25 20:50 ` Duncan Sands
2004-09-25 23:54 ` Lee Revell
2004-09-26 13:42 ` Rui Nuno Capela
2004-09-08 8:46 ` Rui Nuno Capela
2004-09-08 8:52 ` Ingo Molnar
2004-09-05 14:49 ` [patch] voluntary-preempt-2.6.9-rc1-bk4-R4 Florian Schmidt
2004-09-05 14:53 ` K.R. Foley
2004-09-08 4:22 [patch] voluntary-preempt-2.6.9-rc1-bk12-R6 Kevin Hilman
2004-09-08 6:39 ` Lee Revell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20040910132841.GA8552@elte.hu \
--to=mingo@elte.hu \
--cc=Mark_H_Johnson@Raytheon.com \
--cc=akpm@osdl.org \
--cc=felipe_alfaro@linuxmail.org \
--cc=kr@cybsft.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mista.tapas@gmx.net \
--cc=rlrevell@joe-job.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome