public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* 2.5.53-mm3
@ 2003-01-02  2:14 Andrew Morton
  2003-01-02  4:13 ` 2.5.53-mm3 Andrew Morton
  0 siblings, 1 reply; 4+ messages in thread
From: Andrew Morton @ 2003-01-02  2:14 UTC (permalink / raw)
  To: lkml, linux-mm


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

. 2.5.53-mm2 was a bit sick in the timekeeping and slab department.  That
  should be fixed here.

. The idea of using the slab head arrays for object preallocation has been
  abandoned.  It involved too many slab changes, and slab just explodes in
  your face when touched.  So I've used a custom reservation pool in the
  radix-tree code instead.

. I've spent two days chasing the memory leak which Con has reported and
  have thus far not been able to reproduce it (managed to collaterally 
  discover a swapoff lockup and an htree leak though).  It's probably an
  ext3/VM interaction.  Please keep an eye out for this.



Changes since 2.5.53-mm2:


-aic-bounce.patch
-ga2.patch
-reduce-random-context-switch-rate.patch
-file-nr-doc-fix.patch
-remove-memshared.patch
-bin2bcd.patch
-semtimedop-update.patch
-drain_local_pages.patch
-kmalloc_percpu.patch
-dont-aligns-vmas.patch
-remove-swappable.patch
-remove-hugetlb-syscalls.patch

 Merged

-slab-preallocation.patch
-slab-export-tuning.patch
-rat-preallocation.patch

 Dropped

+rat-preload.patch

 Do the preallocation as a custom radix-tree thing, not generically.

+i_shared_sem.patch

 Turn i_shared_lock into a semaphore.  Will be needed for scheduling latency
 reasons.  Is needed to avoid a shared pagetable deadlock.

+cond_resched_lock-rework.patch

 Tidy up a couple of low-latency things

+mempool_resize-fix.patch

 Fix a problem in mempool_resize()

+slab-redzone-cleanup.patch

 Clean up the slab redzoning debug code, add useful messages.

+shrink-kmap-space.patch

 Save some wasted kernel virtual address space

+setuid-exec-no-lock_kernel.patch

 Locking cleanup

+fix-ethernet-hash.patch

 Fix for the ethernet crc function

+route-cache-kmalloc-per-cpu.patch

 Use kmalloc_per_cpu for the route cache stats

-config_page_offset.patch
-config_hz.patch

 Dropped.   Not to Linus' taste.

+page-walk-api-2.5.53-mm2-update.patch

 New stuff from Ingo

-page-walk-api-update.patch
-gup-check-valid.patch

 Folded into other patches

+page-walk-scsi-2.5.53-mm2.patch

 More from Ingo




All 64 patches:


linus.patch
  cset-1.911.4.10-to-1.932.txt.gz

kgdb.patch

log_buf_size.patch
  move LOG_BUF_SIZE to header/config

rcf.patch
  run-child-first after fork

devfs-fix.patch

dio-return-partial-result.patch

aio-direct-io-infrastructure.patch
  AIO support for raw/O_DIRECT

deferred-bio-dirtying.patch
  bio dirtying infrastructure

aio-direct-io.patch
  AIO support for raw/O_DIRECT

aio-dio-debug.patch

dio-reduce-context-switch-rate.patch
  Reduced wakeup rate in direct-io code

cputimes_stat.patch
  Retore per-cpu time accounting, with a config option

misc.patch
  misc fixes

inlines-net.patch

rbtree-iosched.patch
  rbtree-based IO scheduler

deadsched-fix.patch
  deadline scheduler fix

quota-smp-locks.patch
  Subject: Quota SMP locks

copy_page_range-cleanup.patch
  copy_page_range: minor cleanup

pte_chain_alloc-fix.patch

page_add_rmap-rework.patch

rat-preload.patch

use-rat-preallocation.patch

i_shared_sem.patch
  turn i_shared_lock into a semaphore

cond_resched_lock-rework.patch
  simplify and generalise cond_resched_lock

shpte-ng.patch
  pagetable sharing for ia32

teeny-mem-limits.patch

smaller-head-arrays.patch

mempool_resize-fix.patch
  mempool_resize fix

slab-redzone-cleanup.patch
  slab: redzoning cleanup

shrink-kmap-space.patch
  shrink the amount of vmalloc space reserved for kmap

setuid-exec-no-lock_kernel.patch
  remove lock_kernel() from exec of setuid apps

fix-ethernet-hash.patch
  fix ethernet hash function

ptrace-flush.patch
  Subject: [PATCH] ptrace on 2.5.44

buffer-debug.patch
  buffer.c debugging

warn-null-wakeup.patch

pentium-II.patch
  Pentium-II support bits

rcu-stats.patch
  RCU statistics reporting

auto-unplug.patch
  self-unplugging request queues

less-unplugging.patch
  Remove most of the blk_run_queues() calls

ext3-fsync-speedup.patch
  Clean up ext3_sync_file()

lockless-current_kernel_time.patch
  Lockless current_kernel_timer()

scheduler-tunables.patch
  scheduler tunables

dio-always-kmalloc.patch
  direct-io: dynamically allocate struct dio

set_page_dirty_lock.patch
  fix set_page_dirty vs truncate&free races

htlb-2.patch
  hugetlb: fix MAP_FIXED handling

route-cache-kmalloc-per-cpu.patch
  use kmalloc-per-cpu for the routecache stats

wli-01_numaq_io.patch
  (undescribed patch)

wli-02_do_sak.patch
  (undescribed patch)

wli-03_proc_super.patch
  (undescribed patch)

wli-06_uml_get_task.patch
  (undescribed patch)

wli-07_numaq_mem_map.patch
  (undescribed patch)

wli-08_numaq_pgdat.patch
  (undescribed patch)

wli-09_has_stopped_jobs.patch
  (undescribed patch)

wli-10_inode_wait.patch
  (undescribed patch)

wli-11_pgd_ctor.patch
  (undescribed patch)

wli-12_pidhash_size.patch
  Dynamically size the pidhash hash table.

wli-13_rmap_nrpte.patch
  (undescribed patch)

dcache_rcu-2.patch
  dcache_rcu-2-2.5.51.patch

dcache_rcu-3.patch
  dcache_rcu-3-2.5.51.patch

page-walk-api.patch

page-walk-api-2.5.53-mm2-update.patch
  pagewalk API update

page-walk-scsi.patch

page-walk-scsi-2.5.53-mm2.patch
  pagewalk scsi update

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: 2.5.53-mm3
  2003-01-02  2:14 2.5.53-mm3 Andrew Morton
@ 2003-01-02  4:13 ` Andrew Morton
  0 siblings, 0 replies; 4+ messages in thread
