* 2.5.69-mm3
@ 2003-05-08 8:39 Andrew Morton
2003-05-09 14:10 ` 2.5.69-mm3 Dipankar Sarma
` (5 more replies)
0 siblings, 6 replies; 12+ messages in thread
From: Andrew Morton @ 2003-05-08 8:39 UTC (permalink / raw)
To: linux-kernel, linux-mm
http://www.zip.com.au/~akpm/linux/patches/2.5/2.5.69-mm3.gz
Will appear sometime at
ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.5/2.5.69/2.5.69-mm3/
Small things. Mainly a resync for various people...
Changes since 2.5.69-mm2:
linus.patch
Latest from Linus
-generic-subarch.patch
-altinstruction-linkage-fix.patch
-cpia-section-fix.patch
-opl3sa2-compile-fix.patch
-alloc_skb-remove-debug-check.patch
-misc.patch
-mwave-build-fix.patch
-drm-timer-init-fix.patch
-slab-init-fixes.patch
-sysrq-fs-cleanups.patch
-UPDATE_ATIME-update_atime.patch
-irqreturn-pcmcia_cs.patch
-printscreen-fix.patch
-disk_name-no-devfs.patch
-devfs-01-api-change.patch
-remove-partition_name.patch
-switch-to-devfs_mk_bdev.patch
-386-access_ok-race-fix.patch
-swapfile-hold-i_sem.patch
-dont-set-kernel-pgd-on-PAE.patch
-nobody-listens-to-wli.patch
-shrink_slab-accounting.patch
-slab-debugging-improvement.patch
-fget-speedup.patch
-fget_light-fix.patch
-i8042-share-irqs.patch
-select-speedup.patch
-security_d_instantiate-movement.patch
-ext3-security-xattr.patch
-ext2-security-xattr.patch
-lsm-setxattr-changes.patch
-sunrpc-gcc-bug-workaround.patch
Merged
+ppc64-xics-irq-fix.patch
ppc64 IRQ return fix
+hrtimers-fix-signone.patch
High-res timers fix
+netfilter-skbuff-fix.patch
Might fix a netfilter oops
+ext3-quota-reservation-fix.patch
Fix possible BUG with ext3+quotas
+quota-reference-drop-fix.patch
Quota fix
+visws-logo-fix.patch
visws fbcon logo fix
-dcache_lock-vs-tasklist_lock-take-2.patch
Dropped for now - Manfred is redoing it.
+vmalloc-race-fix.patch
Fix nasty race in vmalloc/vfree. Seems to only happen on preempt. This
will fix the select()-related oops whch Felix von Leitner reported. Kudos
to Mister Irwin.
+as-small-hashes.patch
Reduce anticipatory scheduler memory footprint
+tty-64-bit-dev_t-warning-fix.patch
Warning fix
+security-process-attribute-api.patch
Security API work
+thread-info-in-task_struct.patch
Infrastructure for supporting ia64 oddness
-T25-cciss-C69.patch
-T26-cpqarray-C69.patch
-T27-kobject-C69.patch
-T28-tty-C69.patch
-T29-kobj_map-C69.patch
-T30-cdev-C69.patch
-T31-i_cdev-C69.patch
The tty changes broke these.
All 104 patches:
linus.patch
mm.patch
add -mmN to EXTRAVERSION
kgdb-ga.patch
kgdb stub for ia32 (George Anzinger's one)
ipmi-warning-fixes.patch
irqreturn-uml.patch
UML updates for the new IRQ API
irqreturn-aic79xx.patch
Fix aic79xx for new IRQ API
irqreturn-drivers-net.patch
slab-magazine-layer.patch
magazine layer for slab
config_spinline.patch
uninline spinlocks for profiling accuracy.
ppc64-ioctl-pci-update.patch
From: Anton Blanchard <anton@samba.org>
Subject: ppc64 stuff
ppc64-reloc_hide.patch
ppc64-aio-32bit-emulation.patch
32/64bit emulation for aio
ppc64-scruffiness.patch
Fix some PPC64 compile warnings
ppc64-xics-irq-fix.patch
PPC64 irq return fix
sym-do-160.patch
make the SYM driver do 160 MB/sec
hrtimers-fix-signone.patch
hrtimers: fix timer_create(2) && SIGEV_NONE
netfilter-skbuff-fix.patch
netfilter skbuff BUGfix
irqreturn-snd-via-fix.patch
via sound irqreturn fix
irq_cpustat-cleanup.patch
irq_cpustat cleanup
config-PAGE_OFFSET.patch
Configurable kenrel/user memory split
fat-speedup.patch
fat cluster search speedup
irq-check-rate-limit.patch
IRQs: handle bad return values from handlers
irq_desc-others.patch
Fix up irq_desc initialisation for non-ia32
ext3-quota-reservation-fix.patch
Quota write transaction size fix
quota-reference-drop-fix.patch
dquot_transfer() fix
buffer-debug.patch
buffer.c debugging
ext3-truncate-ordered-pages.patch
ext3: explicitly free truncated pages
3c59x-irq-fix.patch
VM_RESERVED-check.patch
VM_RESERVED check
exit_mmap-TASK_SIZE.patch
exit_mmap() TASK_SIZE fix
semop-race-fix-2.patch
semop race fix #2
nfs-writeback-tweak.patch
Tweak to NFS memory management for writes...
reiserfs_file_write-5.patch
visws-logo-fix.patch
visws: fix penguin with sgi logo
clustered-io_apic-fix.patch
Subject: [RFC][PATCH] fix for clusterd io_apics
rcu-stats.patch
RCU statistics reporting
ext3-journalled-data-assertion-fix.patch
Remove incorrect assertion from ext3
ide_setting_sem-fix.patch
reslabify-pgds-and-pmds.patch
re-slabify i386 pgd's and pmd's
nfs-speedup.patch
nfs-oom-fix.patch
nfs oom fix
sk-allocation.patch
Subject: Re: nfs oom
nfs-more-oom-fix.patch
rpciod-atomic-allocations.patch
Make rcpiod use atomic allocations
linux-isp.patch
isp-update-1.patch
clone-retval-fix.patch
copy_process return value fix
de_thread-fix.patch
de_thread memory corruption fix
list_del-debug.patch
list_del debug check
airo-schedule-fix.patch
airo.c: don't sleep in atomic regions
synaptics-mouse-support.patch
Add Synaptics touchpad tweaking to psmouse driver
vmalloc-race-fix.patch
vmalloc race fix
rq-dyn-works.patch
rq-dyn, dynamic request allocation
kblockd.patch
Create `kblockd' workqueue
cfq-infrastructure.patch
elevator-completion-api.patch
elevator completion API
as-iosched.patch
anticipatory I/O scheduler
as-use-completion.patch
AS use completion notifier
as-remove-debug-checks.patch
AS: remove debug checks
as-iosched-dyn.patch
AS: update to dynamic request allocation API
as-monitor-seek-distance.patch
AS: monitor seek distance
as-div64-fix.patch
as: don't do 64-bit divides
as-small-hashes.patch
AS: smaller hashes
unplug-use-kblockd.patch
Use kblockd for running request queues
cfq-2.patch
CFQ scheduler, #2
cfq-iosched-dyn.patch
CFQ: update to rq-dyn API
unmap-page-debugging.patch
unmap unused pages for debugging
fremap-all-mappings.patch
Make all executable mappings be nonlinear
sched-2.5.68-B2.patch
HT scheduler, sched-2.5.68-B2
sched-numa-warning-fix.patch
scheduler warning fix for NUMA
sched_idle-typo-fix.patch
fix sched_idle typo
kgdb-ga-idle-fix.patch
acpi-irq-ret-fix.patch
acpi irq return value fix
sound-irq-hack.patch
oprofile-build-fix.patch
Fix arch/i386/oprofile/init.c build error
sched-2.5.64-D3.patch
sched-2.5.64-D3, more interactivity changes
sched_best_cpu-fix.patch
sched_best_cpu does not pick best cpu
sched_best_cpu-fix-2.patch
sched_best_cpu does not pick best cpu (2/2)
generic_hweight64-fix.patch
show_task-free-stack-fix.patch
show_task() fix and cleanup
htree-nfs-fix.patch
Fix ext3 htree / NFS compatibility problems
htree-nfs-fix-2.patch
htree nfs fix
htree-leak-fix.patch
ext3: htree memory leak fix
put_task_struct-debug.patch
ia32-mknod64.patch
mknod64 for ia32
ext2-64-bit-special-inodes.patch
ext2: support for 64-bit device nodes
ext3-64-bit-special-inodes.patch
ext3: support for 64-bit device nodes
64-bit-dev_t-kdev_t.patch
64-bit dev_t and kdev_t
tty-64-bit-dev_t-warning-fix.patch
tty layer 64-bit dev_t printk warning fix
oops-dump-preceding-code.patch
i386 oops output: dump preceding code
lockmeter.patch
security-process-attribute-api.patch
Process Attribute API for Security Modules
thread-info-in-task_struct.patch
allow thread_info to be allocated as part of task_struct
ext3-no-bkl.patch
journal_dirty_metadata-speedup.patch
journal_get_write_access-speedup.patch
ext3-concurrent-block-inode-allocation.patch
Subject: [PATCH] concurrent block/inode allocation for EXT3
ext3-orlov-approx-counter-fix.patch
Fix orlov allocator boundary case
ext3-concurrent-block-allocation-fix-1.patch
ext3-concurrent-block-allocation-hashed.patch
Subject: Re: [PATCH] concurrent block/inode allocation for EXT3
pcmcia-deadlock-fix-2.patch
Fix PCMCIA deadlock (rev. 2)
pcmcia-fix.patch
kexec.patch
kexec
fbdev-updates.patch
Fbdev update patch
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: 2.5.69-mm3
2003-05-08 8:39 2.5.69-mm3 Andrew Morton
@ 2003-05-09 14:10 ` Dipankar Sarma
2003-05-09 19:49 ` 2.5.69-mm3 Martin J. Bligh
` (2 more replies)
2003-05-09 14:53 ` 2.5.69-mm3 William Lee Irwin III
` (4 subsequent siblings)
5 siblings, 3 replies; 12+ messages in thread
From: Dipankar Sarma @ 2003-05-09 14:10 UTC (permalink / raw)
To: Andrew Morton; +Cc: linux-kernel, linux-mm
On Thu, May 08, 2003 at 08:41:12AM +0000, Andrew Morton wrote:
> http://www.zip.com.au/~akpm/linux/patches/2.5/2.5.69-mm3.gz
>
> Will appear sometime at
>
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.5/2.5.69/2.5.69-mm3/
>
>
> Small things. Mainly a resync for various people...
>
> rcu-stats.patch
> RCU statistics reporting
I am wondering what we should do with this patch. The RCU stats display
the #s of RCU requests and actual updates on each CPU. On a normal system
they don't mean much to a sysadmin, so I am not sure if it is the right
thing to include this feature. OTOH, it is extremely useful to detect
potential memory leaks happening due to, say a CPU looping in
kernel (and RCU not happening consequently). Will a CONFIG_RCU_DEBUG
make it more palatable for mainline ?
Thanks
Dipankar
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: 2.5.69-mm3
2003-05-08 8:39 2.5.69-mm3 Andrew Morton
2003-05-09 14:10 ` 2.5.69-mm3 Dipankar Sarma
@ 2003-05-09 14:53 ` William Lee Irwin III
2003-05-09 15:37 ` 2.5.69-mm3 William Lee Irwin III
` (3 subsequent siblings)
5 siblings, 0 replies; 12+ messages in thread
From: William Lee Irwin III @ 2003-05-09 14:53 UTC (permalink / raw)
To: Andrew Morton; +Cc: linux-kernel, linux-mm
On Thu, May 08, 2003 at 01:39:58AM -0700, Andrew Morton wrote:
> http://www.zip.com.au/~akpm/linux/patches/2.5/2.5.69-mm3.gz
> Will appear sometime at
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.5/2.5.69/2.5.69-mm3/
This comment looks stale; AIUI the behavior coded is what's desired.
This came up in a discussion with some implementors of a language
runtime about the cause of failures to open large files.
-- wli
diff -prauN linux-2.5.69-1/fs/open.c open-2.5.69-1/fs/open.c
--- linux-2.5.69-1/fs/open.c Wed Apr 9 06:42:36 2003
+++ open-2.5.69-1/fs/open.c Fri May 9 07:19:25 2003
@@ -902,7 +902,7 @@
/*
* Called when an inode is about to be open.
- * We use this to disallow opening RW large files on 32bit systems if
+ * We use this to disallow opening large files on 32bit systems if
* the caller didn't specify O_LARGEFILE. On 64bit systems we force
* on this flag in sys_open.
*/
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: 2.5.69-mm3
2003-05-08 8:39 2.5.69-mm3 Andrew Morton
2003-05-09 14:10 ` 2.5.69-mm3 Dipankar Sarma
2003-05-09 14:53 ` 2.5.69-mm3 William Lee Irwin III
@ 2003-05-09 15:37 ` William Lee Irwin III
2003-05-09 17:55 ` 2.5.69-mm3 William Lee Irwin III
` (2 subsequent siblings)
5 siblings, 0 replies; 12+ messages in thread
From: William Lee Irwin III @ 2003-05-09 15:37 UTC (permalink / raw)
To: Andrew Morton; +Cc: linux-kernel, linux-mm
On Thu, May 08, 2003 at 01:39:58AM -0700, Andrew Morton wrote:
> http://www.zip.com.au/~akpm/linux/patches/2.5/2.5.69-mm3.gz
> Will appear sometime at
>
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.5/2.5.69/2.5.69-mm3/
I was just looking over this and noticed 2.4.x makes u64 dma_addr_t
conditional on CONFIG_HIGHMEM64G where 2.5.x uses CONFIG_HIGHMEM. It's
clearly not necessary on CONFIG_HIGHMEM4G, hence this obvious (but
untested) patch:
-- wli
diff -prauN linux-2.5.69-1/include/asm-i386/types.h types-2.5.69-1/include/asm-i386/types.h
--- linux-2.5.69-1/include/asm-i386/types.h Mon Dec 30 20:14:21 2002
+++ types-2.5.69-1/include/asm-i386/types.h Fri May 9 08:29:57 2003
@@ -51,7 +51,7 @@
/* DMA addresses come in generic and 64-bit flavours. */
-#ifdef CONFIG_HIGHMEM
+#ifdef CONFIG_HIGHMEM64G
typedef u64 dma_addr_t;
#else
typedef u32 dma_addr_t;
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: 2.5.69-mm3
2003-05-08 8:39 2.5.69-mm3 Andrew Morton
` (2 preceding siblings ...)
2003-05-09 15:37 ` 2.5.69-mm3 William Lee Irwin III
@ 2003-05-09 17:55 ` William Lee Irwin III
2003-05-09 18:12 ` 2.5.69-mm3 William Lee Irwin III
2003-05-13 18:21 ` 2.5.69-mm3 bug Szonyi Calin
5 siblings, 0 replies; 12+ messages in thread
From: William Lee Irwin III @ 2003-05-09 17:55 UTC (permalink / raw)
To: Andrew Morton; +Cc: linux-kernel, linux-mm
On Thu, May 08, 2003 at 01:39:58AM -0700, Andrew Morton wrote:
> http://www.zip.com.au/~akpm/linux/patches/2.5/2.5.69-mm3.gz
> Will appear sometime at
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.5/2.5.69/2.5.69-mm3/
Microscopic hugetlb cleanup: some variables static to hugetlbpage.c are
later declared as extern within a function in the same file. This patch
removes their declaration.
-- wli
diff -urpN mm3-2.5.69-1/arch/i386/mm/hugetlbpage.c mm3-2.5.69-2/arch/i386/mm/hugetlbpage.c
--- mm3-2.5.69-1/arch/i386/mm/hugetlbpage.c 2003-05-04 16:53:41.000000000 -0700
+++ mm3-2.5.69-2/arch/i386/mm/hugetlbpage.c 2003-05-09 10:27:57.000000000 -0700
@@ -20,8 +20,6 @@
#include <asm/tlb.h>
#include <asm/tlbflush.h>
-#include <linux/sysctl.h>
-
static long htlbpagemem;
int htlbpage_max;
static long htlbzone_pages;
@@ -398,8 +396,6 @@ int set_hugetlb_mem_size(int count)
{
int lcount;
struct page *page;
- extern long htlbzone_pages;
- extern struct list_head htlbpage_freelist;
if (count < 0)
lcount = count;
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: 2.5.69-mm3
2003-05-08 8:39 2.5.69-mm3 Andrew Morton
` (3 preceding siblings ...)
2003-05-09 17:55 ` 2.5.69-mm3 William Lee Irwin III
@ 2003-05-09 18:12 ` William Lee Irwin III
2003-05-09 18:15 ` 2.5.69-mm3 William Lee Irwin III
2003-05-13 18:21 ` 2.5.69-mm3 bug Szonyi Calin
5 siblings, 1 reply; 12+ messages in thread
From: William Lee Irwin III @ 2003-05-09 18:12 UTC (permalink / raw)
To: Andrew Morton; +Cc: linux-kernel, linux-mm
On Thu, May 08, 2003 at 01:39:58AM -0700, Andrew Morton wrote:
> http://www.zip.com.au/~akpm/linux/patches/2.5/2.5.69-mm3.gz
> Will appear sometime at
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.5/2.5.69/2.5.69-mm3/
topology.h has a syntactic hygiene issue where it has a for () loop with
an if () in the body defined as a macro:
#define foo(...) for (...) if (...)
This patch prepares some of the bitop definitions used for the loop
mechanics to be usable in headers where BITS_PER_LONG is not guaranteed
to be defined for some reason. It removes the #ifdef on BITS_PER_LONG
in favor of if (sizeof(...) == ...) tests so hweight_long() will be
defined even when BITS_PER_LONG is not. unsigned long is also used for
some variables and/or return types that changed size with BITS_PER_LONG.
The 32-bit generic_hweight64() also changed its argument from a pointer
to a u64, which actually makes for a consistent interface in both cases.
The follow-up will make use of this to clean up the hygiene issue above
and correct a compilation error in topology.h
-- wli
diff -urpN mm3-2.5.69-1/include/linux/bitops.h mm3-2.5.69-2/include/linux/bitops.h
--- mm3-2.5.69-1/include/linux/bitops.h 2003-05-09 09:22:16.000000000 -0700
+++ mm3-2.5.69-2/include/linux/bitops.h 2003-05-09 10:27:57.000000000 -0700
@@ -1,5 +1,6 @@
#ifndef _LINUX_BITOPS_H
#define _LINUX_BITOPS_H
+#include <asm/types.h>
#include <asm/bitops.h>
/*
@@ -107,11 +108,14 @@ static inline unsigned int generic_hweig
return (res & 0x0F) + ((res >> 4) & 0x0F);
}
-#if (BITS_PER_LONG == 64)
-
-static inline u64 generic_hweight64(u64 w)
+static inline unsigned long generic_hweight64(u64 w)
{
- u64 res = (w & 0x5555555555555555) + ((w >> 1) & 0x5555555555555555);
+ u64 res;
+ if (sizeof(unsigned long) == 4)
+ return generic_hweight32((unsigned long)(w >> 32)) +
+ generic_hweight32((unsigned long)w);
+
+ res = (w & 0x5555555555555555) + ((w >> 1) & 0x5555555555555555);
res = (res & 0x3333333333333333) + ((res >> 2) & 0x3333333333333333);
res = (res & 0x0F0F0F0F0F0F0F0F) + ((res >> 4) & 0x0F0F0F0F0F0F0F0F);
res = (res & 0x00FF00FF00FF00FF) + ((res >> 8) & 0x00FF00FF00FF00FF);
@@ -119,22 +123,9 @@ static inline u64 generic_hweight64(u64
return (res & 0x00000000FFFFFFFF) + ((res >> 32) & 0x00000000FFFFFFFF);
}
-#define hweight_long(w) generic_hweight64(w)
-
-#endif /* BITS_PER_LONG == 64 */
-
-#if (BITS_PER_LONG == 32)
-
-static inline unsigned int generic_hweight64(unsigned int *w)
+static inline unsigned long hweight_long(unsigned long x)
{
- return generic_hweight32(w[0]) + generic_hweight32(w[1]);
+ return sizeof(x) == 4 ? generic_hweight32(x) : generic_hweight64(x);
}
-#define hweight_long(w) generic_hweight32(w)
-
-#endif /* BITS_PER_LONG == 32 */
-
-#include <asm/bitops.h>
-
-
#endif
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: 2.5.69-mm3
2003-05-09 18:12 ` 2.5.69-mm3 William Lee Irwin III
@ 2003-05-09 18:15 ` William Lee Irwin III
2003-05-09 18:54 ` 2.5.69-mm3 William Lee Irwin III
0 siblings, 1 reply; 12+ messages in thread
From: William Lee Irwin III @ 2003-05-09 18:15 UTC (permalink / raw)
To: Andrew Morton, linux-kernel, linux-mm
On Fri, May 09, 2003 at 11:12:57AM -0700, William Lee Irwin III wrote:
> topology.h has a syntactic hygiene issue where it has a for () loop with
> an if () in the body defined as a macro:
> #define foo(...) for (...) if (...)
> This patch prepares some of the bitop definitions used for the loop
> mechanics to be usable in headers where BITS_PER_LONG is not guaranteed
> to be defined for some reason. It removes the #ifdef on BITS_PER_LONG
> in favor of if (sizeof(...) == ...) tests so hweight_long() will be
> defined even when BITS_PER_LONG is not. unsigned long is also used for
> some variables and/or return types that changed size with BITS_PER_LONG.
> The 32-bit generic_hweight64() also changed its argument from a pointer
> to a u64, which actually makes for a consistent interface in both cases.
> The follow-up will make use of this to clean up the hygiene issue above
> and correct a compilation error in topology.h
diff -urpN mm3-2.5.69-1/include/linux/topology.h mm3-2.5.69-2/include/linux/topology.h
--- mm3-2.5.69-1/include/linux/topology.h 2003-05-09 09:22:16.000000000 -0700
+++ mm3-2.5.69-2/include/linux/topology.h 2003-05-09 10:29:08.000000000 -0700
@@ -32,8 +32,15 @@
#define nr_cpus_node(node) (hweight_long(node_to_cpumask(node)))
+static inline int __next_node_with_cpus(int node)
+{
+ do
+ ++node;
+ while (!nr_cpus_node(node) && node < numnodes);
+ return node;
+}
+
#define for_each_node_with_cpus(node) \
- for (node = 0; node < numnodes; node++) \
- if (nr_cpus_node(node)
+ for (node = 0; node < numnodes; node = __next_node_with_cpus(node))
#endif /* _LINUX_TOPOLOGY_H */
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: 2.5.69-mm3
2003-05-09 18:15 ` 2.5.69-mm3 William Lee Irwin III
@ 2003-05-09 18:54 ` William Lee Irwin III
0 siblings, 0 replies; 12+ messages in thread
From: William Lee Irwin III @ 2003-05-09 18:54 UTC (permalink / raw)
To: Andrew Morton, linux-kernel, linux-mm
On Fri, May 09, 2003 at 11:15:35AM -0700, William Lee Irwin III wrote:
+static inline int __next_node_with_cpus(int node)
+{
+ do
+ ++node;
+ while (!nr_cpus_node(node) && node < numnodes);
+ return node;
+}
GRRR, neither seems to hurt my booting it or cause warnings but there
are two mistakes:
(1) not checking node < numnodes before !nr_cpus_node()
(2) casting the arg of generic_hweight32() to unsigned long is wrong
Fixed patch(es) below.
-- wli
diff -urpN mm3-2.5.69-1/include/linux/bitops.h mm3-2.5.69-2/include/linux/bitops.h
--- mm3-2.5.69-1/include/linux/bitops.h 2003-05-09 09:22:16.000000000 -0700
+++ mm3-2.5.69-2/include/linux/bitops.h 2003-05-09 11:30:09.000000000 -0700
@@ -1,5 +1,6 @@
#ifndef _LINUX_BITOPS_H
#define _LINUX_BITOPS_H
+#include <asm/types.h>
#include <asm/bitops.h>
/*
@@ -107,11 +108,14 @@ static inline unsigned int generic_hweig
return (res & 0x0F) + ((res >> 4) & 0x0F);
}
-#if (BITS_PER_LONG == 64)
-
-static inline u64 generic_hweight64(u64 w)
+static inline unsigned long generic_hweight64(u64 w)
{
- u64 res = (w & 0x5555555555555555) + ((w >> 1) & 0x5555555555555555);
+ u64 res;
+ if (sizeof(unsigned long) == 4)
+ return generic_hweight32((unsigned int)(w >> 32)) +
+ generic_hweight32((unsigned int)w);
+
+ res = (w & 0x5555555555555555) + ((w >> 1) & 0x5555555555555555);
res = (res & 0x3333333333333333) + ((res >> 2) & 0x3333333333333333);
res = (res & 0x0F0F0F0F0F0F0F0F) + ((res >> 4) & 0x0F0F0F0F0F0F0F0F);
res = (res & 0x00FF00FF00FF00FF) + ((res >> 8) & 0x00FF00FF00FF00FF);
@@ -119,22 +123,9 @@ static inline u64 generic_hweight64(u64
return (res & 0x00000000FFFFFFFF) + ((res >> 32) & 0x00000000FFFFFFFF);
}
-#define hweight_long(w) generic_hweight64(w)
-
-#endif /* BITS_PER_LONG == 64 */
-
-#if (BITS_PER_LONG == 32)
-
-static inline unsigned int generic_hweight64(unsigned int *w)
+static inline unsigned long hweight_long(unsigned long x)
{
- return generic_hweight32(w[0]) + generic_hweight32(w[1]);
+ return sizeof(x) == 4 ? generic_hweight32(x) : generic_hweight64(x);
}
-#define hweight_long(w) generic_hweight32(w)
-
-#endif /* BITS_PER_LONG == 32 */
-
-#include <asm/bitops.h>
-
-
#endif
diff -urpN mm3-2.5.69-1/include/linux/topology.h mm3-2.5.69-2/include/linux/topology.h
--- mm3-2.5.69-1/include/linux/topology.h 2003-05-09 09:22:16.000000000 -0700
+++ mm3-2.5.69-2/include/linux/topology.h 2003-05-09 11:29:52.000000000 -0700
@@ -32,8 +32,15 @@
#define nr_cpus_node(node) (hweight_long(node_to_cpumask(node)))
+static inline int __next_node_with_cpus(int node)
+{
+ do
+ ++node;
+ while (node < numnodes && !nr_cpus_node(node));
+ return node;
+}
+
#define for_each_node_with_cpus(node) \
- for (node = 0; node < numnodes; node++) \
- if (nr_cpus_node(node)
+ for (node = 0; node < numnodes; node = __next_node_with_cpus(node))
#endif /* _LINUX_TOPOLOGY_H */
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: 2.5.69-mm3
2003-05-09 14:10 ` 2.5.69-mm3 Dipankar Sarma
@ 2003-05-09 19:49 ` Martin J. Bligh
2003-05-09 21:18 ` 2.5.69-mm3 Andrew Morton
2003-05-13 20:13 ` 2.5.69-mm3 Bill Davidsen
2 siblings, 0 replies; 12+ messages in thread
From: Martin J. Bligh @ 2003-05-09 19:49 UTC (permalink / raw)
To: dipankar, Andrew Morton; +Cc: linux-kernel, linux-mm
> I am wondering what we should do with this patch. The RCU stats display
> the #s of RCU requests and actual updates on each CPU. On a normal system
> they don't mean much to a sysadmin, so I am not sure if it is the right
> thing to include this feature. OTOH, it is extremely useful to detect
> potential memory leaks happening due to, say a CPU looping in
> kernel (and RCU not happening consequently). Will a CONFIG_RCU_DEBUG
> make it more palatable for mainline ?
I'd find that useful - if it has a measurable overhead. If not, just leave
it on all the time ;-)
M.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: 2.5.69-mm3
2003-05-09 14:10 ` 2.5.69-mm3 Dipankar Sarma
2003-05-09 19:49 ` 2.5.69-mm3 Martin J. Bligh
@ 2003-05-09 21:18 ` Andrew Morton
2003-05-13 20:13 ` 2.5.69-mm3 Bill Davidsen
2 siblings, 0 replies; 12+ messages in thread
From: Andrew Morton @ 2003-05-09 21:18 UTC (permalink / raw)
To: dipankar; +Cc: linux-kernel, linux-mm
Dipankar Sarma <dipankar@in.ibm.com> wrote:
>
> > rcu-stats.patch
> > RCU statistics reporting
>
> I am wondering what we should do with this patch.
How about we just keep it floating about in the experimental kernels?
Can't say that I use it for anything, really.
^ permalink raw reply [flat|nested] 12+ messages in thread
* 2.5.69-mm3 bug
2003-05-08 8:39 2.5.69-mm3 Andrew Morton
` (4 preceding siblings ...)
2003-05-09 18:12 ` 2.5.69-mm3 William Lee Irwin III
@ 2003-05-13 18:21 ` Szonyi Calin
5 siblings, 0 replies; 12+ messages in thread
From: Szonyi Calin @ 2003-05-13 18:21 UTC (permalink / raw)
To: akpm; +Cc: linux-kernel
[-- Attachment #1: Type: text/plain, Size: 650 bytes --]
Hello
With 2.5.69-mm3
<0> Kernel panic: Fatal exception in interrupt.In interrupt handler - not
syncing.
I couldn't put the hole message because it's bigger than the screen size.
This happens when running killall5 in the shutdown (rc.6) script
I'll try to boot with console lp0 and see if I can get it on printer
Config and programs version attached. Kernel compiled with gcc-3.2.3
but happens even when compiled with gcc-2.95.3
--
# fortune
fortune: write error on /dev/null --- please empty the bit bucket
-----------------------------------------
This email was sent using SquirrelMail.
"Webmail for nuts!"
http://squirrelmail.org/
[-- Attachment #2: config --]
[-- Type: application/octet-stream, Size: 6247 bytes --]
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_UID16=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_EXPERIMENTAL=y
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_SYSCTL=y
CONFIG_LOG_BUF_SHIFT=14
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_MODULE_FORCE_UNLOAD=y
CONFIG_OBSOLETE_MODPARM=y
CONFIG_KMOD=y
CONFIG_X86_PC=y
CONFIG_MK7=y
CONFIG_X86_CMPXCHG=y
CONFIG_X86_XADD=y
CONFIG_X86_L1_CACHE_SHIFT=6
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_X86_GOOD_APIC=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_X86_USE_3DNOW=y
CONFIG_PREEMPT=y
CONFIG_X86_UP_APIC=y
CONFIG_X86_UP_IOAPIC=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_IO_APIC=y
CONFIG_X86_TSC=y
CONFIG_X86_MCE=y
CONFIG_X86_MCE_NONFATAL=y
CONFIG_X86_MCE_P4THERMAL=y
CONFIG_X86_CPUID=y
CONFIG_NOHIGHMEM=y
CONFIG_1GB=y
CONFIG_MTRR=y
CONFIG_HAVE_DEC_LOCK=y
CONFIG_PM=y
CONFIG_APM=y
CONFIG_APM_DO_ENABLE=y
CONFIG_APM_RTC_IS_GMT=y
CONFIG_PCI=y
CONFIG_PCI_GODIRECT=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_LEGACY_PROC=y
CONFIG_PCI_NAMES=y
CONFIG_ISA=y
CONFIG_KCORE_ELF=y
CONFIG_BINFMT_ELF=y
CONFIG_PARPORT=y
CONFIG_PARPORT_PC=y
CONFIG_PARPORT_PC_CML1=y
CONFIG_PARPORT_PC_FIFO=y
CONFIG_PARPORT_PC_SUPERIO=y
CONFIG_PARPORT_1284=y
CONFIG_PNP=y
CONFIG_PNP_NAMES=y
CONFIG_PNP_DEBUG=y
CONFIG_ISAPNP=y
CONFIG_PNPBIOS=y
CONFIG_BLK_DEV_FD=y
CONFIG_BLK_DEV_LOOP=y
CONFIG_IDE=y
CONFIG_BLK_DEV_IDE=y
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_IDEDISK_MULTI_MODE=y
CONFIG_BLK_DEV_IDECD=y
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_BLK_DEV_GENERIC=y
CONFIG_BLK_DEV_IDEDMA_PCI=y
CONFIG_IDEDMA_PCI_AUTO=y
CONFIG_BLK_DEV_IDEDMA=y
CONFIG_BLK_DEV_ADMA=y
CONFIG_BLK_DEV_VIA82CXXX=y
CONFIG_IDEDMA_AUTO=y
CONFIG_IDEDMA_IVB=y
CONFIG_BLK_DEV_IDE_MODES=y
CONFIG_NET=y
CONFIG_PACKET=y
CONFIG_PACKET_MMAP=y
CONFIG_NETLINK_DEV=y
CONFIG_NETFILTER=y
CONFIG_NETFILTER_DEBUG=y
CONFIG_UNIX=y
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
CONFIG_IP_MULTIPLE_TABLES=y
CONFIG_IP_ROUTE_FWMARK=y
CONFIG_IP_ROUTE_NAT=y
CONFIG_IP_ROUTE_MULTIPATH=y
CONFIG_IP_ROUTE_TOS=y
CONFIG_IP_ROUTE_VERBOSE=y
CONFIG_NET_IPIP=y
CONFIG_NET_IPGRE=y
CONFIG_NET_IPGRE_BROADCAST=y
CONFIG_ARPD=y
CONFIG_SYN_COOKIES=y
CONFIG_IP_NF_CONNTRACK=y
CONFIG_IP_NF_FTP=y
CONFIG_IP_NF_IRC=y
CONFIG_IP_NF_TFTP=y
CONFIG_IP_NF_AMANDA=y
CONFIG_IP_NF_QUEUE=y
CONFIG_IP_NF_IPTABLES=y
CONFIG_IP_NF_MATCH_LIMIT=y
CONFIG_IP_NF_MATCH_MAC=y
CONFIG_IP_NF_MATCH_PKTTYPE=y
CONFIG_IP_NF_MATCH_MARK=y
CONFIG_IP_NF_MATCH_MULTIPORT=y
CONFIG_IP_NF_MATCH_TOS=y
CONFIG_IP_NF_MATCH_ECN=y
CONFIG_IP_NF_MATCH_DSCP=y
CONFIG_IP_NF_MATCH_AH_ESP=y
CONFIG_IP_NF_MATCH_LENGTH=y
CONFIG_IP_NF_MATCH_TTL=y
CONFIG_IP_NF_MATCH_TCPMSS=y
CONFIG_IP_NF_MATCH_HELPER=y
CONFIG_IP_NF_MATCH_STATE=y
CONFIG_IP_NF_MATCH_CONNTRACK=y
CONFIG_IP_NF_MATCH_UNCLEAN=y
CONFIG_IP_NF_MATCH_OWNER=y
CONFIG_IP_NF_FILTER=y
CONFIG_IP_NF_TARGET_REJECT=y
CONFIG_IP_NF_TARGET_MIRROR=y
CONFIG_IP_NF_NAT=y
CONFIG_IP_NF_NAT_NEEDED=y
CONFIG_IP_NF_TARGET_MASQUERADE=y
CONFIG_IP_NF_TARGET_REDIRECT=y
CONFIG_IP_NF_NAT_LOCAL=y
CONFIG_IP_NF_NAT_SNMP_BASIC=y
CONFIG_IP_NF_NAT_IRC=y
CONFIG_IP_NF_NAT_FTP=y
CONFIG_IP_NF_NAT_TFTP=y
CONFIG_IP_NF_NAT_AMANDA=y
CONFIG_IP_NF_MANGLE=y
CONFIG_IP_NF_TARGET_TOS=y
CONFIG_IP_NF_TARGET_ECN=y
CONFIG_IP_NF_TARGET_DSCP=y
CONFIG_IP_NF_TARGET_MARK=y
CONFIG_IP_NF_TARGET_LOG=y
CONFIG_IP_NF_TARGET_ULOG=y
CONFIG_IP_NF_TARGET_TCPMSS=y
CONFIG_IP_NF_ARPTABLES=y
CONFIG_IP_NF_ARPFILTER=y
CONFIG_IPV6_SCTP__=y
CONFIG_VLAN_8021Q=y
CONFIG_BRIDGE=y
CONFIG_NET_SCHED=y
CONFIG_NET_SCH_CBQ=y
CONFIG_NET_SCH_HTB=y
CONFIG_NET_SCH_CSZ=y
CONFIG_NET_SCH_PRIO=y
CONFIG_NET_SCH_RED=y
CONFIG_NET_SCH_SFQ=y
CONFIG_NET_SCH_TEQL=y
CONFIG_NET_SCH_TBF=y
CONFIG_NET_SCH_GRED=y
CONFIG_NET_SCH_DSMARK=y
CONFIG_NET_SCH_INGRESS=y
CONFIG_NET_QOS=y
CONFIG_NET_ESTIMATOR=y
CONFIG_NET_CLS=y
CONFIG_NET_CLS_TCINDEX=y
CONFIG_NET_CLS_ROUTE4=y
CONFIG_NET_CLS_ROUTE=y
CONFIG_NET_CLS_FW=y
CONFIG_NET_CLS_U32=y
CONFIG_NET_CLS_RSVP=y
CONFIG_NET_CLS_RSVP6=y
CONFIG_NET_CLS_POLICE=y
CONFIG_NETDEVICES=y
CONFIG_NET_ETHERNET=y
CONFIG_MII=y
CONFIG_NET_PCI=y
CONFIG_8139TOO=y
CONFIG_SHAPER=y
CONFIG_INPUT=y
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
CONFIG_SOUND_GAMEPORT=y
CONFIG_SERIO=y
CONFIG_SERIO_I8042=y
CONFIG_SERIO_SERPORT=y
CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ATKBD=y
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=y
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
CONFIG_SERIAL_8250=y
CONFIG_SERIAL_8250_EXTENDED=y
CONFIG_SERIAL_8250_DETECT_IRQ=y
CONFIG_SERIAL_CORE=y
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=512
CONFIG_PRINTER=y
CONFIG_LP_CONSOLE=y
CONFIG_NVRAM=y
CONFIG_RTC=y
CONFIG_AGP=y
CONFIG_AGP_VIA=y
CONFIG_DRM=y
CONFIG_DRM_RADEON=y
CONFIG_EXT2_FS=y
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_JBD=y
CONFIG_FS_MBCACHE=y
CONFIG_REISERFS_FS=y
CONFIG_JFS_FS=y
CONFIG_JFS_POSIX_ACL=y
CONFIG_FS_POSIX_ACL=y
CONFIG_XFS_FS=y
CONFIG_ISO9660_FS=y
CONFIG_JOLIET=y
CONFIG_ZISOFS=y
CONFIG_ZISOFS_FS=y
CONFIG_UDF_FS=y
CONFIG_FAT_FS=y
CONFIG_MSDOS_FS=y
CONFIG_VFAT_FS=y
CONFIG_PROC_FS=y
CONFIG_DEVPTS_FS=y
CONFIG_TMPFS=y
CONFIG_RAMFS=y
CONFIG_UFS_FS=y
CONFIG_NFS_FS=y
CONFIG_NFS_V3=y
CONFIG_NFSD=y
CONFIG_NFSD_V3=y
CONFIG_NFSD_TCP=y
CONFIG_LOCKD=y
CONFIG_LOCKD_V4=y
CONFIG_EXPORTFS=y
CONFIG_SUNRPC=y
CONFIG_SMB_FS=y
CONFIG_PARTITION_ADVANCED=y
CONFIG_MSDOS_PARTITION=y
CONFIG_BSD_DISKLABEL=y
CONFIG_SOLARIS_X86_PARTITION=y
CONFIG_SMB_NLS=y
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="iso8859-2"
CONFIG_NLS_CODEPAGE_437=y
CONFIG_NLS_CODEPAGE_850=y
CONFIG_NLS_CODEPAGE_852=y
CONFIG_NLS_CODEPAGE_1250=y
CONFIG_NLS_ISO8859_1=y
CONFIG_NLS_ISO8859_2=y
CONFIG_NLS_ISO8859_15=y
CONFIG_NLS_UTF8=y
CONFIG_VIDEO_SELECT=y
CONFIG_VGA_CONSOLE=y
CONFIG_DUMMY_CONSOLE=y
CONFIG_SOUND=y
CONFIG_SOUND_PRIME=y
CONFIG_SOUND_OSS=y
CONFIG_SOUND_TRACEINIT=y
CONFIG_SOUND_DMAP=y
CONFIG_SOUND_CS4232=y
CONFIG_DEBUG_KERNEL=y
CONFIG_DEBUG_STACKOVERFLOW=y
CONFIG_DEBUG_SLAB=y
CONFIG_DEBUG_IOVIRT=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_DEBUG_PAGEALLOC=y
CONFIG_KALLSYMS=y
CONFIG_DEBUG_INFO=y
CONFIG_X86_EXTRA_IRQS=y
CONFIG_X86_FIND_SMP_CONFIG=y
CONFIG_X86_MPPARSE=y
CONFIG_ZLIB_INFLATE=y
CONFIG_X86_BIOS_REBOOT=y
[-- Attachment #3: verlinux --]
[-- Type: application/octet-stream, Size: 647 bytes --]
If some fields are empty or look unusual you may have an old version.
Compare to the current minimal requirements in Documentation/Changes.
Linux grinch 2.5.69-mm3 #23 Fri May 9 00:17:47 EEST 2003 i686 unknown
Gnu C 3.2.3
Gnu make 3.79.1
util-linux 2.11u
mount 2.11u
module-init-tools implemented
e2fsprogs 1.32
jfsutils 1.1.2
reiserfsprogs 3.x.1b
xfsprogs 2.0.3
Dynamic linker (ldd) 2.2.4
Procps 3.1.0
Net-tools 1.60
Kbd 1.08
Sh-utils 2.0
Modules Loaded
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: 2.5.69-mm3
2003-05-09 14:10 ` 2.5.69-mm3 Dipankar Sarma
2003-05-09 19:49 ` 2.5.69-mm3 Martin J. Bligh
2003-05-09 21:18 ` 2.5.69-mm3 Andrew Morton
@ 2003-05-13 20:13 ` Bill Davidsen
2 siblings, 0 replies; 12+ messages in thread
From: Bill Davidsen @ 2003-05-13 20:13 UTC (permalink / raw)
To: Dipankar Sarma; +Cc: Andrew Morton, linux-kernel, linux-mm
On Fri, 9 May 2003, Dipankar Sarma wrote:
> I am wondering what we should do with this patch. The RCU stats display
> the #s of RCU requests and actual updates on each CPU. On a normal system
> they don't mean much to a sysadmin, so I am not sure if it is the right
> thing to include this feature. OTOH, it is extremely useful to detect
> potential memory leaks happening due to, say a CPU looping in
> kernel (and RCU not happening consequently). Will a CONFIG_RCU_DEBUG
> make it more palatable for mainline ?
Are there similar things, inplace or in patches? Perhaps a menu section
for kernel metrics and a nice little niche in /proc to display them?
Things like this are helpful when tuning a kernel, but perhaps not wanted
for the minimalist (like embedded) configs.
--
bill davidsen <davidsen@tmr.com>
CTO, TMR Associates, Inc
Doing interesting things with little computers since 1979.
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2003-05-13 20:07 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-05-08 8:39 2.5.69-mm3 Andrew Morton
2003-05-09 14:10 ` 2.5.69-mm3 Dipankar Sarma
2003-05-09 19:49 ` 2.5.69-mm3 Martin J. Bligh
2003-05-09 21:18 ` 2.5.69-mm3 Andrew Morton
2003-05-13 20:13 ` 2.5.69-mm3 Bill Davidsen
2003-05-09 14:53 ` 2.5.69-mm3 William Lee Irwin III
2003-05-09 15:37 ` 2.5.69-mm3 William Lee Irwin III
2003-05-09 17:55 ` 2.5.69-mm3 William Lee Irwin III
2003-05-09 18:12 ` 2.5.69-mm3 William Lee Irwin III
2003-05-09 18:15 ` 2.5.69-mm3 William Lee Irwin III
2003-05-09 18:54 ` 2.5.69-mm3 William Lee Irwin III
2003-05-13 18:21 ` 2.5.69-mm3 bug Szonyi Calin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).