linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jeff Garzik <jgarzik@pobox.com>
To: "Jon K. Akers" <jka@mbi.ufl.edu>
Cc: Andrew Morton <akpm@osdl.org>,
	linux-kernel@vger.kernel.org, linux-mm@kvack.org
Subject: Re: 2.6.0-rc1-mm1 error in bond_main.c
Date: Wed, 31 Dec 2003 10:13:26 -0500	[thread overview]
Message-ID: <3FF2E796.5060600@pobox.com> (raw)
In-Reply-To: <6BE35B06920A7841A6F6AFFC7303CE5EB84C@mbi-10.mbi.ufl.edu>

[-- Attachment #1: Type: text/plain, Size: 852 bytes --]

Jon K. Akers wrote:
> Recieved the following error when compiling the bonding section of the network drivers as a module.
> 
>   CC [M]  drivers/net/bonding/bond_main.o
> drivers/net/bonding/bond_main.c: In function `bond_release':
> drivers/net/bonding/bond_main.c:1660: error: structure has no member named `params'
> drivers/net/bonding/bond_main.c:1661: error: structure has no member named `params'
> make[3]: *** [drivers/net/bonding/bond_main.o] Error 1
> make[2]: *** [drivers/net/bonding] Error 2
> make[1]: *** [drivers/net] Error 2
> make: *** [drivers] Error 2


Fixed in my update:

http://www.kernel.org/pub/linux/kernel/people/jgarzik/patchkits/2.6/2.6.0-rc1-netdrvr-exp1.patch.bz2
http://www.kernel.org/pub/linux/kernel/people/jgarzik/patchkits/2.6/2.6.0-rc1-netdrvr-exp1.log

The broken-out patch that fixes this is attached.

	Jeff



[-- Attachment #2: patch --]
[-- Type: text/plain, Size: 65019 bytes --]

# This is a BitKeeper generated patch for the following project:
# Project Name: Linux kernel tree
# This patch format is intended for GNU patch command version 2.5 or higher.
# This patch includes the following deltas:
#	           ChangeSet	1.1591  -> 1.1592 
#	drivers/net/bonding/bond_main.c	1.71    -> 1.72   
#
# The following is the BitKeeper ChangeSet Log
# --------------------------------------------
# 03/12/30	jgarzik@redhat.com	1.1474.13.23
# [netdrvr e100] remove __devinit markers, fixing oops
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.1
# [PATCH] unshare_files
# 
# From: Chris Wright <chrisw@osdl.org>
# 
# Introduce unshare_files as a helper for use during execve to eliminate
# potential leak of the execve'd binary's fd.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.2
# [PATCH] use new unshare_files helper
# 
# From: Chris Wright <chrisw@osdl.org>
# 
# Use unshare_files during binary loading to eliminate potential leak of
# the binary's fd installed during execve().  As is, this breaks
# binfmt_som.c
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.3
# [PATCH] add steal_locks helper
# 
# From: Chris Wright <chrisw@osdl.org>
# 
# Add steal_locks helper for use in conjunction with unshare_files to make
# sure POSIX file lock semantics aren't broken due to unshare_files.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.4
# [PATCH] use new steal_locks helper
# 
# From: Chris Wright <chrisw@osdl.org>
# 
# Use the new steal_locks helper to steal the locks from the old files struct
# left from unshare_files() when the new unshared struct files gets used.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.5
# [PATCH] fix unsigned issue with env_end - env_start
# 
# From: Chris Wright <chrisw@osdl.org>
# 
# Fix for CAN-2003-0462:  A race condition in the way env_start and
# env_end pointers are initialized in the execve system call and used in
# fs/proc/base.c on Linux 2.4 allows local users to cause a denial of
# service (crash).
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.6
# [PATCH] fix suid leak in /proc
# 
# From: Chris Wright <chrisw@osdl.org>
# 
# Fix for CAN-2003-0501: The /proc filesystem in Linux allows local users to
# obtain sensitive information by opening various entries in /proc/self
# before executing a setuid program, which causes the program to fail to
# change the ownership and permissions of those entries.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.7
# [PATCH] make /proc/tty/driver/ S_IRUSR | S_IXUSR for root only
# 
# From: Chris Wright <chrisw@osdl.org>
# 
# Fix for CAN-2003-0461: /proc/tty/driver/serial in Linux 2.4.x reveals the
# exact number of characters used in serial links, which could allow local
# users to obtain potentially sensitive information such as the length of
# passwords.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.8
# [PATCH] futex uninlining
# 
#            text    data     bss     dec     hex filename
# Before:    4674    1040    4100    9814    2656 kernel/futex.o
# After:     4098    1176    4100    9374    249e kernel/futex.o
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.9
# [PATCH] ia32 Message Signalled Interrupt support
# 
# From: long <tlnguyen@snoqualmie.dp.intel.com>
# 
# 
# Add support for Message Signalled Interrupt delivery on ia32.
# 
# With a fix from Zwane Mwaikambo <zwane@arm.linux.org.uk>
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.10
# [PATCH] EFI support for ia32
# 
# From: Matt Tolentino <metolent@snoqualmie.dp.intel.com>
# 
# Attached is a patch that enables EFI boot-up support in ia32 kernels.
# 
# In order to continue to determine whether the kernel should initialize using
# EFI tables, I've temporarily added a check on the LOADER_TYPE boot parameter.
#  Although I haven't requested that elilo be assigned an id for this yet, I've
# used this to determine whether the kernel should use the EFI initialization
# path as well as a check to see if the EFI_SYSTAB boot parameter contains
# anything.  If someone has a better suggestion for determining this, I'm
# open...
# 
# This patch also uses the existing ioremapping functions to map the efi tables
# into kernel virtual address space.  I've added an option such that I could
# use Dave Hansen's boot_ioremap() before paging_init().  After paging_init, I
# then remap the efi memmap using bt_ioremap for use later.  This has
# eliminated the need for several functions...thanks for the suggestions and
# thanks for your help Dave.  Still this could use a look-see.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.11
# [PATCH] compat_ioctl for i2c
# 
# From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
# 
# I needed those for the G5 on ppc64, so here they are, I was only
# able to test the SMBUS stuff though.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.12
# [PATCH] sqrt() fixes
# 
# It turns out that the int_sqrt() function in oom_kill.c gets it wrong.
# 
# But fb_sqrt() in fbmon.c gets its math right.  Move that function into
# lib/int_sqrt.c, and consolidate.
# 
# (oom_kill.c fix from Thomas Schlichter <schlicht@uni-mannheim.de>)
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.13
# [PATCH] scale the initial value of min_free_kbytes
# 
# This tunable refers to the amount of free memory which the VM will attempt to
# sustain.  It is mainly needed for atomic allocations (eg, networking
# receive).
# 
# It is currently hardwired to 1024k, which is far too large for small machines
# and too small for large machines.
# 
# Rework it to be 128k on tiny machines and 16M on huge machines.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.14
# [PATCH] Use __GFP_REPEAT for cdrom buffer
# 
# The cdrom driver does an order-4 allocation and the open will fail if that
# allocation does not succeed.  This happened to me on an unstressed 900MB
# machine.
# 
# So add the __GFP_REPEAT flag in there - this will cause the page allocator to
# keep on freeing pages until the allocation succeeds.
# 
# It can in theory livelock but in practice I expect it is OK: the user should
# just stop running dbench or whatever it is which is gobbling all the memory
# and the mount/open will then succeed.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.15
# [PATCH] make name_to_dev_t __init
# 
# It calls __init functions anyway.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.16
# [PATCH] ext3 scheduling latency fix
# 
# Sometimes kjournald has to refile a huge number of buffers, because someone
# else wrote them out beforehand - they are all clean.
# 
# This happens under a lock and scheduling latencies of 88 milliseconds on a
# 2.7GHx CPU were observed.
# 
# The patch forward-ports a little bit of the 2.4 low-latency patch to fix this
# problem.
# 
# Worst-case on ext3 is now sub-half-millisecond, except for when the RCU
# dentry reaping softirq cuts in :(
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.17
# [PATCH] cmpci.c: remove pointless set_fs()
# 
# It is doing a set_fs(KERNEL_DS) for no obvious reason.
# 
# Spotted by margitsw@t-online.de (Margit Schubert-While)
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.18
# [PATCH] Fix dcache and icache bloat with deep directories
# 
# This fixes the recently-reported "fsstress memory leak" problem.  It has been
# there since November 2002.
# 
# shrink_dcache() has a heuristic to prevent the dcache (and hence icache) from
# getting shrunk too far: it refuses to allow the dcache to shrink below
# 2*nr_used.
# 
# Problem is, _all_ non-leaf dentries (directories) count as used.  So when you
# have really deep directory hierarchies (fsstress creates these), nr_used is
# really high, and there is no upper bound to the amount of pinned dcache.
# 
# The patch just rips out the heuristic.  This means that dcache (and hence
# icache (and hence pagecache)) will be shrunk more aggressively.  This could
# be a problem, and tons of testing is needed - a new heuristic may be needed.
# 
# However I am not able to reproduce the problem which cause me to add this
# heuristic in the first place:
# 
#    Simple testcase: run a huge `dd' while running a concurrent `watch -n1
#    cat /proc/meminfo'.  The program text for `cat' gets loaded from disk once
#    per second.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.19
# [PATCH] NSL config fixes
# 
# From: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
# 
# - use "select" instead of "depend"
# 
# - remove the unused SMB_NLS
# 
# - remove unneeded "default y" of CONFIG_NLS
# 
# - revert to postion of nls menu (middle of filessytem menus is strange)
# 
# - fix "#ifdef CONFIG_NLS" on UDF (should this add new one to Kconfig?)
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.20
# [PATCH] Fix init_i82365 sysfs ordering oops
# 
# From: Russell King <rmk@arm.linux.org.uk>
# 
# This oops has been caused by the need to register the class before
# registering any objects against it.  Unfortunately, the class needs
# to be registered asynchronously in a separate thread to avoid driver
# model deadlock with yenta with cardbus cards inserted or standard
# PCMCIA cards not being detected correctly due to a race.
# 
# I think the only real solution is to remove the class_device_create_file
# calls from all socket drivers.  This is just a simple commenting out of
# the calls, and should be suitable for the remainder of the -test kernels.
# 
# Due to the number of cases that we're encountering with PCMCIA, I'm
# beginning to wonder if the driver model could be fixed to be more kind
# to PCMCIA by avoiding some of these ordering dependencies.  None of this
# would be a problem if the driver model would allow PCI device drivers to
# register PCI devices while their probe or remove functions were executing.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.21
# [PATCH] Fix proc_pid_lookup vs exit race
# 
# From: Manfred Spraul <manfred@colorfullife.com>
# 
# Fixes a race between proc_pid_lookup and sys_exit.
# 
# - The inodes and dentries for /proc/<pid>/whatever are cached in the dentry
#   cache.  d_revalidate is used to protect against stale data: d_revalidate
#   returns invalid if the task exited.
# 
#   Additionally, sys_exit flushes the dentries for the task that died -
#   otherwise the dentries would stay around until they arrive at the end of
#   the LRU, which could take some time.  But there is one race:
# 
#   - proc_pid_lookup finds a task and prepares new dentries for it. It must 
#     drop all locks for that operation.
#   - the process exits, and the /proc/ dentries are flushed. Nothing
#     happens, because they are not yet in the hash tables.
#   - proc_pid_lookup adds the task to the dentry cache.
# 
#   Result: dentry of a dead task in the hash tables.
# 
#   The patch fixes that problem by flushing again if proc_pid_lookup notices
#   that the thread exited while it created the dentry.  The patch should go
#   in, but it's not critical.
# 
# 
# - task->proc_dentry must be the dentry of /proc/<pid>.  That way sys_exit
#   can flush the whole subtree at exit time.  proc_task_lookup is a direct
#   copy of proc_pid_lookup and handles /proc/<>/task/<pid>.  It contains the
#   lines that set task->proc_dentry.  This is bogus, and must be removed.
# 
#   This hunk is much more critical, because creates a de-facto dentry leak
#   (they are recovered after flushing real dentries from the cache).
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.22
# [PATCH] Add `gcc -Os' config option
# 
# From: Adrian Bunk <bunk@fs.tum.de>
# 
# Allow the kernel to be built with `-Os'.
# 
# It requires CONFIG_EMBEDDED.  This is to make it "hard to get at" because
# one gcc version (3.2.x I think) from RH9 generates crashy kernels with this
# option set.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.23
# [PATCH] Fix sysenter disabling in vm86 mode
# 
# From: Brian Gerst <bgerst@didntduck.org>
# 
# The current code disables sysenter when first entering vm86 mode, but does
# not disable it again when coming back to a vm86 task after a task switch.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.24
# [PATCH] serial console registration bugfix
# 
# From: Bjorn Helgaas <bjorn.helgaas@hp.com>
# 
# uart_set_options() can dereference a null pointer.  This happens if you
# specify a console that hasn't previously been setup by early_serial_setup().
# 
# For example, on ia64, the HCDP typically tells us about line 0, so we calls
# early_serial_setup() for it.  If the user specifies "console=ttyS3", we
# machine-check when trying to follow the uninitialized port->ops pointer.
# 
# It's not entirely clear to me whether we should return 0 or -ENODEV or
# something.  The advantage of returning zero is that if the user specifies
# "console=ttyS0" and we just lack the HCDP, the console doesn't work as early
# as usual, but it does start working after the serial driver detects the port
# (though the baud/parity/etc from the command line are lost).  Returning
# -ENODEV seems to prevent it from ever working.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.25
# [PATCH] vmscan: reset refill_counter after refilling the inactive list
# 
# zone->refill_counter is only there to provide decent levels of work batching:
# don't call refill_inactive_zone() just for a couple of pages.
# 
# But the logic in there allows it to build up to huge values and it can
# overflow (go negative) which will disable refilling altogether until it wraps
# positive again.
# 
# Just reset it to zero whenever we decide to do some refilling.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.26
# [PATCH] Be verbose about the ia32 time source
# 
# From: john stultz <johnstul@us.ibm.com>
# 
# The patch arranges for each timesource type to have a name, and uses that to
# tell the user which timesource is in use at bootup time.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.27
# [PATCH] Get modpost to work properly with vmlinux in a different directory
# 
# From: "Bryan O'Sullivan" <bos@pathscale.com>
# 
# The current version of modpost breaks if invoked from outside the build
# tree.  This patch fixes that, and simplifies the code a bit while it's at
# it.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.28
# [PATCH] Restore /proc/pid/maps formatting
# 
# The seq_file conversion of /proc/pid/maps caused altered behaviour with
# respect to 2.4.22.  Before the conversion, spaces and tabs in filenames were
# displayed verbatim.  After the conversion they are escaped as \040, etc.
# 
# Also, if the mmapped file has been unlinked the output appears as
# 
# 40017000-40018000 rw-p 00000000 03:02 1425800    /home/akpm/foo\040(deleted)
# 
# instead of
# 
# 40017000-40018000 rw-p 00000000 03:02 1425800    /home/akpm/foo (deleted)
# 
# This could break applications which parse /proc/pid/maps (one person has
# reported this).
# 
# The patch restores the 2.4.20 behaviour.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.29
# [PATCH] ia32 WP test cleanup
# 
# From: Zwane Mwaikambo <zwane@arm.linux.org.uk>
# 
# Make the test unconditional - we can always run it now we have fixmap
# support.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.30
# [PATCH] Fix for more than 256 CPUs
# 
# From: Paul Jackson <pj@sgi.com>
# 
# The patch is needed to build NR_CPUS > 256.
# 
# Without this fix, you get compile errors:
#     include/linux/cpumask.h: In function `next_online_cpu':
#     include/linux/cpumask.h:56: structure has no member named `val'
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.31
# [PATCH] Use NODES_SHIFT to calculate ZONE_SHIFT
# 
# From: jbarnes@sgi.com (Jesse Barnes)
# 
# Now that we have a proper NODES_SHIFT value, we need to use it to define
# ZONE_SHIFT otherwise we'll spill over 8 bits if we have more than 85 nodes.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.32
# [PATCH] optimize ia32 memmove
# 
# From: Manfred Spraul <manfred@colorfullife.com>
# 
# The memmove implementation of i386 is not optimized: it uses movsb, which is
# far slower than movsd.  The optimization is trivial: if dest is less than
# source, then call memcpy().  markw tried it on a 4xXeon with dbt2, it saved
# around 300 million cpu ticks in cache_flusharray():
# 
# oprofile, GLOBAL_POWER_EVENTS, count 100k
# Before:
# c0144ed1 <cache_flusharray>: /* cache_flusharray total:  21823  0.0165 */
#      6 4.5e-06 :c0144f8e:       cmp    %esi,%ebx
#     11 8.3e-06 :c0144f90:       jae    c0144f9e <cache_flusharray+0xcd>
#      3 2.3e-06 :c0144f92:       mov    %ebx,%edi
#   7305  0.0055 :c0144f94:       repz movsb %ds:(%esi),%es:(%edi)
#    201 1.5e-04 :c0144f96:       add    $0x10,%esp
# 
# After:
# c0144f1d <cache_flusharray>: /* cache_flusharray total:  17959  0.0136 */
#   1270 9.6e-04 :c0144f1d:       push   %ebp
# [snip]
#      6 4.6e-06 :c0144fdc:       cmp    %esi,%ebx
#     13 9.9e-06 :c0144fde:       jae    c0145000 <cache_flusharray+0xe3>
#      2 1.5e-06 :c0144fe0:       mov    %edx,%eax
#      1 7.6e-07 :c0144fe2:       mov    %ebx,%edi
#     11 8.4e-06 :c0144fe4:       shr    $0x2,%eax
#      1 7.6e-07 :c0144fe7:       mov    %eax,%ecx
#   4129  0.0031 :c0144fe9:       repz movsl %ds:(%esi),%es:(%edi)
#    261 2.0e-04 :c0144feb:       test   $0x2,%dl
#     27 2.1e-05 :c0144fee:       je     c0144ff2 <cache_flusharray+0xd5>
#                :c0144ff0:       movsw  %ds:(%esi),%es:(%edi)
#     95 7.2e-05 :c0144ff2:       test   $0x1,%dl
#     96 7.3e-05 :c0144ff5:       je     c0144ff8 <cache_flusharray+0xdb>
#                :c0144ff7:       movsb  %ds:(%esi),%es:(%edi)
#    121 9.2e-05 :c0144ff8:       add    $0x1c,%esp
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.33
# [PATCH] Fix writev atomicity on pipe/fifo
# 
# From: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
# 
# Current writev() of pipe/fifo can be interleaved with data from other
# processes doing writes even when the requests size is <= PIPE_BUF.  These
# writes should in fact be atomic.
# 
# The readv() side is also supported for same behavior with read().  And it
# is faster.
# 
# readv/writev version of bw_pipe in LMbench
# 
# 2.6.0-test9-bk12
# hirofumi@devron (i686-pc-linux-gnu)[1010]$ ./bw_pipe -m 4096 -M 5
# Pipe bandwidth: 45.53 MB/sec
# hirofumi@devron (i686-pc-linux-gnu)[1009]$ ./bw_pipe -m 1024 -M 5
# Pipe bandwidth: 20.08 MB/sec
# 
# 2.6.0-test9-bk12 + patch
# hirofumi@devron (i686-pc-linux-gnu)[1001]$ ./bw_pipe -m 4096 -M 5
# Pipe bandwidth: 65.98 MB/sec
# hirofumi@devron (i686-pc-linux-gnu)[1002]$ ./bw_pipe -m 1024 -M 5
# Pipe bandwidth: 32.19 MB/sec
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.34
# [PATCH] lockless semop
# 
# From: Manfred Spraul <manfred@colorfullife.com>
# 
# attached is the lockless semop patch. I did another test run with 
# idle=poll on an pentium III, and it remained unchanged: 99.9% direct 
# fast path, 0.1% race with wakeup against writing the final result code:
# 
# http://khack.osdl.org/stp/282936/environment/proc/slabinfo
# 
# That means there is no immediate need to add the two-stage
# implementation to finish_wait.
# 
# It reduces the spinlock operations on the semaphore array spinlock by 1/3.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.35
# [PATCH] use alloc_percpu in percpu_counters
# 
# From: Martin Hicks <mort@wildopensource.com>
# 
# Once NR_CPUS exceeds about 300 ext2 and ext3 will not compile, because the
# percpu counters in the superblocks are so huge that they cannot be kmalloced.
# 
# Fix this by converting the percpu_counter mechanism to use alloc_percpu()
# rather than an NR_CPUS-sized array.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.36
# [PATCH] find_busiest_queue() commentary fix
# 
# From: Ingo Molnar <mingo@elte.hu>
# 
# Clarify a comment in the CPU scheduler.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.37
# [PATCH] fix SOUND_CMPCI Configure help entry
# 
# From: Adrian Bunk <bunk@fs.tum.de>
# 
# the issue below is only a minor documentation fix, but it has confused
# me when configuring a kernel for such a card.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.38
# [PATCH] eicon/ and hardware/eicon/ drivers using the same symbols
# 
# From: Adrian Bunk <bunk@fs.tum.de>
# 
# The legacy eicon driver in drivers/isdn/eicon is the old one and will be
# removed as soon as all features went to the new driver.  Anyway this old
# driver was never meant to be non-module.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.39
# [PATCH] seq_file version of /proc/interrupts
# 
# From: corbet@lwn.net (Jonathan Corbet)
# 
# This converts all architectures' /proc/interrupts implementation over to
# seq_file.  We need this for SMP machines with ridiculous numbers of CPUs and
# if you convert one arch, you have to convert them all...
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.40
# [PATCH] Intel 440gx PCI IDs
# 
# - Add missing PCI ID
# 
# - Forward-port IRQ routing workaround from 2.4.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.41
# [PATCH] support centrino 1GHz
# 
# From: Jeremy Fitzhardinge <jeremy@goop.org>
# 
# I've been getting quite a lot of people mailing me about this CPU.  It
# seems Toshiba has released a machine with it.  It would be nice if this
# patch gets into a kernel soonish.  It's very low-impact.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.42
# [PATCH] document elevator= parameter
# 
# From: Valdis.Kletnieks@vt.edu
# 
# Nick wrote a nice as-iosched.txt file, but apparently nobody updated the
# kernel-parameters.txt file...
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.43
# [PATCH] missing padding in cpio_mkfile in usr/gen_init_cpio.c
# 
# From: Olaf Hering <olh@suse.de>
# 
# We need to update `offset' here so that the subsequent push_pad() (which
# uses `offset') will do the right thing.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.44
# [PATCH] watchdog write() return value fixes
# 
# From: gleb@nbase.co.il (Gleb Natapov)
# 
# There is inconsistency in fops->write() implementation in different
# watchdog drivers.  Some of them return number of bytes written while others
# return 1.
# 
# I think the correct implementation should always return number of bytes
# written (we examine all the buffer after all) otherwise "echo V >
# /dev/watchdog" doesn't work as expected (it doesn't stop watchdog).
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.45
# [PATCH] Minor bug fixes to the compat layer
# 
# From: Arun Sharma <arun.sharma@intel.com>
# 
# - Several instances where we were using pid_t instead of uid_t
# 
# - If the caller passed a NULL `oldact' pointer into sys_sigprocmask then
#   don't try to write the old sigmask there.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.46
# [PATCH] ide-tape update
# 
# From: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>,
#       Stuart Hayes <stuart_hayes@dell.com>
# 
# - Check drive's write protect bit, try to return appropriate
#   errors when attempting to write a write-protected tape.
# 
# - Moved "idetape_read_position" call in idetape_chrdev_open
#   after the "wait_ready" call.
# 
# - Added IDETAPE_MEDIUM_PRESENT flag so driver would know
#   not to rewind tape after ejecting it.
# 
# - Fixed bug with ide_abort_pipeline (it was deleting stages
#   from tape->next_stage to end, instead of from
#   new_last_stage->next (tape->next_stage was set to NULL
#   by idetape_discard_read_pipeline before calling!).
# 
# - Made improvements to idetape_wait_ready.
# 
# - Added a few comments here and there.
# 
# - Made MTOFFL unlock tape drive door before attempting to eject.
# 
# - Added fixes to get Seagate STT3401A Travan working:
#   Handle drives that don't support 0-length reads/writes increased timeout
#   (retension takes ~10 minutes before irq is returned).
#   Fixed request mode page packet command byte 3.
# 
# Also remove code depending on NO_LONGER_REQUIRED to match 2.4.x (me).
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.47
# [PATCH] PIIX5 Doesn't work on IA64
# 
# From: Peter Chubb <peterc@gelato.unsw.edu.au>
# 
# The PIIX5 IDE controller on I2000 IA64 boxen using the 460GX chipset will
# hang on startup if an ordinary harddrive is plugged into it (it seems to
# workj for the LSI120 and the CDROM drives).
# 
# This is because the 460GX chipset contains a PCI expanssion bridge that
# works like the 450NX PXB, and has the same PCI ID (but a later revision).
# The PIIX driver, to work around interactions between PIIX4 and the 450NX
# PXB, tries to disable DMA.
# 
# Unfortunately, the way it tries to disable DMA doesn't work, and the higher
# layers think that DMA is still on, and so timeout waiting for DMA, and then
# hang on bootup.
# 
# A simple workaround is to tighten the check for the buggy chipset, as in
# the attached patch.  However, someone with more time (and who actually
# *understands* the IDE subsystem) needs to fix the real bug as well.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.48
# [PATCH] Can't disable IDE DMA
# 
# From: Peter Chubb <peterc@gelato.unsw.edu.au>
# 
# If you try to disable IDE DMA from Kconfig, you'll end up with an undefined
# symbol, ide_hwif_setup_dma().
# 
# The attached rather ugly patch fixes the problem by defining a dummy
# function.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.49
# [PATCH] IDE MMIO fix
# 
# From: Alan Cox <alan@redhat.com>
# 
# IDE core code had the mmio==2 (ioremap) mode supported but two small changes
# had been missed for ide-dma.c.  Without this fix mmio IDE controllers bomb if
# you have plenty of memory as it uses request_mem_region on an ioremap return.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.50
# [PATCH] IDE capability elevation fix
# 
# From: Alan Cox <alan@redhat.com>
# 
# Capability elevation bug in 2.6.0 IDE. Long fixed in 2.4.x, trivial to cure
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.51
# [PATCH] Add lib/parser.c kernel-doc
# 
# From: Will Dyson <will_dyson@pobox.com>
# 
# Add documentation and comments to lib/parser.c and include/linux/parser.h
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.52
# [PATCH] cpumask.h reorg
# 
# From: Paul Jackson <pj@sgi.com>
# 
# Push the cpumask implementation from linux/cpumask.h into asm/cpumask.h, so
# that ia64 can do special things without breaking sparc64.
# 
# 1) Each arch has its own include/asm-<arch>/cpumask.h file
# 
# 2) That arch-specific header file can include <asm-generic/cpumask.h>,
#    if it wants to make use of the generic cpumask implementation.
# 
# 3) Using code should continue to include linux/cpumask.h, which
#    in turn includes asm/cpumask.h.  Some common implementation
#    independent cpumask related items, such as the cpu_online_map,
#    are declared directly in linux/cpumask.h.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.53
# [PATCH] new /proc/irq cpumask format; consolidate cpumask display and input code
# 
# From: Paul Jackson <pj@sgi.com>
# 
# This patch is a followup to one from Bill Irwin.  On Nov
# 17, he had consolidated the half-dozen chunks of code
# that displayed cpumasks in /proc/irq/prof_cpu_mask and
# /proc/irq/<pid>/smp_affinity into a single routine, which he
# called format_cpumask().
# 
# I believe that Andrew Morton has accepted Bill's patch into
# his 2.6.0-test10-mm1 patch set as the "format_cpumask" patch.
# I hope that the following patch will replace Bill's patch.
# I look forward to Bill's feedback on this patch.
# 
# The following patch carries Bill's work further:
# 
#  1) It also consolidates the input side (write syscalls).
#  2) It adapts a new format, same on input and output.
#  3) The core routines work for any multi-word bitmask,
#     not just cpumasks.
#  4) The core routines avoid overrunning their output
#     buffers.
# 
# Note esp. for David Mosberger:
# 
#     The small patch I sent you and the linux-ia64 list
#     yesterday entitled: "check user access ok writing
#     /proc/irq/<pid>/smp_affinity" for arch ia64 only is
#     _separate_ from the following patch.  Neither presumes the
#     other.  However, they do collide on one line.  Last one in
#     is a Monkey's Uncle and will need an updated patch from me
#     (or otherwise need to resolve the one obvious collision).
# 
# Details of the following patch:
# 
# Both the display and input of cpumasks on 9 arch's are
# consolidated into a single pair of routines, which use the
# same format for input and output, as recommended by Tony
# Luck.  The two common routines work on any multi-word bitmask
# (array of unsigned longs).  A pair of trivial inline wrappers
# cpumask_snprintf() and cpumask_parse() hide this generality
# for the common case of cpumask input and output.
# 
# My real motivation for consolidating this code will become
# visible later - when I seek to add a nodemask_t that resembles
# cpumask_t (just a different length).  These common underlying
# routines will be used there as well, following up on a suggestion
# of Christoph Hellwig that I investigate implementing nodemask_t
# as an ADT sharing infrastructure with cpumask_t.  However, I
# believe that this patch stands on its own merit, consolidating
# a couple hundred lines of duplicated code, and making the
# cpumask display format usable on very large systems.
# 
# There are two exceptions to the consolidation - the alpha and
# sparc64 arch's manipulate bare unsigned longs, not cpumask_t's,
# on input (write syscall), and do stuff that was more funky than
# I could make sense of.  So the input side of these two arch's
# was left as-is.  I'd welcome someone with access to either of
# these systems to provide additional patches.
# 
# The new format consists of multiple 32 bit words, separated by
# commas, displayed and input in hex.  The following comment from
# this patch describes this format further:
# 
# * The ascii representation of multi-word bit masks displays each
# * 32bit word in hex (not zero filled), and for masks longer than
# * one word, uses a comma separator between words.  Words are
# * displayed in big-endian order most significant first.  And hex
# * digits within a word are also in big-endian order, of course.
# *
# * Examples:
# *   A mask with just bit 0 set displays as "1".
# *   A mask with just bit 127 set displays as "80000000,0,0,0".
# *   A mask with just bit 64 set displays as "1,0,0".
# *   A mask with bits 0, 1, 2, 4, 8, 16, 32 and 64 set displays
# *     as "1,1,10117".  The first "1" is for bit 64, the second
# *     for bit 32, the third for bit 16, and so forth, to the
# *     "7", which is for bits 2, 1 and 0.
# *   A mask with bits 32 through 39 set displays as "ff,0".
# 
# The essential reason for adding the comma breaks was to make
# the long masks from our (SGI's) big 512 CPU systems parsable by
# humans.  An unbroken string of 128 hex digits is pretty difficult
# to read.  For those who are compiling systems with CONFIG_NR_CPUS
# of 32 or less, there should be no visible change in format.
# 
# There are of course a thousand possible output formats that
# meet similar criteria.  If someone wants to lobby for and seek
# consensus behind another such format, that's fine.  Now that
# the format is consolidated into a single pair of routines,
# it should be easy to adapt whatever we choose.
# 
# Internally, the display routine uses snprintf to track the
# remaining space in its output buffer, to avoid the risk of
# overrunning it.
# 
# A new file, lib/mask.c, is added to the lib directory, to
# hold the two common routines.  I anticipate adding a few more
# common routines for generic support of multi-word bit masks to
# lib/mask.c, in subsequent patches that will add a nodemask_t
# type as an ADT sharing implementation with cpumask_t.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.54
# [PATCH] Add support for SGI's IOC4 chipset
# 
# From: Aniket Malatpure <aniket@sgi.com>
# 
# Adds support for the IOC4 IDE part.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.55
# [PATCH] Remove CLONE_FILES from init kernel thread creation
# 
# From: James Morris <jmorris@redhat.com>
# 
# The patch below removes the CLONE_FILES flag from the kernel_thread() call
# which starts init.
# 
# This is to prevent other kernel threads from sharing file descriptors
# opened by init (try 'lsof /dev/initctl' on a 2.6 system :-).
# 
# The reason this patch is being proposed is so that usermode helper apps
# launched via kernel threads (e.g. modprobe, hotplug) do not then inherit
# any such file descriptors.  This is not a problem in itself so far (other
# than being messy), but it is a problem for SELinux, which will otherwise
# need to grant access to /dev/initctl by modprobe and hotplug, a somewhat
# undesirable scenario.
# 
# As far as I can tell, there is no reason why init needs to be spawned with
# CLONE_FILES.  Please let me know if there are any objections to the
# change, which I would like to propose for 2.6.0+ as a cleanup.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.56
# [PATCH] pagefault accounting fix
# 
# From: William Lee Irwin III <wli@holomorphy.com>
# 
# Our accounting of minor faults versus major faults is currently quite wrong.
# 
# To fix it up we need to propagate the actual fault type back to the
# higher-level code.  Repurpose the currently-unused third arg to ->nopage
# for this.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.57
# [PATCH] fix oops in proc_kill_inodes()
# 
# proc_kill_inodes() walks the s_files list, playing with ->f_dentry.
# 
# But there is a window in which __fput() will leave a file on that list with a
# null f_dentry and f_vfsmnt.
# 
# I'm not sure it was ever confirmed that this fixed the reported oops, but it
# seems much better to set those fields to null _after_ removing the filp from
# the list.
# 
# (Actually, there's no need to null those pointers out at all.  But whatever;
# it caught a bug).
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.58
# [PATCH] remove lock_kernel() from proc_bus_pci_lseek()
# 
# Remove pointless lock_kernel(), replace with the standard-but-still-odd
# i_sem-based lseek locking.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.59
# [PATCH] remove include recursion from linux/pagemap.h
# 
# From: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
# 
# pagemap.h, do not include thyself.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.60
# [PATCH] ext3: bd_claim for journal device
# 
# From: Neil Brown <neilb@cse.unsw.edu.au>
# 
# Change ext3 to run bd_claim() against external journal devices. It is
# significant only for those who have ext3 journals on a separate device, and
# gets exclusive access to that device.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.61
# [PATCH] dm and bounce buffer panic fix
# 
# From: Mark Haverkamp <markh@osdl.org>
# 
# About three weeks ago markw at osdl posted a mail about a panic that he
# was seeing:
# 
# http://marc.theaimsgroup.com/?l=linux-kernel&m=106737176716474&w=2
# 
# I believe what is happening, is that the dm __clone_and_map function is
# generating bio structures with the bi_idx field non-zero.  When
# __blk_queue_bounce creates a new bio with bounce pages, it sets the bi_idx
# field to 0 rather than the bi_idx of the original.  This causes trouble since
# bv_page pointers will be dereferenced later that are zero.  The following
# uses the original bio structure's bi_idx in the new bio structure and in
# copy_to_high_bio_irq and bounce_end_io.
# 
# This has cleared up the panic when using the volume.
# 
# (acked by Joe Thornber)
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.62
# [PATCH] statfs64 fix
# 
# From: Andi Kleen <ak@muc.de>
# 
# It fixes the statfs64 emulation on x86-64.  The problem is that x86-64
# needs an __attribute__((aligned)) on the compat_statfs64 structure.  The
# conclusion last time this was discussed was that the structure should be
# duplicated.
# 
# Essentially it is the old shared structure copied to every user and x86-64
# uses __attribute__((packed)).
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.63
# [PATCH] Add a.out support for x86-64
# 
# From: Andi Kleen <ak@muc.de>
# 
# Add 32bit a.out support for x86-64.
# 
# Not exactly an important bug fix, but maybe it will help someone.  This
# should increase the current 98% compatibility to i386 to perhaps 98.1% @)
# 
# I tested an old a.out SuSE 4.2 installation in chroot and it worked.  It
# also ran some very old linux binaries from '92 found on ftp.funet.fi.  The
# only program that didn't was the SuSE a.out GNU emacs, but I was too lazy
# to track that down.  Core dumps are not supported.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.64
# [PATCH] Critical x86-64 IOMMU fixes for 2.6.0
# 
# From: Andi Kleen <ak@muc.de>
# 
# Please consider applying this patch, I would consider it critical for x86-64.
# 
# The 2.6.0 x86-64 IOMMU code unfortunately had a few problems, leading
# to non booting systems and in a few cases to data corruption.
# 
# It fixes a two serious bugs in handling special kinds of scatter gather
# lists in pci_map_sg.
# 
# AGP was completely broken with IOMMU because of a wrong #ifdef.
# Fix that.
# 
# One TLB flush optimization I did a long time ago seems to break on
# some 3ware boards (who require IOMMU because they don't support 64bit
# addresses).  The breakage lead to data corruption. This patch diables
# the optimization for now and fixes a potential SMP race in the flush
# code too. The TLB flush is done in a slower, but more reliable way
# now too.
# 
# This patch fixes them. Please consider applying, because some of these
# problems hit quite many people.
# 
# This also disables the IOMMU_DEBUG in the defconfig. A lot of people 
# were using the IOMMU when they didn't need to, which multiplied the
# problems.
# 
# IOMMU merge is disabled for now. This was an experimental optimization
# which helped with some block devices, but for production it seems to
# be better to disable it for now because there are some questionable
# corner cases when the IOMMU aperture fragments. The same is done
# for IOMMU SAC force, which was related to that. 
# 
# i386 has quite broken semantics for pci_alloc_consistent(). It uses
# the standard device DMA mask instead of the consistent mask. Make us
# bug-to-bug compatible here. This fixes problems with some sound
# drivers that don't support full 32bit addressing.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.65
# [PATCH] Fix CPUID compilation on x86-64
# 
# From: Andi Kleen <ak@muc.de>
# 
# A lot of people have run into this: the x86-64 cpuid driver didn't
# compile as module.
# 
# Using a kludge suggested by Sam Ravnsborg.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.66
# [PATCH] Fix sysrq-t on x86-64
# 
# From: Andi Kleen <ak@muc.de>
# 
# From Badari Pulavarty
# 
# Without this sysrq-t shows the same backtrace for all processes on x86-64
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.67
# [PATCH] Fix 32bit truncate on x86-64
# 
# From: Andi Kleen <ak@muc.de>
# 
# Another potential data corruption fix.
# 
# The 32bit truncate64 on x86-64 did silently truncate
# offsets >32bit. That broke mysql for example. Fix that.
# 
# From Chris Wilson
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.68
# [PATCH] Add more paranoid checking in x86-64 prefetch checker
# 
# From: Andi Kleen <ak@muc.de>
# 
# Make sure we never access anything in kernel mapping while
# doing the prefetch workaround checks on x86-64.
# 
# Originally suggested by Jamie Lockier.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.69
# [PATCH] Merge i386 fix for page fault to x86-64
# 
# From: Andi Kleen <ak@muc.de>
# 
# Merge the i386 fix for the page fault from Linus to x86-64
# (I'm not actually sure what it fixes, but if it's good for 32bit
# it is likely good for 64bit too)
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.70
# [PATCH] Signal fixes for x86-64
# 
# From: Andi Kleen <ak@muc.de>
# 
# Merge signal race fixes from i386 to x86-64.
# 
# Fix a bug in system call restart, noted by John Blackwood.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.71
# [PATCH] Don't panic in mpparse on x86-64
# 
# From: Andi Kleen <ak@muc.de>
# 
# Merge i386 fix. Don't panic in MP table parsing when the table is bad.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.72
# [PATCH] Fix 32bit siginfo problems on x86-64
# 
# From: Andi Kleen <ak@muc.de>
# 
# 32bit siginfo would sometimes get passed incorrectly on x86-64. This
# change fixes the conversion function to be a bit dumber, but more
# correct.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.73
# [PATCH] remove mm->swap_address
# 
# From: William Lee Irwin III <wli@holomorphy.com>
# 
# This field is 100% unused. This patch removes it.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.74
# [PATCH] sis comparison / assignment operator fix
# 
# From: Geoffrey Lee <glee@gnupilgrims.org>
# 
# This fixes what seems to be an obvious = vs == bug in the init301.c sis
# file.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.75
# [PATCH] Fix possible oops in vfs_quota_sync()
# 
# From: Jan Kara <jack@ucw.cz>
# 
# I'm sending you a fix of possible Oops in vfs_quota_sync().  Actually
# nobody has run into that I found it when I was looking through the code.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.76
# [PATCH] Ext3+quota deadlock fix
# 
# From: Jan Kara <jack@ucw.cz>
# 
# here's patch which should fix deadlock with quotas+ext3 reported in 2.4
# (the same problem existed in 2.6 but nobody found it).
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.77
# [PATCH] BINFMT_ELF=m is not an option
# 
# From: glee@gnupilgrims.org
# 
# I think Adrian had forgotten to update the help text.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.78
# [PATCH] md: Limit max_sectors on md when merge_bvec_fn defined on underlying device.
# 
# From: NeilBrown <neilb@cse.unsw.edu.au>
# 
# As no md personalities honour the merge_bvec_fn of underlying devices,
# we must make sure never to submit a bio larger than 1 page when a 
# merge_bvec_fn is defined.
# 
# raid5 already does this (it never submits bios larger than one page).
# With this patch, all other raid personalities limit their
# max_sectors when a merge_bvec_fn is present.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.79
# [PATCH] md: set ra_pages for raid0/raid5 devices properly.
# 
# From: NeilBrown <neilb@cse.unsw.edu.au>
# 
# stripe to be effective.  This patch sets ra_pages
# appropriately.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.80
# [PATCH] Erronous use of tick_usec in do_gettimeofday
# 
# From: Joe Korty <joe.korty@ccur.com>
# 
# do_gettimeofday() is using tick_usec which is defined in terms of USER_HZ
# not HZ.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.81
# [PATCH] fix ELF exec with huge bss
# 
# From: Roland McGrath <roland@redhat.com>
# 
# The following test program will crash every time if dynamically linked.
# I think this bites all 32-bit platforms, including 32-bit executables on
# 64-bit platforms that support them (and could in theory bite 64-bit
# platforms with bss sizes beyond the bounds of comprehension).
# 
# 	volatile char hugebss[1080000000];
# 	main() { printf("%p..%p\n", &hugebss[0], &hugebss[sizeof hugebss]);
# 	 system("cat /proc/$PPID/maps");
# 	 hugebss[sizeof hugebss - 1] = 1;
# 	 return 23;
# 	}
# 
# The problem is that the kernel maps ld.so at 0x40000000 or some such place,
# before it maps the bss.  Here the bss is so large that it overlaps and
# clobbers that mapping.  I've changed it to map the bss before it loads the
# interpreter, so that part of the address space is reserved before ld.so's
# mapping (which doesn't really care where it goes) is done.
# 
# This patch also adds error checking to the bss setup (and interpreter's bss
# setup).  With the aforementioned change but no error checking, "ulimit -v
# 65536; ./hugebss" will crash in the store after the `system' call, because
# the kernel will have failed to allocate the bss and ignored the error, so
# the program runs without those pages being mapped at all.  With this change
# it dies with a SIGKILL as for a failure to set up stack pages.  It might be
# even better to try to detect the case earlier so that execve can return an
# error before it has wiped out the address space.  But that seems like it
# would always be fragile and miss some corner cases, so I did not try to add
# such complexity.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.82
# [PATCH] O_DIRECT memory leak fix
# 
# From: Badari Pulavarty <pbadari@us.ibm.com>
# 
# I found the problem with O_DIRECT memory leak.
# 
# The problem is, when we are doing DIO read and crossed the end of file - we
# don't release referencess on all the pages we got from get_user_pages().
# (since it is a success case).
# 
# The fix is to call dio_cleanup() even for sucess cases.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.83
# [PATCH] JBD: b_committed_data locking fix
# 
# The locking rules say that b_committed_data is covered by
# jbd_lock_bh_state(), so implement that during the start of commit, while
# throwing away unused shadow buffers.
# 
# I don't expect that there is really a race here, but them's the rules.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.84
# [PATCH] dvb i2c timeout fix
# 
# From: Gerd Knorr <kraxel@bytesex.org>
# 
# Below is a ObviouslyCorrect[tm] patch which fixes the i2c bus timeout
# handling in the saa7146 driver.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.85
# [PATCH] more correct get_compat_timespec interface
# 
# From: Joe Korty <joe.korty@ccur.com>
# 
# The API for get_compat_timespec / put_compat_timespec is incorrect, it
# forces a caller with const args to (incorrectly) cast.  The posix message
# queue patch is one such caller.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.86
# [PATCH] MAINTAINERS vger.rutgers.edu
# 
# From: Geert Uytterhoeven <geert@linux-m68k.org>
# 
# Mailing lists at vger.rutgers.edu are obsolete, use vger.kernel.org
# instead.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.87
# [PATCH] list_empty_careful() documentation.
# 
# From: Ingo Molnar <mingo@elte.hu>
# 
# I'd also suggest the following patch below, to clarify the use of
# unsynchronized list_empty().  list_empty_careful() can only be safe in the
# very specific case of "one-shot" list entries which might be removed by
# another CPU.  (but nothing else can happen to them and this is their only
# final state.) list_empty_careful() is otherwise completely unsynchronized
# on both the compiler and CPU level and is not 'SMP safe' in any way.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.88
# [PATCH] Clear dirty bits etc on compound frees
# 
# From: "Martin J. Bligh" <mbligh@aracnet.com>,
#       Guillaume Morin <guillaume@morinfr.org>
# 
# We need to clear the software dirty bit on the tail pages of a compound page
# when freeing it up.
# 
# The tail pages can become dirtied by mmap'ing /dev/mem, and writing into
# any clustered page group (that a driver might have created or whatever).
# 
# Plus it's better to run all these pages through the free_pages_check checks
# anyway.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.89
# [PATCH] Allow unimap change on non fg console
# 
# From: Kurt Garloff <garloff@suse.de>
# 
# The comment in front of vt_ioctl() reads
# /*
#  * We handle the console-specific ioctl's here.  We allow the
#  * capability to modify any console, not just the fg_console.=20
#  */
# 
# Unfortunately, this does not apply to PIO_UNIMAPCLR, nor
# GIO_/PIO_UNIMAP. They always operate on the current foreground
# console, which is inconsistent at least. For most ioctls, the
# comment is applicable.
# 
# It also causes problems, as setfont can't do the full job on
# the non-fg consoles. (OK, our setfont is slightly changed to
# even try it ... as you know.)
# 
# The attached patch does fix this.
# 
# I have a similar patch for 2.4, but it never got merged :-(
# because not many people seem to care and I submitted in the middle
# of the 2.4 series ...
# It has been in UnitedLinux/SUSE kernels for ages, though.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.90
# [PATCH] fix outdated comment in jiffies.h
# 
# From: Tim Schmielau <tim@physik3.uni-rostock.de>
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.91
# [PATCH] slab reclaim accounting fix
# 
# From: Manfred Spraul <manfred@colorfullife.com>
# 
# slab_reclaim_pages is increased even if get_free_pages fails.  The attached
# patch moves the update to the correct position.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.92
# [PATCH] struct_cpy compilation warning
# 
# From: Ingo Molnar <mingo@elte.hu>
# 
# i've attached a minor fix for the 2.6.1 timeframe - we clearly meant
# __struct_cpy_bug().  Newest versions of gcc warn about this.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.93
# [PATCH] More MODULE_ALIASes
# 
# From: Rusty Russell <rusty@rustcorp.com.au>
#       Steve Youngs, Stephen Hemminger
# 
# Three more MODULE_ALIASes.  Trivial, but useful if people want things
# to "just work" in 2.6.0.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.94
# [PATCH] nr_slab accounting fix
# 
# From: Manfred Spraul <manfred@colorfullife.com>
# 
# if alloc_slabmgmt fails, then kmem_freepages() calls sub_page_state(),
# altough nr_slab was not yet increased.  The attached patch fixes that by
# moving the inc_page_state into kmem_getpages().
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.95
# [PATCH] isdn_ppp_ccp.c uses uninitialized spinlock
# 
# From: Tonnerre Anklin <thunder@keepsake.ch>
# 
# This spinlock was used uninitialized. Gave me a lot of warnings.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.96
# [PATCH] fix userspace compiles with nbd.h
# 
# From: Paul Clements <Paul.Clements@SteelEye.com>
# 
# A previous "cleanup" on the nbd.h header file broke userspace compiles.
# I've added an #ifdef __KERNEL__ so that userspace doesn't need to worry
# about the nbd_device structure, which is only used in-kernel. The patch
# allows me to compile my nbd tools with the 2.6 nbd.h.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.97
# [PATCH] DAC960 request queue per disk
# 
# From: Dave Olien <dmo@osdl.org>
# 
# Here's a patch that changes the DAC960 driver from having one request
# queue for ALL disks on the controller, to having a request queue for
# each logical disk.  This turns out to make little difference for deadline
# scheduler, nor for AS scheduler under light IO load.  But under AS
# scheduler with heavy IO, it makes about a 40% difference on dbt2
# workload.  Here are the measured numbers:
# 
# The 2.6.0-test11-D kernel version includes this mutli-queue patch to the
# DAC960 driver.
# 
# For non-cached dbt2 workload  (heavy IO load)
# 
# Scheduler	kernel/driver	NOTPM(bigger is better)
# AS		2.6.0-test11-D  1598
# AS		2.6.0-test11     973
# deadline	2.6.0-test11    1640
# deadline	2.6.0-test11-D  1645
# 
# For cached dbt2 workload (lighter IO load)
# 
# AS		2.6.0-test11-D  4993
# AS		2.6.-test6-mm4  4976, 4890, 4972
# deadline	2.6.0-test11-D  4998
# 
# Can this be included in 2.6.0?  I know it's not a "critical patch"
# in the sense that something won't work without it.  On the other hand,
# the change is isolated to a driver.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.98
# [PATCH] synchronize use of mm->core_waiters
# 
# From: Roland McGrath <roland@redhat.com>
# 
# I believe I have identified a failure mode that Linus saw a couple weeks
# back when tracking down some other fork/exit sorts of races.  We saw this
# come up on rare occasions with the RHEL3 kernel's backport of the new code
# (while trying to track down other race failure modes we have yet to fix, sigh).
# 
# I am talking about the following scenario:
# 
# > Btw, even with the fix, doing a "while : ; ./crash t 10 ; done" will
# > eventually result in a stuck process:
# >
# > 	 1415 tty1     D      0:00 ./crash
# >
# > This is some kind of deadlock: most of the fifty threads are in "D"
# > state, with a trace something like
# >
# > 	 [<c011fbe3>] schedule+0x360/0x7f8
# > 	 [<c0120539>] wait_for_completion+0xd4/0x1c3
# > 	 [<c0128c9e>] do_exit+0x627/0x6a4
# > 	 [<c0128ddd>] do_group_exit+0x3d/0x177
# > 	 [<c0130c13>] dequeue_signal+0x2d/0x84
# > 	 [<c0133911>] get_signal_to_deliver+0x390/0x575
# > 	 [<c010a541>] do_signal+0x6c/0xf1
# > 	 [<c01200be>] default_wake_function+0x0/0x12
# > 	 [<c01200be>] default_wake_function+0x0/0x12
# > 	 [<c013d50f>] do_futex+0x6d/0x7d
# > 	 [<c013d635>] sys_futex+0x116/0x12f
# > 	 [<c010a601>] do_notify_resume+0x3b/0x3d
# > 	 [<c010a82e>] work_notifysig+0x13/0x15
# >
# > except for one that is trying to core-dump:
# >
# > 	 [<c0120539>] wait_for_completion+0xd4/0x1c3
# > 	 [<c01200be>] default_wake_function+0x0/0x12
# > 	 [<c01200be>] default_wake_function+0x0/0x12
# > 	 [<c02101aa>] rwsem_wake+0x86/0x12d
# > 	 [<c01738af>] coredump_wait+0xa8/0xaa
# > 	 [<c0173a26>] do_coredump+0x175/0x26c
# >
# > and three that are just doing a regular "exit()" system call:
# >
# > 	 [<c011fbe3>] schedule+0x360/0x7f8
# > 	 [<c011e19a>] recalc_task_prio+0x90/0x1aa
# > 	 [<c0120539>] wait_for_completion+0xd4/0x1c3
# > 	 [<c01200be>] default_wake_function+0x0/0x12
# > 	 [<c01200be>] default_wake_function+0x0/0x12
# > 	 [<c0210207>] rwsem_wake+0xe3/0x12d
# > 	 [<c0128c9e>] do_exit+0x627/0x6a4
# > 	 [<c0128d4d>] next_thread+0x0/0x53
# > 	 [<c010a7e3>] syscall_call+0x7/0xb
# >
# > However, the rest of the system is totally unaffected by this deadlock:
# > it's only deadlocked withing the thread group itself, nobody else cares.
# 
# What happens here is a race between an exiting thread checking
# mm->core_waiters in __exit_mm, and the thread taking the core-dump signal
# (in coredump_wait) examining the first thread's ->mm pointer and
# incrementing mm->core_waiters to account for it.  There is no
# synchronization at all in __exit_mm's use of mm->core_waiters.  If the
# coredump_wait thread reads tsk->mm when tsk is in __exit_mm between
# checking mm->core_waiters and clearing tsk->mm, then it will increment
# mm->core_waiters and the total count will later exceed the number of
# threads that will ever decrement it and synchronize.  Hence it blocks forever.
# 
# The following patch fixes the problem by using mm->mmap_sem in __exit_mm.
# The read lock must be held around checking mm->core_waiters and clearing
# tsk->mm so that coredump_wait (which gets the write lock) cannot come in
# between and do bogus bookkeeping.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.99
# [PATCH] Rename legacy_bus to platform_bus
# 
# From: Jeff Garzik <jgarzik@pobox.com>
# 
# I've seen this patch floating around.  Not sure the origin, but it's 
# surfaced on lkml and also when I was poking around handhelds.org CVS for
# iPAQ patches:  on non-PCs, particularly system-on-chip devices but not
# just there, you have a custom "platform bus" that is the root of pretty 
# much all other devices and buses.
# 
# It's something I wanted to make sure people didn't forget; to make sure 
# the legacy_bus didn't get "legacied out of existence."  ;-)
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.100
# [PATCH] Fix ioctl related warnings in userspace
# 
# From: Johannes Stezenbach <js@convergence.de>
# 
# the patch below removes warnings like:
# 
#   warning: signed and unsigned type in conditional expression
# 
# when compiling userspace applications against a glibc built with 2.6 kernel
# headers (like on Debian unstable).
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.101
# [PATCH] Winbond w83627hf driver
# 
# From: Pádraig Brady <P@draigBrady.com>
# 
# Watchdog driver for the Winbond w83627hf which is on the last 3 motherboards
# I got here for test (tyan, advantech, force).
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.102
# [PATCH] update sn2 MAINTAINERS file entry
# 
# From: jbarnes@sgi.com (Jesse Barnes)
# 
# Just a quick patch to fix MAINTAINERS for sn2.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.103
# [PATCH] SCC warning fix
# 
# From: Alan Cox <alan@redhat.com>
# 
# Just a warning fix and behaviour tidy. Changing the kiss.mintime variable isn't
# going to work as its exposed to user space
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.104
# [PATCH] cycx_drv warning fix
# 
# From: Alan Cox <alan@redhat.com>
# 
# Type errors, just fixes a warning
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.105
# [PATCH] VIA audio fixes
# 
# From: Alan Cox <alan@redhat.com>
# 
# VIA audio had a fix from 2.4 missing so any user could spam the system log. Also
# include a fix for a bug which is pending 2.4 fixing too and causes a bogus
# warning to be displayed on close of audio file handle.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.106
# [PATCH] Kernel Locking Documentation update
# 
# From: Rusty Russell <rusty@rustcorp.com.au>
# 
# Entirely revised, and largely rewritten.  Has a continuing example now, which
# I think makes things clearer.  Also covers Read Copy Update.  This version
# further deprecates rwlock_t, shuffles sections for better organization.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.107
# [PATCH] name_to_dev_t() fix
# 
# From: viro@parcelfarce.linux.theplanet.co.uk
# 
# When we register disks, we mangle the disk names that contain slashes (e.g.
# cciss/c0d0) replacing them with '!' in corresponding sysfs names.  So
# name_to_dev_t() should mangle the name in the same way before looking for it
# in /sys/block.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.108
# [PATCH] dm: fix block device resizing
# 
# From: Joe Thornber <thornber@sistina.com>
# 
# When setting the size of a Device-Mapper device in the gendisk entry, also
# try to set the size of the corresponding block_device entry's inode.  This is
# necessary to allow online device/filesystem resizing to work correctly. 
# [Kevin Corry]
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.109
# [PATCH] dm: remove dynamic table resizing
# 
# From: Joe Thornber <thornber@sistina.com>
# 
# The dm table size is always known in advance, so we can specify it in
# dm_table_create(), rather than relying on dynamic resizing.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.110
# [PATCH] dm: make v4 of the ioctl interface the default
# 
# From: Joe Thornber <thornber@sistina.com>
# 
# Make the version-4 ioctl interface the default kernel configuration option.
# If you have out of date tools you will need to use the v1 interface.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.111
# [PATCH] dm: set io restriction defaults
# 
# From: Joe Thornber <thornber@sistina.com>
# 
# Make sure that a target has a sensible set of default io restrictions.
# --------------------------------------------
# 03/12/29	akpm@osdl.org	1.1474.48.112
# [PATCH] dm: dm_table_event() sleep on spinlock bug
# 
# From: Joe Thornber <thornber@sistina.com>
# 
# You can no longer call dm_table_event() from interrupt context.
# --------------------------------------------
# 03/12/29	torvalds@home.osdl.org	1.1474.48.113
# Merge bk://kernel.bkbits.net/davem/net-2.6
# into home.osdl.org:/home/torvalds/v2.5/linux
# --------------------------------------------
# 03/12/29	torvalds@home.osdl.org	1.1474.48.114
# Merge bk://bk.arm.linux.org.uk/linux-2.6-serial
# into home.osdl.org:/home/torvalds/v2.5/linux
# --------------------------------------------
# 03/12/29	torvalds@home.osdl.org	1.1474.1.56
# Merge ia64 conflicts
# --------------------------------------------
# 03/12/29	torvalds@home.osdl.org	1.1474.1.57
# Merge bk://gkernel.bkbits.net/net-drivers-2.5
# into home.osdl.org:/home/torvalds/v2.5/linux
# --------------------------------------------
# 03/12/30	davem@nuts.ninka.net	1.1474.1.58
# Merge nuts.ninka.net:/disk1/davem/BK/sparcwork-2.6
# into nuts.ninka.net:/disk1/davem/BK/sparc-2.6
# --------------------------------------------
# 03/12/30	davem@nuts.ninka.net	1.1474.49.1
# Merge nuts.ninka.net:/disk1/davem/BK/network-2.6
# into nuts.ninka.net:/disk1/davem/BK/net-2.6
# --------------------------------------------
# 03/12/30	davem@nuts.ninka.net	1.1474.49.2
# Merge nuts.ninka.net:/disk1/davem/BK/net-2.6.1
# into nuts.ninka.net:/disk1/davem/BK/net-2.6
# --------------------------------------------
# 03/12/30	davem@nuts.ninka.net	1.1474.1.59
# [SPARC64]: Fix build after show_interrupts() changes.
# --------------------------------------------
# 03/12/30	davem@nuts.ninka.net	1.1474.1.60
# [SPARC32]: Fix build after show_interrupts() changes.
# --------------------------------------------
# 03/12/30	bcollins@debian.org	1.1474.1.61
# Merge http://linux.bkbits.net/linux-2.5
# into debian.org:/usr/src/kernel/linux-2.6
# --------------------------------------------
# 03/12/30	bcollins@debian.org	1.1474.1.62
# MAINTAINERS:
#   [IEEE1394]: Update maintainer info
# --------------------------------------------
# 03/12/30	bcollins@debian.org	1.1474.1.63
# video1394.c:
#   [IEEE1394]
#   Patch from Damien Douxchamps to fix video1394 when image size is less than
#   page size.
# --------------------------------------------
# 03/12/30	amir.noam@intel.com	1.1592
# [netdrvr bonding] fix build breakage
# --------------------------------------------
#
diff -Nru a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c
--- a/drivers/net/bonding/bond_main.c	Wed Dec 31 10:13:11 2003
+++ b/drivers/net/bonding/bond_main.c	Wed Dec 31 10:13:11 2003
@@ -1657,8 +1657,8 @@
 		bond_change_active_slave(bond, NULL);
 	}
 
-	if ((bond->params.mode == BOND_MODE_TLB) ||
-	    (bond->params.mode == BOND_MODE_ALB)) {
+	if ((bond_mode == BOND_MODE_TLB) ||
+	    (bond_mode == BOND_MODE_ALB)) {
 		/* Must be called only after the slave has been
 		 * detached from the list and the curr_active_slave
 		 * has been cleared (if our_slave == old_current),

           reply	other threads:[~2003-12-31 15:15 UTC|newest]

Thread overview: expand[flat|nested]  mbox.gz  Atom feed
 [parent not found: <6BE35B06920A7841A6F6AFFC7303CE5EB84C@mbi-10.mbi.ufl.edu>]

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=3FF2E796.5060600@pobox.com \
    --to=jgarzik@pobox.com \
    --cc=akpm@osdl.org \
    --cc=jka@mbi.ufl.edu \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    /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;
as well as URLs for NNTP newsgroup(s).