From: Andrew Morton @ 2003-01-02  4:13 UTC (permalink / raw)
  To: lkml, linux-mm

Andrew Morton wrote:
> 
> http://www.zip.com.au/~akpm/linux/patches/2.5/2.5.53/2.5.53-mm3/
> 

2.5.54-mm1 is at

  http://www.zip.com.au/~akpm/linux/patches/2.5/2.5.54/2.5.54-mm1/

it is identical to 2.5.53-mm3.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* RE: 2.5.53-mm3
@ 2003-01-02  6:50 Aniruddha M Marathe
  2003-01-02  7:01 ` 2.5.53-mm3 Andrew Morton
  0 siblings, 1 reply; 4+ messages in thread
From: Aniruddha M Marathe @ 2003-01-02  6:50 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel

Failed while booting up.
It executed mem_init()
Then during execution of  kmem_cache_sizes_init(),
It created generic caches.
After that following error came,
Invalid operand: 0000
...
Unable to handle kernel paging request at virtual address b08e3fef 
eip 00000000

>-----Original Message-----
>From: Andrew Morton [mailto:akpm@digeo.com] 
>Sent: Thursday, January 02, 2003 7:44 AM
>To: lkml; linux-mm@kvack.org
>Subject: 2.5.53-mm3
>
>
>
>http://www.zip.com.au/~akpm/linux/patches/2.5/2.5.53/2.5.53-mm3/
>
>. 2.5.53-mm2 was a bit sick in the timekeeping and slab 
>department.  That
>  should be fixed here.
>
>. The idea of using the slab head arrays for object 
>preallocation has been
>  abandoned.  It involved too many slab changes, and slab just 
>explodes in
>  your face when touched.  So I've used a custom reservation 
>pool in the
>  radix-tree code instead.
>
>. I've spent two days chasing the memory leak which Con has 
>reported and
>  have thus far not been able to reproduce it (managed to collaterally 
>  discover a swapoff lockup and an htree leak though).  It's 
>probably an
>  ext3/VM interaction.  Please keep an eye out for this.
>
>
>
>Changes since 2.5.53-mm2:
>
>
>-aic-bounce.patch
>-ga2.patch
>-reduce-random-context-switch-rate.patch
>-file-nr-doc-fix.patch
>-remove-memshared.patch
>-bin2bcd.patch
>-semtimedop-update.patch
>-drain_local_pages.patch
>-kmalloc_percpu.patch
>-dont-aligns-vmas.patch
>-remove-swappable.patch
>-remove-hugetlb-syscalls.patch
>
> Merged
>
>-slab-preallocation.patch
>-slab-export-tuning.patch
>-rat-preallocation.patch
>
> Dropped
>
>+rat-preload.patch
>
> Do the preallocation as a custom radix-tree thing, not generically.
>
>+i_shared_sem.patch
>
> Turn i_shared_lock into a semaphore.  Will be needed for 
>scheduling latency  reasons.  Is needed to avoid a shared 
>pagetable deadlock.
>
>+cond_resched_lock-rework.patch
>
> Tidy up a couple of low-latency things
>
>+mempool_resize-fix.patch
>
> Fix a problem in mempool_resize()
>
>+slab-redzone-cleanup.patch
>
> Clean up the slab redzoning debug code, add useful messages.
>
>+shrink-kmap-space.patch
>
> Save some wasted kernel virtual address space
>
>+setuid-exec-no-lock_kernel.patch
>
> Locking cleanup
>
>+fix-ethernet-hash.patch
>
> Fix for the ethernet crc function
>
>+route-cache-kmalloc-per-cpu.patch
>
> Use kmalloc_per_cpu for the route cache stats
>
>-config_page_offset.patch
>-config_hz.patch
>
> Dropped.   Not to Linus' taste.
>
>+page-walk-api-2.5.53-mm2-update.patch
>
> New stuff from Ingo
>
>-page-walk-api-update.patch
>-gup-check-valid.patch
>
> Folded into other patches
>
>+page-walk-scsi-2.5.53-mm2.patch
>
> More from Ingo
>
>
>
>
>All 64 patches:
>
>
>linus.patch
>  cset-1.911.4.10-to-1.932.txt.gz
>
>kgdb.patch
>
>log_buf_size.patch
>  move LOG_BUF_SIZE to header/config
>
>rcf.patch
>  run-child-first after fork
>
>devfs-fix.patch
>
>dio-return-partial-result.patch
>
>aio-direct-io-infrastructure.patch
>  AIO support for raw/O_DIRECT
>
>deferred-bio-dirtying.patch
>  bio dirtying infrastructure
>
>aio-direct-io.patch
>  AIO support for raw/O_DIRECT
>
>aio-dio-debug.patch
>
>dio-reduce-context-switch-rate.patch
>  Reduced wakeup rate in direct-io code
>
>cputimes_stat.patch
>  Retore per-cpu time accounting, with a config option
>
>misc.patch
>  misc fixes
>
>inlines-net.patch
>
>rbtree-iosched.patch
>  rbtree-based IO scheduler
>
>deadsched-fix.patch
>  deadline scheduler fix
>
>quota-smp-locks.patch
>  Subject: Quota SMP locks
>
>copy_page_range-cleanup.patch
>  copy_page_range: minor cleanup
>
>pte_chain_alloc-fix.patch
>
>page_add_rmap-rework.patch
>
>rat-preload.patch
>
>use-rat-preallocation.patch
>
>i_shared_sem.patch
>  turn i_shared_lock into a semaphore
>
>cond_resched_lock-rework.patch
>  simplify and generalise cond_resched_lock
>
>shpte-ng.patch
>  pagetable sharing for ia32
>
>teeny-mem-limits.patch
>
>smaller-head-arrays.patch
>
>mempool_resize-fix.patch
>  mempool_resize fix
>
>slab-redzone-cleanup.patch
>  slab: redzoning cleanup
>
>shrink-kmap-space.patch
>  shrink the amount of vmalloc space reserved for kmap
>
>setuid-exec-no-lock_kernel.patch
>  remove lock_kernel() from exec of setuid apps
>
>fix-ethernet-hash.patch
>  fix ethernet hash function
>
>ptrace-flush.patch
>  Subject: [PATCH] ptrace on 2.5.44
>
>buffer-debug.patch
>  buffer.c debugging
>
>warn-null-wakeup.patch
>
>pentium-II.patch
>  Pentium-II support bits
>
>rcu-stats.patch
>  RCU statistics reporting
>
>auto-unplug.patch
>  self-unplugging request queues
>
>less-unplugging.patch
>  Remove most of the blk_run_queues() calls
>
>ext3-fsync-speedup.patch
>  Clean up ext3_sync_file()
>
>lockless-current_kernel_time.patch
>  Lockless current_kernel_timer()
>
>scheduler-tunables.patch
>  scheduler tunables
>
>dio-always-kmalloc.patch
>  direct-io: dynamically allocate struct dio
>
>set_page_dirty_lock.patch
>  fix set_page_dirty vs truncate&free races
>
>htlb-2.patch
>  hugetlb: fix MAP_FIXED handling
>
>route-cache-kmalloc-per-cpu.patch
>  use kmalloc-per-cpu for the routecache stats
>
>wli-01_numaq_io.patch
>  (undescribed patch)
>
>wli-02_do_sak.patch
>  (undescribed patch)
>
>wli-03_proc_super.patch
>  (undescribed patch)
>
>wli-06_uml_get_task.patch
>  (undescribed patch)
>
>wli-07_numaq_mem_map.patch
>  (undescribed patch)
>
>wli-08_numaq_pgdat.patch
>  (undescribed patch)
>
>wli-09_has_stopped_jobs.patch
>  (undescribed patch)
>
>wli-10_inode_wait.patch
>  (undescribed patch)
>
>wli-11_pgd_ctor.patch
>  (undescribed patch)
>
>wli-12_pidhash_size.patch
>  Dynamically size the pidhash hash table.
>
>wli-13_rmap_nrpte.patch
>  (undescribed patch)
>
>dcache_rcu-2.patch
>  dcache_rcu-2-2.5.51.patch
>
>dcache_rcu-3.patch
>  dcache_rcu-3-2.5.51.patch
>
>page-walk-api.patch
>
>page-walk-api-2.5.53-mm2-update.patch
>  pagewalk API update
>
>page-walk-scsi.patch
>
>page-walk-scsi-2.5.53-mm2.patch
>  pagewalk scsi update
>-
>To unsubscribe from this list: send the line "unsubscribe 
>linux-kernel" in the body of a message to 
>majordomo@vger.kernel.org More majordomo info at  
http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: 2.5.53-mm3
  2003-01-02  6:50 2.5.53-mm3 Aniruddha M Marathe
@ 2003-01-02  7:01 ` Andrew Morton
  0 siblings, 0 replies; 4+ messages in thread
From: Andrew Morton @ 2003-01-02  7:01 UTC (permalink / raw)
  To: Aniruddha M Marathe; +Cc: linux-kernel

Aniruddha M Marathe wrote:
> 
> Failed while booting up.
> It executed mem_init()
> Then during execution of  kmem_cache_sizes_init(),
> It created generic caches.
> After that following error came,
> Invalid operand: 0000
> ...
> Unable to handle kernel paging request at virtual address b08e3fef
> eip 00000000
> 

Please enable "Load all symbols for debugging/kksymoops" in
the "Kernel hacking" menu and send a full report.

kksymoops is a bit broken in 2.5.54.   You may need this patch:



--- 25/fs/proc/base.c~no-stem-compression	Wed Jan  1 22:30:17 2003
+++ 25-akpm/fs/proc/base.c	Wed Jan  1 22:30:17 2003
@@ -259,11 +259,10 @@ static int proc_pid_wchan(struct task_st
 	char *modname;
 	const char *sym_name;
 	unsigned long wchan, size, offset;
-	char namebuf[128];
 
 	wchan = get_wchan(task);
 
-	sym_name = kallsyms_lookup(wchan, &size, &offset, &modname, namebuf);
+	sym_name = kallsyms_lookup(wchan, &size, &offset, &modname);
 	if (sym_name)
 		return sprintf(buffer, "%s", sym_name);
 	return sprintf(buffer, "%lu", wchan);
--- 25/include/linux/kallsyms.h~no-stem-compression	Wed Jan  1 22:30:17 2003
+++ 25-akpm/include/linux/kallsyms.h	Wed Jan  1 22:30:17 2003
@@ -12,7 +12,7 @@
 const char *kallsyms_lookup(unsigned long addr,
 			    unsigned long *symbolsize,
 			    unsigned long *offset,
-			    char **modname, char *namebuf);
+			    char **modname);
 
 /* Replace "%s" in format with address, if found */
 extern void __print_symbol(const char *fmt, unsigned long address);
@@ -22,7 +22,7 @@ extern void __print_symbol(const char *f
 static inline const char *kallsyms_lookup(unsigned long addr,
 					  unsigned long *symbolsize,
 					  unsigned long *offset,
-					  char **modname, char *namebuf)
+					  char **modname)
 {
 	return NULL;
 }
--- 25/kernel/kallsyms.c~no-stem-compression	Wed Jan  1 22:30:17 2003
+++ 25-akpm/kernel/kallsyms.c	Wed Jan  1 22:30:17 2003
@@ -4,7 +4,6 @@
  * Rewritten and vastly simplified by Rusty Russell for in-kernel
  * module loader:
  *   Copyright 2002 Rusty Russell <rusty@rustcorp.com.au> IBM Corporation
- * Stem compression by Andi Kleen.
  */
 #include <linux/kallsyms.h>
 #include <linux/module.h>
@@ -23,7 +22,7 @@ extern char _stext[], _etext[];
 const char *kallsyms_lookup(unsigned long addr,
 			    unsigned long *symbolsize,
 			    unsigned long *offset,
-			    char **modname, char *namebuf)
+			    char **modname)
 {
 	unsigned long i, best = 0;
 
@@ -31,8 +30,6 @@ const char *kallsyms_lookup(unsigned lon
 	if ((void *)kallsyms_addresses == &kallsyms_dummy)
 		BUG();
 
-	namebuf[127] = 0;
-
 	if (addr >= (unsigned long)_stext && addr <= (unsigned long)_etext) {
 		unsigned long symbol_end;
 		char *name = kallsyms_names;
@@ -45,11 +42,8 @@ const char *kallsyms_lookup(unsigned lon
 		}
 
 		/* Grab name */
-		for (i = 0; i < best; i++) { 
-			++name;
-			strncpy(namebuf + name[-1], name, 127); 
+		for (i = 0; i < best; i++)
 			name += strlen(name)+1;
-		} 
 
 		/* Base symbol size on next symbol. */
 		if (best + 1 < kallsyms_num_syms)
@@ -60,7 +54,7 @@ const char *kallsyms_lookup(unsigned lon
 		*symbolsize = symbol_end - kallsyms_addresses[best];
 		*modname = NULL;
 		*offset = addr - kallsyms_addresses[best];
-		return namebuf;
+		return name;
 	}
 
 	return module_address_lookup(addr, symbolsize, offset, modname);
@@ -72,9 +66,8 @@ void __print_symbol(const char *fmt, uns
 	char *modname;
 	const char *name;
 	unsigned long offset, size;
-	char namebuf[128];
 
-	name = kallsyms_lookup(address, &size, &offset, &modname, namebuf);
+	name = kallsyms_lookup(address, &size, &offset, &modname);
 
 	if (!name) {
 		char addrstr[sizeof("0x%lx") + (BITS_PER_LONG*3/10)];
--- 25/scripts/kallsyms.c~no-stem-compression	Wed Jan  1 22:30:17 2003
+++ 25-akpm/scripts/kallsyms.c	Wed Jan  1 22:30:17 2003
@@ -93,7 +93,6 @@ write_src(void)
 {
 	unsigned long long last_addr;
 	int i, valid = 0;
-	char *prev;
 
 	printf("#include <asm/types.h>\n");
 	printf("#if BITS_PER_LONG == 64\n");
@@ -131,22 +130,15 @@ write_src(void)
 	printf(".globl kallsyms_names\n");
 	printf("\tALGN\n");
 	printf("kallsyms_names:\n");
-	prev = ""; 
 	for (i = 0, last_addr = 0; i < cnt; i++) {
-		int k;
-
 		if (!symbol_valid(&table[i]))
 			continue;
 		
 		if (table[i].addr == last_addr)
 			continue;
 
-		for (k = 0; table[i].sym[k] && table[i].sym[k] == prev[k]; ++k)
-			; 
-
-		printf("\t.asciz\t\"\\x%02x%s\"\n", k, table[i].sym + k);
+		printf("\t.string\t\"%s\"\n", table[i].sym);
 		last_addr = table[i].addr;
-		prev = table[i].sym;
 	}
 	printf("\n");
 }

_

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2003-01-02  6:52 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-01-02  2:14 2.5.53-mm3 Andrew Morton
2003-01-02  4:13 ` 2.5.53-mm3 Andrew Morton
  -- strict thread matches above, loose matches on Subject: below --
2003-01-02  6:50 2.5.53-mm3 Aniruddha M Marathe
2003-01-02  7:01 ` 2.5.53-mm3 Andrew Morton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox