Linux Headquarters
[ Register ]
[ About us ] [ Home Page ]

Advertisement
[ Kernel ] [ Documentation ] [ Links ] [ Books ]

Advertisement

Change log for patch v2.5.70

Summary of changes from v2.5.69 to v2.5.70
============================================

<torben.mathiasen@hp.com>
   [PATCH] PCI Hotplug: cpqphp 66/100/133MHz PCI-X support
   
   After being put on hold for a while (needed fixes to CCISS driver, etc) I
   attached a patch that adds pci-x support to the cpqphp driver in 2.5.65.
   
   Changes:
      Adds 66/100/133MHz PCI-X support.
      Adds support for dynamically chaning frequency and mode.
      Changes code to also blink the power LED when powering down.
      Uses the IRQ from PCI config space if the ROM resource table doesn't
      provide one (would previously use the same interrupt as the hotplug
      controller which would lead to bad things when trying to update routing
      tables). Dan Zink should have the credit for this fix.
      Changes find_slot() to cpqhp_find_slot().
      Uses sysfs to display speed/freq.
      Some documentation updates.

<hannal@us.ibm.com>
   [PATCH] patch: remove unnecessary proc stuff from controller struct

<rusty@linux.co.intel.com>
   [PATCH] PCI Hotplug: kernel-api docbook fix for now non-existant PCI hotplug
   
   Here is a trivial documentation fix for some of recent PCI hotplug changes
   that enables 'make htmldocs' to complete.

<bergner@cannon.rchland.ibm.com>
   Forward port of 2.4 ppc64 signal changes.

<bergner@cannon.rchland.ibm.com>
   Forward port of 2.4 ppc64 /proc/ppc64/systemcfg changes

<bergner@cannon.rchland.ibm.com>
   Catch illegal FP use within the kernel since it can cause data integrity errors in userland code.

<tinglett@vnet.ibm.com>
   fix cpuid to physical id needed in 2.5

<tinglett@vnet.ibm.com>
   Need to turn on RI immediately after we get control from firmware as
   well as when secondary cpus are started.

<anton@samba.org>
   ppc64: add autofs ioctl and clean up a prototype

<anton@samba.org>
   ppc64: xics cleanup

<willschm@us.ibm.com>
   add #ifdef CONFIG_XMON around a XMON variable reference

<anton@samba.org>
   ppc64: clean up some cpu feature checks

<willschm@us.ibm.com>
   ppc64: add spinlock to chrp_progress

<anton@samba.org>
   ppc64: fix NR_syscalls slip up

<anton@samba.org>
   ppc64: fix for recent module changes

<jgrimm@touki.austin.ibm.com>
   [SCTP] Optimize SACK generation.
   
   Wanted to try out profiling, so brought up oprofile.  Very 
   suprising result of sctp_tsnmap_find_gap_ack() being one of the
   hot functions.  This should not be!  Short-circuit by not even 
   calling if !has_gap.

<anton@samba.org>
   ppc64: return ENOSYS for unknown IPC call

<willschm@us.ibm.com>
   ppc64: restore hex progress code

<anton@samba.org>
   ppc64: Fix for outside of range sensor states, from John Rose

<jgrimm@touki.austin.ibm.com>
   [SCTP] Use Crypto API
   
   Rip out our own HMAC-SHA1 and replace with crypto API.  
   Can now choose hmac-sha1, hmac-md5, or none with regards to what
   HMAC to use for cookie echo verification.

<jgrimm@touki.austin.ibm.com>
   [SCTP] Add wrappers for sctp with no crypto support.

<gibbs@overdrive.btc.adaptec.com>
   Change the callback argument for aic brace option parsing to u_long
   to avoid casting problems with different architectures.

<gibbs@overdrive.btc.adaptec.com>
   Aic79xx Driver Update (version 1.3.6)
    o Correct bus hang on SE->LVD/LVD->SE tranceiver changes
    o Close a race condition in handling bad scsi status that could
      allow the driver to modify the waiting for selection queue while
      selections were enabled.
    o Perform an audit on use of del_timer() and switch to del_timer_sync()
      where appropriate.
    o Remove the reboot notifier hook which is unused in 2.5.X.
    o Correct some driver unload bugs.

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx Driver Update (version 6.2.32)
    o Perform an audit on use of del_timer() and switch to del_timer_sync()
      where appropriate.
    o Remove the reboot notifier hook which is unused in 2.5.X.
    o Correct some driver unload bugs.

<jgrimm@touki.austin.ibm.com>
   [SCTP] Various code cleanup.
   
   More typedef removals and naming consistency.
   Remove sctp_association_t, sctp_endpoint_t, & sctp_endpoint_common_t.

<anton@samba.org>
   ppc64: segment misses from userspace must pass through do_page_fault

<davidm@tiger.hpl.hp.com>
   ia64: Fix typos/whitespace related to serial code.

<jgrimm@touki.austin.ibm.com>
   [SCTP] Enable SctpChecksumErrors stat

<gibbs@overdrive.btc.adaptec.com>
   Aic79xx Driver Update
    o Correct failed-wait recovery code so that the controller's registers
      will not be accessed without pausing the controller first.

<jgrimm@touki.austin.ibm.com>
   [SCTP] Add a generic csum_copy for sctp.
   
   Do the sctp checksum while copying. 

<jgrimm@touki.austin.ibm.com>
   [SCTP] short-circuit reassembly & ordering for best case.
   
   Short circuit normal case.  First check if the chunk belongs at the 
   end of the queue.  If so, don't bother walking the entire list, just 
   just put at end. 

<davidm@tiger.hpl.hp.com>
   ia64: Patch by Alex Williamson: forward port of the 2.4 sba_iommu.

<davidm@tiger.hpl.hp.com>
   ia64: Merge Alex Williamson's sba_iommu patch.
      Various small 2.5.67 fixes.

<davidm@tiger.hpl.hp.com>
   ia64: Make sba_iommu get detected early enough again.

<anton@samba.org>
   ppc64: use panic_on_oops sysctl

<anton@samba.org>
   ppc64: use dma-window from deepest device tree node, from Dave Engebretsen

<sri@us.ibm.com>
   [SCTP] getsockname()/getpeername() support for TCP-style sockets.

<jgrimm@touki.austin.ibm.com>
   [SCTP]  Allow private to global association.
   
   The sctp scoping rules try to prevent accidentally sending
   non-routable addresses to a peer as alternate addresses.  However,
   the current implementation is way too strict in that one can't
   even try to send from a private address to a global address (a
   pretty common real world setup with host behind NAT) even 
   when that's the _only_ address available.
   
   If we find no addresses available, try looking for a private address 
   to send with, as a fallback.  
   Additionally, if we are sending with only a single address, don't
   bother embedding this address in the INIT/INIT-ACK chunk.  

<jgrimm@touki.austin.ibm.com>
   [SCTP] Use GFP_ATOMIC, while we holding the local_addr_lock.

<alex_williamson@hp.com>
   [PATCH] ia64: fix GENERIC build
   
   This fixes a couple problems with the generic target in the latest
   2.5.67 kernel.  First is simply a fix for the addition of readX in
   the machvec.  The second gets things to link in roughly the same order
   when using a generic vs zx1 flavor.  With the current code, sba_init()
   is called in the right place when using a zx1 flavor kernel, but
   happens way too early on a generic kernel.

<alex_williamson@hp.com>
   [PATCH] ia64: small ACPI fix
   
   This fix is needed to boot on Intel-based machines.

<jgrimm@touki.austin.ibm.com>
   [SCTP] Fix ipv6 addressing bug.
   
   We are incorrectly using the rt6->rt6i_dst as our destination
   address, resulting in bogus dst address when requiring a gateway. 

<davidm@tiger.hpl.hp.com>
   ia64: Update platform INIT handler to print a backtrace.

<kochi@hpc.bs1.fc.nec.co.jp>
   [PATCH] ia64: don't waste irq vectors
   
   This patch fixes waste of interrupt vector pool by not
   allocating an interrupt vector to a GSI which has no corresponding
   IO SAPIC.

<davidm@tiger.hpl.hp.com>
   ia64: Export hp_acpi_csr_space() for modules.

<davidm@tiger.hpl.hp.com>
   ia64: Consolidate backtrace printing in a single routine (ia64_do_show_stack()).

<davidm@tiger.hpl.hp.com>
   ia64: Fix _raw_read_lock() to not switch text sections.  Tidy it up with the
      help of ia64_fetchadd() macro.  Ditto for _raw_read_unlock().

<mochel@osdl.org>
   Driver model: doc updates.
   
   From Geert Uytterhoeven

<mochel@osdl.org>
   kobject: Add better debugging for failed registrations.
   
   From Steve Hemminger (shemminger@osdl.org)

<Matt_Domsch@dell.com>
   Device Driver Dynamic PCI Device IDs
   
   Provides a mechanism to pass new PCI device IDs to device drivers
   at runtime, rather than relying only on a static compiled-in list
   of supported IDs.
   
   For each driver which has a pci_driver->probe routine, two things
   are added: a probe_it file, and a dynamic_id directory.  In the
   dynamic_id directory is a new file, new_id.
   
   /sys/bus/pci/drivers/e100
   |-- dynamic_id
   |   `-- new_id
   `-- probe_it
   
   One may read the new_id file, which by default returns:
   $ cat new_id
   echo vendor device subvendor subdevice class classmask
   where each field is a 32-bit value in ABCD (hex) format (no leading 0x).
   Pass only as many fields as you need to override the defaults below.
   Default vendor, device, subvendor, and subdevice fields
   are set to FFFFFFFF (PCI_ANY_ID).
   Default class and classmask fields are set to 0.
   
   One may write new PCI device IDs into the new_id file:
   echo "8086 1229" > new_id
   
   which will cause a new device ID (sysfs name 0) to be added to the driver.
   
   /sys/bus/pci/drivers/e100
   |-- dynamic_id
   |   |-- 0
   |   `-- new_id
   `-- probe_it
   
   $ cat 0
   00008086 00001229 ffffffff ffffffff 00000000 00000000
   
   One can then cause the driver to probe for devices again.
   echo 1 > probe_it
   
   Individual device drivers may override the behavior of the new_id
   file, for instance, if they need to also pass driver-specific
   information.  Likewise, reading the individual dynamic ID files
   can be overridden by the driver.
   
   This also adds an existance test field to struct driver_attribute,
   necessary because we only want the probe_it file to appear iff
   struct pci_driver->probe is non-NULL.
   
   The device probing routines in pci-driver.c are enhanced to scan
   first the static list of IDs, then the dynamic list (if any).
   

<mochel@osdl.org>
   sysfs: Rewrite binary file handling. 
   
   From Matthew Wilcox.
   
    - Remove sysfs_bin_buffer.  It's a security hole.
    - Remove checks for permissions; the VFS does that.
    - Validate offset & count at the top level.
    - Allow lower levels to return less data than was asked for.
    - Allocate buffer at open & free it at close, not on each read/write.
   

<sri@us.ibm.com>
   [SCTP] shutdown() support for TCP-style sockets.

<davidm@tiger.hpl.hp.com>
   ia64: Patch by Arun Sharma: In brl_emu.c, a 64 bit value was being assigned to an
      int.

<arun.sharma@intel.com>
   [PATCH] ia64: make x86 shared programs work again
   
   > It looks like dynamic x86 binaries have a problem once again (or
   > still).  If I try to run any shared x86 binaries, I get:
   > 
   >       $ ls.x86
   >       ls.x86: error while loading shared libraries: librt.so.1: cannot map zero-fill pages: Error 14
   > 
   > Would someone take a look?
   
   We saw this behavior with 2.5.59 also. The attached work around should
   take care of the problem temporarily. Last time this happened, IA-32
   programs were doing mmaps, whose size was one page bigger than the
   size of the underlying file (even after rounding up the file size).
   
   I never got a chance to figure out why glibc was doing mmaps with the
   wrong size. Also, I failed to reproduce the problem with a more
   recent (RH 8.0) glibc.
   
   Which version of IA-32 glibc were you using ?

<jgrimm@touki.austin.ibm.com>
   [SCTP]  More typedef removals.
   
   Continue typedef removal.  Also, change sctp_chunk.num_times_sent
   counter to a resent flag.  There was a rather obscure, unlikely,
   and in the end fairly benign bug sitting there if num_times_sent 
   wrapped.  However, there's no need to keep this counter, as its
   use was really just to know if we'd ever resent this chunk. 

<bjorn_helgaas@hp.com>
   [PATCH] ia64: sba_iommu workaround removal
   
   This removes a workaround for some broken firmware that was
   never released.

<bjorn_helgaas@hp.com>
   [PATCH] ia64: sba_iommu vendor/function for unknown IOCs
   
   Include id when encountering unknown IOC.

<bjorn_helgaas@hp.com>
   [PATCH] ia64: sba_iommu trivial cleanup
   
   This is mostly trivial whitespace and printk text tweaks.  I did add the
   segment number to a printk that previously just had the bus.

<anton@samba.org>
   ppc64: chrp_progress() updates from Olof Johansson

<anton@samba.org>
   ppc64: ethtool -e support, from Olof Johansson

<sri@us.ibm.com>
   [SCTP] Handle accept() of a CLOSED association.

<jgrimm@touki.austin.ibm.com>
   [SCTP]  Track partially acked message for SEND_FAILED.
   
   For SEND_FAILED support, we need to keep around data chunk fragments
   that have been acked, where other fragments of the same message
   have not.  With this, Ardelle should be able to finish up the
   SEND_FAILED support. 

<jgrimm@touki.austin.ibm.com>
   [SCTP] Fix sctp_sendmsg error path when associate fails.

<sri@us.ibm.com>
   [SCTP] Return a readable event when polling on a TCP-style listening
          socket with a non-empty accept queue.

<jgrimm@touki.austin.ibm.com>
   [SCTP] Add some macros to clean up code.
   
   sctp_state(asoc, STATE)  // Is asoc in this state?
   sctp_style(sk, STYLE)    // Is sock this style?
   sctp_sstate(sk, SS_STATE) // Is sock in this state?

<jgrimm@touki.austin.ibm.com>
   [SCTP]  Add SCTP_MAXSEG sockopt.
   
   We'll fragment (if fragmentation not disabled) to the min of maxseg
   or PMTU allowance.  

<jgrimm@jgrimm.(none)>
   [SCTP]  Add SFR-CACC support.  (Ardelle.Fan)
   
   Submitted by Ardelle Fan.  Implementation of Split Fast Retransmit -
   Changeover Aware Congestion Control.  Certain conditions involving
   multihoming changover can result in TCP-unfriendliness.  This
   implements the IETF proposed method of dealing with this corner
   case.

<anton@samba.org>
   ppc64: update ppc64 to new IRQ API from Andrew Morton

<anton@samba.org>
   ppc64: fix some compile warnings, from Andrew Morton

<anton@samba.org>
   ppc64: Fix some things that got backed out in the systemcfg merge

<anton@samba.org>
   ppc64: Add loop_get_status64/loop_set_status64

<davej@codemonkey.org.uk>
   [CPUFREQ] Fix powernow-k7 hang.
   Some laptops don't like jumping from (for eg) 800MHz->1200MHz, but
   will happily go from 800->1000->1200. The problem is caused by us
   changing the FID and the VID at the same time. The spec says we have
   to change them seperately. This actually buys us something extra anyway,
   as we can now set the FID lazily as well as the VID.

<jgrimm@touki.austin.ibm.com>
   [SCTP] Fix regression in mark_missing.  (Ardelle.Fan)
   
   Followup patch by Ardelle. 

<anton@samba.org>
   ppc64: Andrew Morton is picking on me

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx and Aic79xx driver Update
   o Avoid pre-2.5.X mid-layer deadlock due to SCSI malloc fragmentation
   
   For pre-2.5.X kernels, attempt to calculate a safe value
   for our S/G list length.  In these kernels, the midlayer
   allocates an S/G array dynamically when a command is issued
   using SCSI malloc.  This list, which is in an OS dependent
   format that must later be copied to our private S/G list, is
   sized to house just the number of segments needed for the
   current transfer.  Since the code that sizes the SCSI malloc
   pool does not take into consideration fragmentation of the
   pool, executing transactions numbering just a fraction of our
   concurrent transaction limit with list lengths aproaching
   AH?_NSEG in length will quickly depleat the SCSI malloc pool
   of usable space.
   
   Unfortunately, the mid-layer does not properly handle this
   scsi malloc failure.  In kernels prior to 2.4.20, should
   the device that experienced the malloc failure be idle and
   never have any new I/O initiated (block queue is not "kicked"),
   the process will hang indefinitely.  In 2.4.20 and beyond,
   the disk experiencing the failure is marked as a "starved
   device", but this only helps if I/O is initiated to or completes
   on that HBA.  If the failure was induced by another HBA, and
   no other I/O is pending on the HBA and no new transactions are
   queued, we are still succeptible to the hang.  (Also note that
   many 2.4.X kernels do not properly lock the "some_device_starved"
   and "device_starved" fields calling into question their overall
   effectiveness).
   
   By sizing our S/G list to avoid SCSI malloc pool fragmentation,
   we will hopefully avoid this deadlock at least for configurations
   where our own HBAs are the only ones using the SCSI subsystem.

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx and Aic79xx Driver Update
    o Correct channel information in our /proc output.

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx and Aic79xx driver updates
    o Work around peculiarities in the scan_scsis routines
      that could, due to having duplicate devices on our
      host's device list, cause tagged queing to be disabled
      for devices added via /proc.

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx and Aic79xx driver updates
    o Remove extra complexity and code duplication in processing
      the completeq now that the completeq can be run while holding
      both the ah?_lock and the done_lock.

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx and Aic79xx driver Update
    o Fix style nits.

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx and Aic79xx Driver Updates
    o Correct type safty of option parsing logic
    o Make option toggling work correctly
    o Add "probe_eisa_vlb" as an alias for the "no_probe" option so
      that there is a clearly defined name associated with the command
      line feature that allows eisa_vlb probes to be enabled/disabled
      in the aic7xxx driver.
    o PCI parity error checking defaults to being enabled.

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx Driver Update
    o Auto disable PCI parity error reporting after 10 parity errors
      are observed.  The user is given a loud warning message telling
      them that eiter a device plugged into their motherboard or their
      motherboard is not very healthy.

<gibbs@overdrive.btc.adaptec.com>
   Aic79xx Driver Update
    o Perform a few firmware optimizations
    o Correct the packetized status handler so that
      it can handle CRC errors during status data packets.

<agrover@groveronline.com>
   ACPI: Update to 20030424
   - Remove an unused parameter from lowlevel read/write functions
   - FADT initialization cleanups

<gibbs@overdrive.btc.adaptec.com>
   Aic79xx Driver Update
    o Correct "Unexpected PKT Busfree" error observed under high
      tag loads.

<gibbs@overdrive.btc.adaptec.com>
   Aic79xx Driver Update
    o Revert ahd_pause_and_flushwork() behavior so that ENSELO can
      be cleared.  This makes ahd_pause_and_flushwork() more effective
      when the bus is hung.

<gibbs@overdrive.btc.adaptec.com>
   Aic79xx Driver Upate
    o Switch to handling bad SCSI status as a sequencer interrupt
      instead of having the kernel proccess these failures via
      the completion queue.  This is done because:
   
       - The old scheme required us to pause the sequencer and clear
         critical sections for each SCB.  It seems that these pause
         actions, if coincident with a sequencer FIFO interrupt, would
         result in a FIFO interrupt getting lost or directing to the
         wrong FIFO.  This caused hangs when the driver was stressed
         under high "queue full" loads.
       - The completion code assumed that it was always called with
         the sequencer running.  This may not be the case in timeout
         processing where completions occur manually via
         ahd_pause_and_flushwork().
       - With this scheme, the extra expense of clearing critical
         sections is avoided since the sequencer will only self pause
         once all pending selections have cleared and it is not in
         a critical section.

<anton@samba.org>
   ppc64: remove numa_node_exists, from Martin Bligh

<gibbs@overdrive.btc.adaptec.com>
   aic7xxx_osm.h, aic7xxx_osm.c, aic79xx_osm.h, aic79xx_osm.c:
     Remove pre-2.2.X kernel support. 

<anton@samba.org>
   ppc64: clear up the cpu<-> node mappings, and cache them, from Matt Dobson

<gibbs@overdrive.btc.adaptec.com>
   Aic79xx and Aic7xxx driver Update
    o Fix build on 2.5.X

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx and Aic79xx Driver Updates
    o Adapt to new IRQ handler declaration/behavior for 2.5.X

<jgrimm@touki.austin.ibm.com>
   [SCTP] Control chunk bundling.
   
   Control chunks should be bundled (implementor's guide advises
   specifically of case were ERROR should be bundled with CE to avoid
   race condition.   Patch introduces a outq_cork/outq_uncork to
   immediate transferral of control chunks and then release to the
   packet bundling code. 

<davej@tetrachloride.(none)>
   [AGPGART] Hammer GART can use generic enable routines now.

<davej@tetrachloride.(none)>
   [AGPGART] intel agp init cleanups.
   From Christoph Hellwig.
   (1) Kill the _setup functions - most of it can be nice, static
       structs - the few remainders are handled better elsewhere
   (2) _one_ big switch in ->probe assigning these tables.
   
   Almost 200 lOC gone and it's even readable :)

<davej@tetrachloride.(none)>
   [AGPGART] Remove unneeded enums from intel gart driver.

<davej@tetrachloride.(none)>
   [AGPGART] Remove unused ALi enums.

<davej@tetrachloride.(none)>
   [AGPGART] Remove stale comment

<davej@tetrachloride.(none)>
   [AGPGART] Fix typo in via-agp. s/PM400/P4M400/

<davej@tetrachloride.(none)>
   [AGPGART] Remove useless enums from serverworks gart driver

<davej@tetrachloride.(none)>
   [AGPGART] Remove unneeded enums from AMD k7 gart driver

<davej@tetrachloride.(none)>
   [AGPGART] More setup routine -> static struct conversions.
   Again from Christoph Hellwig.

<davej@tetrachloride.(none)>
   [AGPGART] Replace enum users with own methods.
   By introducing a few extra functions, we can kill off a few extra members
   of the enum. More work from Christoph Hellwig.

<davej@tetrachloride.(none)>
   [AGPGART] Merge NVIDIA nForce / nForce2 AGP driver.
   Based upon code written by NVIDIA for agpgart 2.4, forward ported and
   cleaned up slightly by me. This still needs work, and is untested.

<davej@tetrachloride.(none)>
   [AGPGART] Makefile cleanups.
   - the makefile is not the right place to describe the driver
   - remove some junk

<davej@tetrachloride.(none)>
   [AGPGART] Remove unneeded settings of bridge->type.
   It's now done in the static structs.

<davej@tetrachloride.(none)>
   [AGPGART] Add symbolic constants for AGP mode setting.
   bye bye icky hardcoded values.

<davej@tetrachloride.(none)>
   [AGPGART] Add more defines to kill off hardcoded values

<davej@tetrachloride.(none)>
   [AGPGART] Don't configure agp bridges more than once if there is >1 of them.

<davej@tetrachloride.(none)>
   [AGPGART] use symbols instead of hardcoded values in generic-3.0
   Lots more work to do here.

<davej@tetrachloride.(none)>
   [AGPGART] Convert several functions to return void.
   They only ever returned a single value.

<davej@tetrachloride.(none)>
   [AGPGART] Fall back to non-isochronous xfers if setting up isochronous xfers fails.

<davej@tetrachloride.(none)>
   [AGPGART] Fix typo that stopped nvidia GART driver being built

<davej@tetrachloride.(none)>
   [AGPGART] EXPORT_SYMBOL cleanups. Also move the global_cache_flush routine to generic.c

<davej@tetrachloride.(none)>
   [AGPGART] Move function description comments from headers to the code they document.

<davej@tetrachloride.(none)>
   [AGPGART] kdoc'ify some of the function header comments.

<davej@tetrachloride.(none)>
   [AGPGART] Move function prototypes to headers.

<davej@tetrachloride.(none)>
   [AGPGART] Misc backend source tidy up.

<davej@tetrachloride.(none)>
   [AGPGART] Remove semaphore abstraction.

<davej@tetrachloride.(none)>
   [AGPGART] i855PM support from Bill Nottingham.
   Mainly adding a PCI id, unfortunately, requires
   renaming the i855GM PCI ids to avoid name conflict. Also renames some
   of the i855GM constants from i855PM to i855GM.

<davej@tetrachloride.(none)>
   [AGPGART] Fix kconfig dependancies.
   - Don't show x86 GARTs on alpha

<greg@kroah.com>
   [PATCH] i2c: fix oops on startup of it87 driver.

<sri@us.ibm.com>
   [SCTP] sctp_sendmsg() updates for TCP-style sockets. 

<davej@codemonkey.org.uk>
   [AGPGART] fix macros that expect agp_bridge in global scope
   From Christoph Hellwig

<davej@codemonkey.org.uk>
   [AGPGART] cleanup agp backend.c a bit
   More from Christoph.
   
   Most style nitpicks and a bit more explicitly passing struct
   agp_bridge_data around.

<davej@codemonkey.org.uk>
   [AGPGART] Nvidia GART cleanups.
   Christoph cleaned up a lot of the mess here. We're back to nearly killing
   off the chipset_type enum, moved the register definitions to the code that
   uses it, and given it a proper pci .remove function.

<davej@codemonkey.org.uk>
   [AGPGART] Add back dummy module exit to keep things happy.

<davej@codemonkey.org.uk>
   [AGPGART] don't dereference agp_bridge in generic-3.0.c
   Yet more from Christoph..
   >If agp_3_0_node_enable gets a struct agp_bridge_data * all of the
   >generic-3.0.c can be cleaned up easily to never look at agp_bridge
   >directly.  Now only backend.c, generic.c and the actual drivers
   >are left looking at it:)

<davej@codemonkey.org.uk>
   [AGPGART] give all agpgart drivers a ->remove pci method.
   You guessed it, yup. from Christoph again.

<davej@codemonkey.org.uk>
   [AGPGART] proper agp_bridge_driver.
   Christoph with the goods once more...
   >Okay, this does the converion for all drivers, it's ontop of my
   >previous patches.  enum chipset_type has shrunk to NOT_SUPPORTED
   >and SUPPORTED, but I'd like to postpone killing it entirely
   >or replacing it by a bool - drm pokes into this and we need to  
   >redo the agpgart <-> drm interface for support of multiple garts
   >anyway.

<davej@codemonkey.org.uk>
   [AGPGART] Fix Kconfig typo

<davej@codemonkey.org.uk>
   [AGPGART] Shrink chipset_type enum (compile fix)
   Missing part of hch's last cset.

<anton@samba.org>
   ppc64: remove iomem_resource.end hack

<stevef@steveft21.ltcsamba>
   Fix cifs_show_options to display mount options in a way that is more
   consistent with other filesystems

<davej@codemonkey.org.uk>
   [AGPGART] Fix linking error.

<jgrimm@touki.austin.ibm.com>
   [SCTP] Make fragmented messages know how to SEND_FAIL themselves.
   
   If a message were fragmented, it was getting SEND_FAILed in all
   sorts of random order or not at all.   Now each "message" tracks its
   own fragments and can SEND_FAIL itself and all its fragments. 

<davej@codemonkey.org.uk>
   [CPUFREQ] Acer Aspire's have broken PST tables in one BIOS rev. DMI blacklist it.

<rmk@flint.arm.linux.org.uk>
   [ARM] Miscellaneous minor fixes.
   
   - comment fixes
   - remove unnecessary asm/proc-fns.h include
   - fix buggy compiler version traps

<jgrimm@death.austin.ibm.com>
   [SCTP] Free up data chunks that don't get accepted by primitive_SEND.
   
   Fix memory leak.  

<anton@samba.org>
   [PATCH] Re: Make sym2 driver use pci_enable_device
   
   > The sym2 driver should use the generic pci_enable_device() and
   > pci_set_master() functions.
   
   Sorry, wrong patch. We need to read COMMAND after doing
   pci_enable_device/pci_set_master. We should also check the return
   valie of pci_enable_device.
   
   Anton
   
   ===== drivers/scsi/sym53c8xx_2/sym_glue.c 1.16 vs edited =====

<hch@lst.de>
   [PATCH] split private and public scsi headers
   
   Two new headers:
   
     scsi_priv.h - for macros/declarations private to the scsi midlayer
           (= not EXPORT_SYMBOL()ed)
     scsi_logging.h - for SCSI_LOG_* and friends, semi-private to the
           midlayer and the upper drivers.  One abuse of this
         in dpt_i2o killed.

<hch@lst.de>
   [PATCH] kill scsi_dump_status
   
   Is someone still using the echo dump > /proc/scsi/scsi feature?  I think
   we should kill it as we're getting much nicer output from sysfs these
   days..

<hch@lst.de>
   [PATCH] kill pcmcia driver bind_info horror
   
   Currenty pcmcia drivers do a loop on their devices for issuing a
   SCSI_IOCTL_GET_IDLUN ioctl from kernelspace and passing dev->type
   to userspace so cardmgr can guess the the dev_t and find the
   device node of it.
   
   But it doesn't actually use it but only pass it as optional arguments
   to it's poor-man's hotplug scripts.  So kill this horror of, we
   have proper hotplug scripts in 2.5.  And here we go, the first big
   host->my_devices abuser is gone.

<hch@lst.de>
   [PATCH] use scsi_report_bus_reset() in scsi_erroc.c
   
   Currently scsi_error.c has two opencoded copies for
   scsi_report_bus_reset.  Get rid of them.

<hch@lst.de>
   [PATCH] fix scsi_debug compile warning
   
   spin_lock_irqsave takes an unsigned long.

<hch@lst.de>
   [PATCH] remove dead struct scsi_device members
   
   ->scpnt_wait is initialized and cpqfc calls wake_up on it but no one
   ever waits for it, ->allow_revalidate is completly unused.

<hch@lst.de>
   [PATCH] remove dead scsi_cmnd members
   
   ->reset_chain is initialized by the midlayer only used in BusLogic's old EH
   code (which is never called and thus can be #if 0'ed out until someone with
   the hardware updates it to new EH), ->done_late is never used.

<hch@lst.de>
   [PATCH] scsi_requeuest_fn
   
   Okay, when doing some other stuff I looked over this one, and it's
   a bit confusing to read:
   
    - using a goto completed where a simple break would be sufficient
    - using for (;;) for a perfectly fine while loop
    - ...
   
   but what's more interesting is that the spinlock handling in here,
   when we switch from sdev_lock/queue_lock to host_lock we
   do a spin_unlock_irq followed by a spin_lock_irqsave - but we
   we just enabled interrupts so the save isn't nessecary at all, even
   more we can just do spin_unlock/spin_lock when keeping them
   disabled.  Also we drop host_lock in the middle of this function,
   just to reacquire it a tad later in scsi_dispatch_cmd, but fixing
   that need a bit more thinking as there's another caller for
   scsi_dispatch_cmd.

<hch@lst.de>
   [PATCH] move max_sectors intitalization fully to scsi_register
   
   Addresses the fixme in scsi_alloc_queue.

<heiko.carstens@de.ibm.com>
   [PATCH] set data direction in sd_synchronize_cache in sd.c
   
   Hi,
   
   the following patch sets the data direction in sd_synchronize_cache
   to SCSI_DATA_NONE. Otherwise the data direction would be
   SCSI_DATA_UNKNOWN, which is at least a problem for the zfcp
   lldd, since it expects a value differently from unknown.
   Please apply, thanks.
   
   Heiko

<hch@lst.de>
   [PATCH] Re: unchecked_isa_dma on sparcv9
   
   On Tue, Apr 29, 2003 at 12:15:11AM -0700, David S. Miller wrote:
   >    The only thing host->unchecked_isa_dma = 1 does is to add a __GFP_DMA
   >    flag to certain memory allocations, but IIRC __GFP_DMA is a noop on
   >    sparcv9.  So what is this supposed to do?
   >
   > It's bogus, delete it.
   
   James, could you please apply the following patch?

<dougg@torque.net>
   [PATCH] blk SCSI_IOCTL_SEND_COMMAND
   
   While playing with RH9.0 and 2.5.68 I found that
   scsi_unique_id (called from devlabel) oopsed on
   a regular basis during bootup.
   
   This patch addresses flakiness in sense buffer
   handling (in the failure case a disk didn't support
   VPD page 0x83).

<patmans@us.ibm.com>
   Compile fix for scsi_syms.c
   
   I had to add an include of scsi_logging.h to compile with logging configured:

<paulus@samba.org>
   [PATCH] i2c: i2c-keywest.c irq handler type
   
   This patch changes the interrupt handler routine in i2c-keywest.c to
   return an irqreturn_t.

<greg@kroah.com>
   i2c: fix up the MAINTAINERS i2c entry
   
   Removed the dead web page and email address, and merged with the sensors entry
   and added myself.

<hch@lst.de>
   [PATCH] nuke some superflous externs
   
   No idea why those were ever added to scsi.c and scsi_syms.c, they're
   properly declared in the headers.

<sri@us.ibm.com>
   [SCTP] Initialize missing ipv4 fields of a AF_INET6 accept socket.

<sri@us.ibm.com>
   [SCTP] SO_LINGER socket option for TCP-style sockets.

<marcel@holtmann.org>
   [Bluetooth] Compile fix for URB_ZERO_PACKET
   
   This patch fixes the compile problem with URB_ZERO_PACKET.

<davej@codemonkey.org.uk>
   [AGPGART] Add some debugging printk's. Based on Linus' earlier patch.

<davej@codemonkey.org.uk>
   [CPUFREQ] Remove not needed ;'s from macro definitions.

<davej@codemonkey.org.uk>
   [AGPGART] Bulletproofing. NULL ptrs after freeing them.

<anton@samba.org>
   ppc64: ioctl32 updates

<davej@codemonkey.org.uk>
   [AGPGART] Remove duplicate code in i810/i830 alloc_by_type functions.

<davej@codemonkey.org.uk>
   [AGPGART] Fix incorrect type warning.

<davej@codemonkey.org.uk>
   [AGPGART] Move debugging macros to header so they can be used in other parts of agpgart.

<davej@codemonkey.org.uk>
   [AGPGART] more kconfig cleanups
   - Alphabetical order of items.
   - Fixup the IOMMU dependancy problem (Roman Zippel)
   - Word all options similarly (Add 'chipset' to some descriptions)
   - Remove unused CONFIG_AGP_GART
   - Fix up incomplete alpha tristate

<jgrimm@touki.austin.ibm.com>
   [SCTP] Add sinfo_timetolive support.
   
   sinfo_timetolive lets the application specify 'timed reliability'
   for a message.  That is, the message really only has a use to
   the peer up to this timeout.  Without PR-SCTP, we can throw away
   such timed out messages if we haven't yet assigned TSN/SSNs to
   them.  If we have, there is nothing we can do until we support
   PR-SCTP extension.  

<hch@lst.de>
   [PATCH] update NCR_D700 for new-style probing
   
   Pretty big patch and untested due to lack of hardware, so handle
   it with care :)

<jejb@raven.il.steeleye.com>
   Fix NCR_D700 driver
   
   This should complete the hch conversion to the new style probing.
   Tested and works fine.

<gibbs@overdrive.btc.adaptec.com>
   Aic79xx Driver Update (version 1.3.8)
    o Correct a few BE processor bugs
    o Print an additional diagnostic during recovery processing

<gibbs@overdrive.btc.adaptec.com>
   Update Aic79xx and Aic7xxx Documenation

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx Driver Update (6.2.33)
    o Correct MODULE_INFO string.
    o Bump version number.

<greg@kroah.com>
   [PATCH] USB: replace kdev_t with int in usb_interface structure, as only drivers with the USB major use it.

<davej@codemonkey.org.uk>
   [AGPGART] Kill off some typedefs.
   Note, I'm leaving behind the ones not in #ifdef __KERNEL__ for now, as I'm
   not sure just what userspace stuff that might break.

<davej@codemonkey.org.uk>
   [AGPGART] missing %p in debug printk

<davej@codemonkey.org.uk>
   [AGPGART] Turn on debugging printks for a while.
   Lets see if we can't track down some of the stranger reports.
   Also fix up the macro not to printk some ': ' it doesnt need to.

<anton@samba.org>
   ppc64: rework fast SLB miss handler castout code

<anton@samba.org>
   ppc64: firmware flash fix from Olof Johansson

<greg@kroah.com>
   Cset exclude: linux-usb@gemeinhardt.info|ChangeSet|20030429230539|30870

<greg@kroah.com>
   [PATCH] USB: vicam: fix bugs in writing to proc files that were found by the CHECKER project

<per.winkvist@telia.com>
   [PATCH] USB: more unusual_devs.h changes
   
   I've modified James Courtier-Dutton description from Optio 430 => Optio
   2/3/400 since it applies to Optio 330 and possible 230 too.
   
   Attached are the patch that was tried with Pentax Optio S and Optio 330 RS.
   I've talked to Pete Zaitcev and he said I should be using CB instead since
   more devices liked that better... so I leave that to you!

<david-b@pacbell.net>
   [PATCH] USB: ehci i/o watchdog
   
   This patch adds a new "I/O watchdog" role to the existing
   timer code, and cleans it up a bit.  If you want to run
   EHCI without IRQs, it's now simple:  disable them, and
   tweak the timer appropriately.
   
   The patch should help with these reported problems.
   
       (a) Bulk I/O sometimes seems to stop progressing.  Not
           trouble in itself, but usb-storage and scsi could
           wedge deeply because of bugs in their fault recovery;
           and then the problems could break khubd and rmmod...
   
       (b) Some periodic transfers need to be "jumpstarted".
           Usually seen with a high speed hub.

<paulus@samba.org>
   [PATCH] Update mesh.c and mac53c94.c drivers
   
   This patch updates the mesh and mac53c94 SCSI host bus adaptor
   drivers so that their interrupt routines return an irqreturn_t.
   
   Please apply.
   
   Thanks,
   Paul.

<gibbs@scsiguy.com>
   [PATCH] fix aci7xxx locking problem
   
   > On Thu, May 01, 2003 at 04:28:12PM -0600, Justin T. Gibbs wrote:
   >> Folks,
   >>
   >> I've just uploaded version 1.3.8 of the aic79xx driver and version
   >> 6.2.33 of the aic7xxx driver.  Both are available for 2.4.X and
   >> 2.5.X kernels in either bk send format or as a tarball from here:
   >>
   >> http://people.FreeBSD.org/~gibbs/linux/SRC/
   >
   > Hi Justin,
   >
   > I've just tested it and I still have the deadlock on SMP. I also tried with
   > noapic, but it didn't change. I have reduced the TCQ from 253 to 32, and I
   > had the impression that it was more difficult to trigger, although I cannot
   > be certain. With 32, I could boot and go to about half the 'make -j 8 dep',
   > while it hanged during init script with 253. I may retest by the week-end, but
   > now I'm going to sleep. Now I'm back to 6.2.28 and everything's OK.
   
   Can you try with this patch?  It seems I forgot to pull part of a change
   from the aic79xx driver into the aic7xxx driver.  This could easily cause
   a lock order reversal. <sigh>

<hch@lst.de>
   [PATCH] remove scsi_device proc printing from drivers
   
   A bunch of drivers contain loops over host->my_devices in their
   proc_info method just to printout info we already get from sysfs.
   Kill those, the ones that actually add additional information
   from their private data need to get sysfs attributes for the fist.
   
   BTW, does someone have opintions on reading of /proc/scsi/scsi?
   It's just a duplication of the sysfs tree so it should probably
   go away also.  OTOH there's a slightly higher chance on userland
   actually using this than for the LLDDs..

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx Driver Update
    o Fix Aic7xxx driver locking in the AHC_SCSI_HAS_HOST_LOCK == 0 case.

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx and Aic79xx Driver Updates
    o Misc compiler error and code cleanups.

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx and Aic79xx Driver Update
    o Build with -Werror

<sri@us.ibm.com>
   [SCTP] Use prepare_to_wait()/finish_wait() interfaces.

<davej@codemonkey.org.uk>
   [AGPGART] Intel I875P support.
   From Matt Tolentino.

<acme@conectiva.com.br>
   o ipx headers: Coding Style code reformatting

<davem@nuts.ninka.net>
   [NET]: Use dump_stack in neigh_destroy.

<davem@nuts.ninka.net>
   [NET]: Fix typo in previous neighbour.c change.

<steve@gw.chygwyn.com>
   [DECNET]: Add netfilter subdir for decnet and add the routing grabulator.

<paulus@samba.org>
   [PPP]: Rest of compression module changes, oops.

<davem@nuts.ninka.net>
   [ATM]: mpc.c warning fixes.

<davem@nuts.ninka.net>
   [NETFILTER IPV6]: Fix warnings.

<davej@codemonkey.org.uk>
   [AGPGART] Disable debugging printk's again.
   With the 'AGP bug' solved, we don't need this noise for a while...

<acme@conectiva.com.br>
   o list.h: implement list_for_each_entry_safe

<acme@conectiva.com.br>
   o ipx: convert ipx_interface handling to use list_head

<jgrimm@touki.austin.ibm.com>
   [SCTP] Use put_user() in get_peer_addr_params (reported by yjf@standford.edu)
   
   Standford Checker reported direct touch of user space. 

<davej@codemonkey.org.uk>
   [AGPGART] Skip devices with no AGP headers sooner.

<Matt_Domsch@dell.com>
   Shrink dynids feature set
   
   Per recommendation from GregKH:
   Remove directory 'dynamic_id'
   Remove exporting dynamic_id/0 files
   Remove probe_it driver attribute
   Move new_id into driver directory as a driver attribute.  Make it
   probe when new IDs are added.
   Move attribute existance test into pci-driver.c completely.
   

<davej@codemonkey.org.uk>
   [AGPGART] Store agp revision in agp_bridge struct.
   There are a few places we do spec revision compliance checks, this cset
   generalises that function, and removes some duplicated functionality.

<davej@codemonkey.org.uk>
   [AGPGART] Work around AMD 8151 errata.
   Some revisions incorrectly report they support v3.5 of the AGP spec, when
   they are actually only 3.0 compliant.

<bunk@fs.tum.de>
   [PATCH] USB: kill the last occurances of usb_serial_get_by_minor
   
   I got an error at the final linking of 2.5.68-bk11. It seems the patch
   below is needed.

<geert@linux-m68k.org>
   [PATCH] USB: Big endian RTL8150
   
   The RTL8150 USB Ethernet driver doesn't work on big endian machines. Here are
   patches (for both 2.4.x and 2.5.x) to fix that. The fix was tested on the
   2.4.20 and 2.4.21-rc1 version of the driver on big endian MIPS.
   
   Changes:
     - Fix endianness of rx_creg (from Dimitri Torfs <Dimitri.Torfs@sonycom.com>)
     - Kill unused last parameter of async_set_registers()

<davem@redhat.com>
   [PATCH] USB speedtouch fix
   
   Missing header file.  Please apply.

<philipp@void.at>
   [PATCH] USB: unusual_devs.h patch

<Matt_Domsch@dell.com>
   PCI dynids - documentation fixes, id_table NULL check

<hch@lst.de>
   [PATCH] move all host templates into .c files
   
   Oookay - I really got upset by that tmeplates in headers crap when
   grepping for certain methods.  The patch below moves all templates
   from the headers into the actual implementation files and removes
   the ifdef mess for unmaintained drivers - for maintained support
   gazillion kernel releases drivers like gdth I've kept them.
   
   This means a driver works fine without any problems for all modular
   builds and builtin kernel >= 2.4.0.  If you want certain drivers
   to work with 2.0/2.2 statyic builds too I can hack something up for
   you, but I'd prefer not supporting stuff like that anymore.
   
   Tested by compiling all drivers with make -k and not getting more
   warnings than before :)

<nicolas@dupeux.net>
   [PATCH] USB: UNUSUAL_DEV for aiptek pocketcam
   
   Here is the unusual_dev entry i'm using to get my digital camera.
   
   
   diff -cr linux/drivers/usb/storage/unusual_devs.h linux_vaxvms/drivers/usb/storage/unusual_devs.h
   *** linux/drivers/usb/storage/unusual_devs.h   2003-03-14 21:32:46.000000000 +0100

<andmike@us.ibm.com>
   [PATCH] scsi host sysfs support again [1/4]
   
   -andmike
   --
   Michael Anderson
   andmike@us.ibm.com
   
   DESC
   This patch removes the shost_devclass device class support that was
   previously added, but incomplete.
   EDESC
   
   
    drivers/acorn/scsi/acornscsi.c |    1 -
    drivers/acorn/scsi/arxescsi.c  |    1 -
    drivers/acorn/scsi/cumana_1.c  |    1 -
    drivers/acorn/scsi/cumana_2.c  |    1 -
    drivers/acorn/scsi/eesox.c     |    1 -
    drivers/acorn/scsi/oak.c       |    1 -
    drivers/acorn/scsi/powertec.c  |    1 -
    drivers/scsi/scsi_sysfs.c      |   23 -----------------------
    8 files changed, 30 deletions(-)

<andmike@us.ibm.com>
   [PATCH] scsi host sysfs support again [2/4]
   
   -andmike
   --
   Michael Anderson
   andmike@us.ibm.com
   
   
   DESC
   This patch changes the structure of sdebug_host_info and changes the
   method / order of driver model cleanup.
   EDESC
   
   
    drivers/scsi/scsi_debug.c |  215 ++++++++++++++++++++++++----------------------
    drivers/scsi/scsi_debug.h |    2
    2 files changed, 115 insertions(+), 102 deletions(-)

<andmike@us.ibm.com>
   [PATCH] scsi host sysfs support again [3/4]
   
   -andmike
   --
   Michael Anderson
   andmike@us.ibm.com
   
   
   DESC
   Change scsi host to class device model. Change scsi host and scsi device
   to release when ref count goes to zero.
   EDESC
   
   
    drivers/scsi/hosts.c     |   23 +++++------------------
    drivers/scsi/hosts.h     |   20 ++++++++++++++------
    drivers/scsi/scsi_scan.c |    4 +---
    3 files changed, 20 insertions(+), 27 deletions(-)

<andmike@us.ibm.com>
   [PATCH] scsi host sysfs support again [4/4]
   
   -andmike
   --
   Michael Anderson
   andmike@us.ibm.com
   
   
   DESC
   Change scsi sysfs to support scsi host class device and call release
   functions when ref count goes to zero.
   EDESC
   
   
    drivers/scsi/scsi_sysfs.c |  111 +++++++++++++++++++++++++++++++++++++++-------
    1 files changed, 96 insertions(+), 15 deletions(-)

<Matt_Domsch@dell.com>
   pci.h whitespace cleanups

<jgrimm@touki.austin.ibm.com>
   [SCTP] Support SCTP ECN on ipv6.

<acme@conectiva.com.br>
   o ipx: convert ipx_route to use list_head

<davem@nuts.ninka.net>
   [IPSEC]: Fix SADB_EALG_{3,}DESCBC values.

<davem@nuts.ninka.net>
   [ATM]: Fix some CPP pasting in ambassador driver.

<chas@locutus.cmf.nrl.navy.mil>
   [ATM]: Fix excessive stack usage in iphase driver.

<chas@locutus.cmf.nrl.navy.mil>
   [ATM]: svcs possible race with sigd.

<steve@gw.chygwyn.com>
   [FS]: Add seq_release_private and proc_net_fops_create helpers.

<steve@gw.chygwyn.com>
   [DECNET]: seq file conversions and fixes.
     o Removed blksize from decnet device parameters - use the device mtu like we
       ought to.
     o Removed /proc/net/decnet_route file - I don't think anybody ever used it
       and it was lacking a full enough description of the routes to be useful.
       ip -D route list is much better :-)
     o Added rt_local_src entry to decnet routes so that we get the local source
       address right when forwarding.
     o Added correct proto argument to struct flowi for routing
     o MSG_MORE in sendmsg (ignored, but accepted whereas before we'd error)
     o /proc/net/decnet converted to seq_file
     o /proc/net/decnet_dev converted to seq_file
     o /proc/net/decnet_cache converted to seq_file
     o Use pskb_may_pull() and add code to linearize skbs on the input path
       except for those containing data.
     o Fixed returned packet code (mostly - some left to do)
     o update_pmtu() method for decnet dst entries (ip_gre device assumes this
       method exists - well I think it does :-)
     o Fixed bug in forwarding to get IE bit set correctly
     o Fixed compile bugs with CONFIG_DECNET_ROUTE_FWMARK pointed out by Adrian
       Bunk
     o Fixed zero dest code to grab an address from loopback
     o Fixed local routes in dn_route_output_slow()
     o Fixed error case in dn_route_input/output_slow() pointed out by Rusty

<rusty@rustcorp.com.au>
   [NETFILTER]: Fix Module Usage in ipchains and ipfwadm.
   Gets rid of some warnings.  Manipulating our own module count inside the
   sockopt is safe, because unregistering that sockopt will block.

<rusty@rustcorp.com.au>
   [NETFILTER]: Make NAT code handle non-linear skbs.
   Makes the NAT code and all NAT helpers handle non-linear skbs.
   Main trick is to introduce skb_ip_make_writable which handles all
   the decloning, linearizing, etc.

<davem@nuts.ninka.net>
   [NETFILTER]: ip_nat_proto_{icmp,udp}.c need ip_nat_core.h

<davem@nuts.ninka.net>
   [IPV6]: Kill spurious module_{get,put}().

<davem@nuts.ninka.net>
   [BLUETOOTH]: Fix hci_usb build.

<yoshfuji@linux-ipv6.org>
   [IPV6]: Fix offset in ICMPV6_HDR_FIELD messages.

<yoshfuji@linux-ipv6.org>
   [IPV^]: Use correct icmp6 type in ip6_pkt_discard.

<davem@nuts.ninka.net>
   [SPARC64]: Only use power interrupt when button property exists.

<chas@cmf.nrl.navy.mil>
   [ATM]: Fix foul up in lec driver.

<Matt_Domsch@dell.com>
   dynids: call driver_attach() when new IDs are added
   
   This causes the driver to create proper device symlinks in sysfs when
   new IDs are added and thus new devices found by the driver.
   
   drivers/base/bus.c
       make driver_attach non-static
   drivers/pci/pci-driver.c
       delete probe_each_pci_dev, call driver_attach instead.
       Whitespace cleanups.
   include/linux/device.h
       add declaration of driver_attach.

<davidm@tiger.hpl.hp.com>
   ia64: Improve spinlock code to handle contention in shared routine called
      with a special convention.  Various minor fixes for gcc-pre3.4.

<jejb@raven.il.steeleye.com>
   Add .release template method to scsi_debug.c
   
   Lost in the hch/andmike merge

<davem@nuts.ninka.net>
   [IPV6]: Remove illogical bug check in fib6_del.

<davej@codemonkey.org.uk>
   [AGPGART] Only enable isochronous transfers on AGP3.5 chipsets.
   The standard says that 3.0 chipsets don't support these extensions.
   Move the isoch stuff out into isoch.c leaving behind a shell for basic
   AGP3.0 enabling (to be written).

<davej@codemonkey.org.uk>
   [AGPGART] Remove unneeded exports.
   These functions should only be called indirectly from agp_generic_enable()

<arun.sharma@intel.com>
   [PATCH] ia64: fix ia32 emulation of rlimit et al
   

<eranian@hpl.hp.com>
   [PATCH] ia64: perfmon update
   
   Please apply the following patch on top of 2.5.6x. This patch does the
   following:
   
   - repair broken system-wide overflow notification
   - repair broken per-process notification
   - fix a problem in the resrved bitmask for opcode 
     matcher8,9 for McKinley as reported by UIUC.
   - forcing of bit2 for pmc8/pmc9 now part of reserved bitmask
   - add the unsecure option to perfmon
   - update to perfmon 1.4 (similar to 2.4)

<elenstev@mesatop.com>
   [PATCH] ia64: spelling fixes
   

<davidm@tiger.hpl.hp.com>
   ia64: Manual merge of Steve's spelling fixes.

<alex_williamson@hp.com>
   [PATCH] ia64: fix timer interrupts getting lost
   
   This patch fixes the issue of some CPUs not showing timer interrupts
   going off.  Seems during the process of sync'ing the itc, we jumped over
   the next timer value.  This patch is against 2.5.67 + ia64.  I haven't
   seen the problem on 2.4, but a quick looks seems like it's potentially
   an issue there too.

<alex_williamson@hp.com>
   [PATCH] ia64: interrupt fixes/cleanup
   
   Here's some cleanups/fixes/changes for interrupts on 2.5.67 + ia64.
   Specifically:
   
     - Cleanup some ugliness with polarity/trigger setup.
   
     - Add iosapic_enable_intr() to set_rte on an interupt when the
       device is enabled.  IMHO, we really only want to unmask RTEs
       for PRTs we might actually use.  This moves the interrupt
       distribution here too.
   
     - When changing a vector from edge to level, call register_intr()
       to do it so all the data structures get set correctly.  If we
       have to guess how to setup an interupt and get it wrong, this
       should close some holes in changing it back to the correct type.
   
     - Register the HCDP interrupt in 8250_hcdp - this is where we have
       to guess the polarity/trigger.  The real handler will get fixed
       up via PCI setup or ACPI namespace serial support, this gets it
       associated w/ the port at setup.  This should allow interrupts
       to work when using builtin UARTs as console on HP Itanium2 boxes.

<bjorn_helgaas@hp.com>
   [PATCH] ia64: multi-ioport space support
   
   This has been in my 2.4 BK tree for a while, but I should have
   posted it in case there's feedback from other people working
   on large machines.  So here it is, in four parts:
   
     1  enhance __ia64_mk_io_addr(port)
     2  enhance pcibios_scan_root to get multiple mem & io windows
         from ACPI _CRS, and fixup all the resources
     3  add support for /proc/iomem and /proc/ioports
     4  trivial (whitespace, copyright, and move pcibios_fixup_device_resources
          closer to related code)
   
   The current scheme is that IO ports are 64 bits, with the low 24
   bits being the port number within an IO port space, and the upper
   bits identifying the space.  There is currently a limit of 16
   spaces.

<bjorn_helgaas@hp.com>
   [PATCH] ia64: multi-ioport space support (part 2 of 4)
   
   enhance pcibios_scan_root to get multiple mem & io windows from ACPI _CRS,
   and fixup all the resources

<bjorn_helgaas@hp.com>
   [PATCH] ia64: multi-ioport space support (part 3 of 4)
   
   add support for /proc/iomem and /proc/ioports

<bjorn_helgaas@hp.com>
   [PATCH] ia64: multi-ioport space support (part 3 of 4)
   
   trivial (whitespace, copyright, and move pcibios_fixup_device_resources
   closer to related code)

<bjorn_helgaas@hp.com>
   [PATCH] ia64: new IOC recognition
   
   This is a trivial patch that makes sba_iommu recognize a new IOC.
   Only change is that it will print
   
       IOC: sx1000 0.1 HPA 0xf8120002000 IOVA space 1024Mb at 0x80000000
   
   instead of
   
       IOC: Unknown (103c:127c) 0.1 HPA 0xf8120002000 IOVA space 1024Mb
   at 0x80000000

<bjorn_helgaas@hp.com>
   [PATCH] ia64: vendor-specific ACPI resource cleanup
   
   This is to
   
     - handle _CRS with multiple vendor-specific resources
     - use acpi_walk_resources() instead of doing it by hand
     - make lookup of vendor resource by GUID generic
     - cleanup now-unused helper functions
   
   (This depends on the previous IO port space patches, because
   they removed the last of acpi_get_addr_space()).
   
   My hope is that acpi_vendor_resource_match() and
   acpi_find_vendor_resource() can someday move into ACPI,
   but that probably depends on getting the idea of labelling
   vendor resources with a GUID into the spec.  HP does this
   and I think is working on putting it in the spec.

<petrides@redhat.com>
   [PATCH] ia64: fixes for semtimedop() ia32-compat handling
   
   Here are two fixes for the ia32-compatibility mode handling
   for the new semtimedop() system call for the ia64 architecture.
   
   The first problem was that treatment of user-mode calls to semtimedop()
   with a NULL 4th (struct timespec *) parameter was inconsistent with the
   behavior of the same executable on i386 and also with a natively compiled
   ia64 binary.  A NULL 4th arg to semtimedop() should result in no timeout
   being used (like a straight semop() call) rather than in an EFAULT error.
   
   The second problem was that a legitimate semtimedop() with a timeout was
   also resulting in an EFAULT because the fetch of the internal timespec
   strucure by sys_semtimedop() from semtimedop32()'s kernel stack was
   treated as an invalid user-data reference.  This requires temporarily
   switching the addressing limit with set_fs(), further requiring that
   appropriate parameter checking by performed prior to the switch.
   
   The const qualifier was removed from the (struct compat_timespec *) arg
   to semtimedop32() so that the call to get_compat_timespec() wouldn't
   generate a compilation warning.

<davidm@tiger.hpl.hp.com>
   ia64: Manual merge of Bjorn Helgaas' sba_iommu patch to make it use seq_file.

<jejb@raven.il.steeleye.com>
   fix syntax error in ncr53c8xx from hch conversion

<jejb@raven.il.steeleye.com>
   fix missed conversion of to_scsi_host -> dev_to_shost in sim710

<jejb@raven.il.steeleye.com>
   add missing asm/io.h to scsi/dc395x.c

<roland@frob.com>
   [PATCH] core dump psinfo.pr_sname letter fix
   
   This patch makes the state letter in the pr_sname field in core dumps
   correct for stopped and zombie threads.  The order needed to be changed when
   the TASK_* values changed.  This matches the letters used in sched.c:show_task.

<greg@kroah.com>
   [PATCH] PCI Hotplug: fix up the compaq driver to work properly again.

<greg@kroah.com>
   [PATCH] PCI Hotplug: fix up the ibm driver to work properly again.

<greg@kroah.com>
   [PATCH] PCI Hotplug: fix compiler warning in ibm driver.

<greg@kroah.com>
   [PATCH] PCI Hotplug: fix up the acpi driver to work properly again.

<greg@kroah.com>
   [PATCH] PCI Hotplug: fix dependancies for CONFIG_HOTPLUG_PCI_ACPI
   
   Thanks to Adrian Bunk <bunk@fs.tum.de> for pointing this out.

<greg@kroah.com>
   PCI Hotplug: export the acpi_resource_to_address64 function, as the acpi pci hotplug driver needs it.

<davidm@tiger.hpl.hp.com>
   mca.c:
     (show_min_state): Fix typo r11 -> r12.

<kraxel@bytesex.org>
   [PATCH] i2c #1/3: listify i2c core
   
   This is the first of tree patches for i2c.  Trying to get the i2c
   cleanups finshed before 2.6.x, so we (hopefully) don't have a
   ever-changing i2c subsystem in 2.7.x again (which is very annonying for
   driver maintainance).
   
   Changes:
   
    * listify i2c-core, i.e. make it use <linux/list.h> instead of
      statically-sized arrays, removed lots of ugly code :)
    * added i2c_(get|put)_adapter, changed i2c-dev.c to use these
      functions instead maintaining is own adapter list.
    * killed the I2C_DF_DUMMY flag which had the strange semantics to
      make the i2c subsystem call driver->attach_adapter on detaches.
      Added a detach_adapter() callback instead.
    * some other minor cleanups along the way ...

<kraxel@bytesex.org>
   [PATCH] i2c #2/3: add i2c_clients_command
   
   Changes:
   
     * adds a i2c_clients_command() function to i2c-core which calls
       the ->command() callback of all clients attached to a adapter.
     * make bttv + saa7134 drivers use that function instead of mucking
       with the i2c_adapter struct themself.

<kraxel@bytesex.org>
   [PATCH] i2c #3/3: add class field to i2c_adapter
   
   This is the last of three patches for i2c.  It introduces a new field
   to i2c_adapter which classifies the kind of hardware a i2c adapter
   belongs to (analog tv card / dvb card / smbus / gfx card ...).  i2c chip
   drivers can use this infomation to decide whenever they want to look for
   hardware on that adapter or not.  It doesn't make sense to probe for a
   tv tuner on a smbus for example ...

<greg@kroah.com>
   [PATCH] i2c: fix compile error due to previous patches.

<warp@mercury.d2dc.net>
   [PATCH] i2c: it87 patch.
   
   More or less straight forward patch.
   
   Fix a typo in the comments at the top.
   Show all 9 voltage inputs.
   Show all 3 fan inputs.
   Allow you to select the temp sensor type from the sysfs interface,
   instead of just with the temp_type module option.
   (1 = diode, 2 = thermistor, 0 = disabled).
   
   I'm still trying to figure out the registers for PWM fan controller
   support.

<sri@us.ibm.com>
   o net/socket: fix bug in sys_accept
   
   module_put() gets called twice on error. Once via the explicit module_put and
   the second via sock_release(). Also i think we should do a __module_get() with
   newsock's owner(although same as the original listening sock).

<paulkf@microgate.com>
   [PATCH] synclink update
   
    - Add support for hardware version 2 (universal PCI) of synclink adapter
    - Use mod_timer() function

<paulkf@microgate.com>
   [PATCH] n_hdlc update
   
    - Use C99 initializers

<arun.sharma@intel.com>
   [PATCH] ia64: fix sys32_select()
   

<davem@nuts.ninka.net>
   [IPV4/IPV6]: Set owner field in family ops.

<greg@kroah.com>
   [PATCH] USB: add usb class support for usb drivers that use the USB major
   
   This also consolodates the devfs calls for the USB drivers.

<greg@kroah.com>
   [PATCH] USB: converted usblp over to new usb_register_dev() changes.

<greg@kroah.com>
   [PATCH] USB: converted mdc800 over to new usb_register_dev() changes.

<greg@kroah.com>
   [PATCH] USB: converted scanner over to new usb_register_dev() changes.

<greg@kroah.com>
   [PATCH] USB: converted dabusb over to new usb_register_dev() changes.

<greg@kroah.com>
   [PATCH] USB: converted auerswald over to new usb_register_dev() changes.

<greg@kroah.com>
   [PATCH] USB: converted brlvger over to new usb_register_dev() changes.

<greg@kroah.com>
   [PATCH] USB: converted rio500 over to new usb_register_dev() changes.

<greg@kroah.com>
   [PATCH] USB: converted usblcd over to new usb_register_dev() changes.

<greg@kroah.com>
   [PATCH] USB: converted usb-skeleton over to new usb_register_dev() changes.

<greg@kroah.com>
   [PATCH] USB: remove #include <linux/devfs_fs_kernel.h> from some drivers that do not need it.

<greg@kroah.com>
   USB: converted hiddev over to new usb_register_dev() changes.

<rddunlap@osdl.org>
   [NET]: Spelling/typo fixes in rtnetlink.h

<rddunlap@osdl.org>
   [IPV6]: Convert /proc/net/rt6_stats to seq_file.

<bdschuym@pandora.be>
   [BRIDGE]: Change pkt_type to PACKET_HOST earlier.

<shemminger@osdl.org>
   [IPV4]: Replace explicit dev->refcount bumps with dev_hold.

<akpm@digeo.com>
   [NET]: Remove duplicated alloc_skb debug check.

<chas@cmf.nrl.navy.mil>
   [ATM]: Add Forerunner HE support.

<chas@cmf.nrl.navy.mil>
   [ATM]: Forward port br2864 to 2.5.x

<chas@cmf.nrl.navy.mil>
   [ATM]: Clip locking and more atmvcc cleanup.

<rddunlap@osdl.org>
   [IPV6]: Fix typos in ip6_fib.c

<rddunlap@osdl.org>
   [IPV6]: Use time_after() etc. for comparing jiffies.

<olof@austin.ibm.com>
   [TCP]: tcp_twkill leaves death row list in inconsistent state over tcp_timewait_kill.

<davem@nuts.ninka.net>
   [ATM]: Fix build of HE driver.

<trond.myklebust@fys.uio.no>
   Decrement the nr_unstable page state after the COMMIT RPC call
   completes instead of before. This ensures that writeback 
   WB_SYNC_ALL does wait on completion.
   
   Don't overreport the number of pages we wrote out. It is safer to
   underreport.
   
   Fix missing NFSv3 unstable write accounting in fs/fs-writeback.c
   and mm/page-writeback.c

<trond.myklebust@fys.uio.no>
   Fix typos in close-to-open cache consistency checking.

<trond.myklebust@fys.uio.no>
   Fix a TCP race: check whether or not the socket has been disconnected
   before we allow an RPC request to wait on a reply.

<trond.myklebust@fys.uio.no>
   Don't use an RPC child process when reconnecting to a TCP server.
   This is more efficient, and also fixes an existing deadlock
   situation in which the child could be waiting for an xprt_write_lock
   that was being held by the parent.

<trond.myklebust@fys.uio.no>
   Ensure that if we need to reconnect the socket, we also resend
   the entire RPC message
   
   Assorted TCP reconnection fixes.
   
   Temporarily raise the necessary CAP_NET_BIND_SERVICE capability
   if we need to bind the socket to a reserved port during a TCP
   reconnection. Check for CAP_NET_BIND_SERVICE at mount time.

<trond.myklebust@fys.uio.no>
   Add the sk->callback_lock spinlocks to the RPC socket callbacks
   in order to protect the socket from being released by one
   CPU while the other is in a soft interrupt.

<cel@citi.umich.edu>
   the recently-applied patch to fix the rpc_show_tasks() Oops is incomplete.
   this applies over 2.5.68 and should address all of the issues in
   rpc_show_tasks().

<trond.myklebust@fys.uio.no>
   Ensure that Lockd and the NSM (statd) clients always use privileged
   ports. Remove the existing code to temporarily raise privileges in
   fs/lockd/host.c, and use the new code in net/sunrpc/xprt.c
   
   There should no longer be a need to temporarily change the fsuid.
   Remove this feature.

<trond.myklebust@fys.uio.no>
   UDP and TCP zero copy code for the NFS client. The main interest
   of this patch is to eliminate the use of xdr_kmap() and xdr_unmap()
   by replacing them with MSG_MORE. xdr_kmap() is deadlock-prone
   due to the fact that it has to kmap() several pages at the same time.

<acme@conectiva.com.br>
   o ipx: ipx_interfaces outlives struct sock/socket
   
   And thus have to do module refcounting...

<torvalds@penguin.transmeta.com>
   Whee. Fix ancient mailing address.

<greg@kroah.com>
   [PATCH] USB: update my copyrights in a few locations.

<chas@cmf.nrl.navy.mil>
   [ATM]: assorted atm patches

<chas@cmf.nrl.navy.mil>
   [ATM] remove iovcnt from atm_skb
   skbs has (and has had for a while) scatter/gather support
   making the scatter gather in atm redundant.  the current iovcnt
   schme really isnt being used anyway typically.   the atm
   layer will need a little more work in the future to take
   advantage of the skb scatter/gather support.  this patch
   removes the iovcnt dependencies and gets the check for
   non linear skbs right.

<davem@nuts.ninka.net>
   [IPV4]: Use time_{before,after}() and proper jiffies types in route.c

<davem@nuts.ninka.net>
   [IPV4]: Two minor errors in jiffies changes.

<shemminger@osdl.org>
   [NET]: Kill more direct references to netdev->refcnt.

<kuznet@ms2.inr.ac.ru>
   [ACENIC]: Comment out netif_wake_queue from acenic watchdog.

<David_Jeffery@adaptec.com>
   [PATCH] ips 2.5 driver update [1/4] irq return update
   
   This is the proper way to report if the interrupt
   was from a serveraid or not.
   
   David Jeffery
   
    ips.c |   29 ++++++++++++++++-------------
    ips.h |    6 +++++-
    2 files changed, 21 insertions(+), 14 deletions(-)

<David_Jeffery@adaptec.com>
   [PATCH] ips 2.5 driver update [2/4] missing kfree and static init s
   
   This patch adds a missing kfree on an error path
   and removes some cases where static variables
   were being explicitly initiated to 0.
   
    ips.c |   13 ++++++-------
    1 files changed, 6 insertions(+), 7 deletions(-)

<David_Jeffery@adaptec.com>
   [PATCH] ips 2.5 driver update [3/4]: misc cleanups
   
   This patch checks the return code of
   pci_set_dma_mask for a 32bit mask,  adds a break
   to quiet some compilers, and adds some 2.4 compat.
   code.
   
    ips.c |    8 ++++++--
    ips.h |    4 +++-
    2 files changed, 9 insertions(+), 3 deletions(-)

<David_Jeffery@adaptec.com>
   [PATCH] ips 2.5 driver update [4/4]: use dev_printk
   
   Use the new dev_printk.
   
   Thanks go to Mike Christie who originally
   created this patch.
   
    ips.c |  135 +++++++++++++++++++++++++++---------------------------------------
    ips.h |    5 ++
    2 files changed, 62 insertions(+), 78 deletions(-)

<hch@lst.de>
   [PATCH] remove scsi_slave_attach/scsi_slave_detach
   
   I added those two to factor out common code from the upper drivers
   a long time ago, but after Doug & Lubens nice work there's nothing
   left but incrementing/decrementing a counter in struct scsi_device
   that's never used except in the case were we not it must be NULL
   because we just walked the chain of drivers to detach every single
   one..

<hch@lst.de>
   [PATCH] first batch of shost sysfs fixes
   
   (a) scsi_check_device_busy() is unused now, kill it.  Btw, although I
       love to see this this really means we need to imply a
       scsi_set_device_offline (or even better scsi_set_host_offline)
       in scsi_remove_host now..
   (b) make shost_class static to scsi_sysfs.c, with the new device model
       changes no LLDD needs this anymore
   (c) move private prototypes where they belong.
   
   BTW, Mike, did I miss something or will your changes make every driver
   converted to scsi_add_host & co OOPS on removal now?

<hannal@us.ibm.com>
   [PATCH] tc_zs tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] specialix tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] stallion tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] serial_tx3912  tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] sh-sci tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] ser_a2232 tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] serial167 tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] rocket tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] sgi/char/sgiserial tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] rio  tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] riscom8 tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] pcxx tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] mxser tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] istallion  tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] moxa tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] ip2main tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] isicom tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] esp  tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] hvc_console tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] dz tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] cyclades tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] amiserial tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] macintosh/macserial  tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] isdn/capi  tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<hannal@us.ibm.com>
   [PATCH] vme_scc tty_driver add .owner field remove MOD_INC/DEC_USE_COUNT

<davem@nuts.ninka.net>
   [PKT_SCHED]: Kill iovcnt reference from sch_atm.c

<greg@kroah.com>
   TTY: add tty class support for all tty devices.

<greg@kroah.com>
   TTY: changes based on tty_register_device() paramater change.

<greg@kroah.com>
   TTY: remove usb-serial sysfs dev file as it is now redundant.

<torvalds@home.transmeta.com>
   Make lib/inflate.c look remotely like ANSI C, so that it can be
   properly checked with the rest of the kernel.

<torvalds@home.transmeta.com>
   Avoid using undefined preprocessor symbols: check CONFIG_MK7 with
   "defined()" rather than using it as a value.

<jejb@mulgrave.(none)>
   Update aacraid to last drop on 2.4 from Alan Cox

<jejb@mulgrave.(none)>
   Update aacraid from 2.4->2.5 semantics
   
   - stanford checker fixes (randy.dunlap)
   - updated io_request_lock to correct 2.5 lock
   - spelling fixes
   - torvalds daemonize changes
   - updated templates etc
   - update scsicmd-> to scsicmd->device-> for new command alloc code
   - update biosparam and add slave_configure
   - gendisk name changes
   - fix compile warnings

<markh@osdl.org>
   [PATCH] New aacraid driver fixed.
   
   I have the new aacraid driver working on my system now.  The patch is
   against the 2.5.66 updates that you gave me.  I made the following
   changes:
   
   aachba.c aac_scsi_cmd()
   There was a race accessing the scsicmd pointer accessing the host_lock.
   I made a local pointer to the Scsi_Host so the spin_lock_irq after
   aac_read wouldn't panic.  I think that sometimes the I/O would be done
   and the memory freed before returning invalidating the scsicmd pointer.
   I made the same change in aac_io_done in case scsi_done had freed the
   scsicmd memory before returning.
   
   comminit.c aac_alloc_comm()
   AdapterFibsVirtualAddress was set to the virtual address of base.  I
   changed it to set it to the phys address.  I compared this to code
   pointed to by matt domsch on the aacraid devel list on the 5th.  Its
   aac_alloc_comm sets this variable to the phys address.  This fixed the
   probelem where the entry->addr was bad.  Another was to fix it I guess
   would be to leave this change alone and not try to convert the address
   in aac_command_normal.
   
   dpcsup.c aac_response_normal()
   Changed the bus_to_virt to the calculation we talked about last month.
   dpcsup.c aac_command_normal()
   Changed the bus_to_virt to the calculation.

<torvalds@home.transmeta.com>
   Use "__attribute__" consistently.

<torvalds@home.transmeta.com>
   Allow external checkers to overrid the "cond_syscall()" macro.

<torvalds@home.transmeta.com>
   Support a "checking" mode for kernel builds, that runs a
   user-supplied source checker on all C files before compiling
   them.
   
   I'll release the actual checker once I've cleaned it up a
   bit more (yay, all the copyright paperwork completed!)

<akpm@digeo.com>
   [PATCH] generic subarchitecture for ia32
   
   From: Andi Kleen <ak@muc.de>
   
   This patch adds an generic x86 subarchitecture. It is intended to provide
   an dynamic interface for APIC drivers. There are already three subarchitectures
   (bigsmp, summit, default) that only differ in how they drive the local APIC.
   A fourth - Unisys ES7000 - is scheduled to be merged soon.
   
   The subarchitecture concept separated this nicely, but it has the big
   drawback that they are compile time options. A Linux vendor cannot
   ship own binary kernel rpms for all of these machines. Runtime probing
   is needed instead.
   
   This patch adds a new "generic" subarchitecture that just acts as a
   dynamic switching layer for APIC drivers. It only tries to virtualize
   the APICs, no attempt is made to cover further incompatiblities.
   This means machines like the Visual Workstation, pc9800 or
   Voyager are not covered; but these are unlikely to be supported by
   binary distributions anyways.
   
   The generic arch reuses the existing interface in mach_ipi / mach_mpparse.h /
   mach_apic.h and just pulls it using some macros into an "struct genapic"
   object. The main APIC code does not recognize it, it is all hidden
   in the mach-generic include files.
   
   Auto detection of APIC types is supported in the usual way used by
   existing ports like Summit - checking ACPI or mptables for specific
   signatures - or it can be specified by the user using a new "apic="
   boot option. I also moved the DMI scan to before the generic
   subarchitecture probe, so DMI could be used in future too to probe
   specific machines.
   
   Some minor hacks were needed to avoid circular declaration of a few
   symbols, but overall it's fairly clean.
   
   The patch has been tested on a Summit machine, an generic 4 virtual CPUs
   Xeon and on an ES7000.

<akpm@digeo.com>
   [PATCH] Fix .altinstructions linking failures
   
   From: Andi Kleen <ak@muc.de>
   
   Some configs didn't link anymore because they got references from
   .altinstructions to __exit functions.  Fixing it at the linker level is not
   easily possible.  This patch just discards .text.exit at runtime instead of
   link time to avoid this.
   
   It will also fix a related problem with .eh_frame in modern gcc (so far only
   observed on x86-64, but could happen on i386 too)

<akpm@digeo.com>
   [PATCH] cpia driver __exit fix
   
   From: Andi Kleen <ak@muc.de>
   
   This driver was bogusly relying on the dropping of the __exit section at link
   time.  cpia_exit() is calling proc_cpia_destroy(), which doesn't even exist
   if !CONFIG_MODULE.

<akpm@digeo.com>
   [PATCH] fix OSS opl3sa2 compilation
   
   From: Zwane Mwaikambo <zwane@linuxpower.ca>
   
   There was a 2.4 merge from Alan Cox, but a few #ifdef's got shuffled around
   in the process, resulting in a broken build for !CONFIG_PM

<akpm@digeo.com>
   [PATCH] misc fixes
   
   - ifdef fix in kmap_types.h (Oleg Drokin)
   
   - remove redundant ext3 inclusions (Burton Windle)
   
   - Fix misidentified warning printk in vmalloc.c
   
   - radeon_cp printk warning fix (Randy Dunlap)
   
   - Update minimum binutils version for the ".incbin" thing in vsyscall.S
   
   - update raw driver to recent module API.
   
   - update my email address

<akpm@digeo.com>
   [PATCH] mwave build fix
   
   From: Michael Buesch <fsdeveloper@yahoo.de> and Paul Schroeder.
   
   mwavedd.h needs <linux/wait.h> and smapi.h

<akpm@digeo.com>
   [PATCH] drm timer initialisation fix
   
   The timer is being initialised too late (in ->open()).  If modprobe fails we
   get an uninitialised timer warning.

<akpm@digeo.com>
   [PATCH] slab: initialisation cleanup and oops fix
   
   From: Manfred Spraul <manfred@colorfullife.com>
   
   attached is the promised cleanup/bugfix patch for the slab bootstrap:
   
   - kmem_cache_init & kmem_cache_sizes_init merged into one function,
     called after mem_init().  It's impossible to bring slab to an operational
     state without working gfp, thus the early partial initialization is not
     necessary.
   
   - g_cpucache_up set to FULL at the end of kmem_cache_init instead of the
     module init call.  This is a bugfix: slab was completely initialized,
     just the update of the state was missing.
   
   - some documentation for the bootstrap added.
   
   The minimal fix for the bug is a two-liner: move g_cpucache_up=FULL from
   cpucache_init to kmem_cache_sizes_init, but I want to get rid of
   kmem_cache_sizes_init, too.

<akpm@digeo.com>
   [PATCH] sysrq-S, sysrq-U cleanups
   
   From: Christoph Hellwig <hch@lst.de>
   
   Change sysrq sync/remount from a magic bdflush hook to proper pdflush
   operations.  The sync operation reuses most of the regular sys_sync path now
   instead of implementing it's own superblock walking and (broken) local disk
   detection, the remount implementation has been moved to super.c, cleaned up
   and updated for the last two years locking changes.  It also shares some code
   with the regular remount path now.

<akpm@digeo.com>
   [PATCH] s/UPDATE_ATIME/update_atime/ cleanup
   
   From:  Stewart Smith <stewartsmith@mac.com>
   
   Remove the UPDATE_ATIME() macro, use update_atime() directly.

<akpm@digeo.com>
   [PATCH] irqreturn_t for drivers/net/pcmcia
   
   From: Zwane Mwaikambo <zwane@linuxpower.ca>
   
   update pcmcia drivers for new IRQ API

<akpm@digeo.com>
   [PATCH] keyboard.c Fix CONFIG_MAGIC_SYSRQ+PrintScreen
   
   From: Chris Heath <chris@heathens.co.nz>
   
   This patch fixes the PrintScreen key when CONFIG_MAGIC_SYSRQ is enabled.  It
   allows you to use that key normally when Alt is not being pressed.  Patch is
   against kernel 2.5.68.

<akpm@digeo.com>
   [PATCH] Don't use devfs names in disk_name()
   
   From: Christoph Hellwig <hch@lst.de>
   
   disk_name() (and hence bdevname()) are now returning devfs-style device names
   when devfs is enabled.
   
   This is nice, but these names are very long, and they overflow the 32-char
   buffers which these functions use.
   
   The choices are:
   
   a) Use a bigger buffer (increase BDEVNAME_SIZE).
   
      This might be practical.  But how big?
   
   b) return the name in kmalloced memory, make caller free it up.   Yuk.
   
   c) Add a print_bdevname() thing and intersperse that amongst the printk's.
      This would work.
   
   d) Just print the non-devfs device name.   That's what this patch does.

<akpm@digeo.com>
   [PATCH] devfs: API changes
   
   From: Christoph Hellwig <hch@lst.de>
   
   Some people may already have noticed that I've been revamping the devfs API
   recently.  The worst offender still left is devfs_register, it's prototype
   is:
   
       devfs_handle_t devfs_register(devfs_handle_t dir,
         const char *name, unsigned int flags,
         unsigned int major, unsigned int minor,
         umode_t mode, void *ops, void *info)
   
   Of these:
   
    - dir and flags are always zero
    - the return value is never used
    - info is only used in one driver which doesn't even need it for
      operation
    - umode_t always describes a character device
    - name very often comes from a stack buffer we sprintf'ed into
   
   so obviously we really want a much simpler API instead.  My first draft for
   this was:
   
      int devfs_mk_cdev(dev_t dev, umode_t mode,
         struct file_operations *fops, void *info,
         const char *fmt, ...)
   
   this removes the unused argumens, switches to a proper dev_t for the device
   number and allows to directly use a printf-like expression as name, getting
   rid of the temporary buffers.
   
   Now Al has reappeared and put the first steps of his CIDR for charater device
   on public ftp and we'll soon have a similar lookup object + fops mechanism in
   generic code as we already habe for blockdevices, i.e.  the devfs code to
   assign fops from an entry will become superflous as generic code already does
   it.  That means the fops and info arguments are obsolete before they were
   introduced, so I'd like to propose the following API instead:
   
      int devfs_mk_cdev(dev_t dev, umode_t mode, const char *fmt, ...)
   
   which is much nicer anyway.  The educated reader will notice that this is
   exactly the same prototype devfs_mk_bdev has so I'll probably get suggestions
   to merge those two into some kind of devfs_mk_node soon.  Personally I don't
   like that as character and blockdevices are two really separate entinities
   and I'll like to keep them as separate as possible.
   
   Example patch that introduces the API and converts drivers/input attached.
   
   Every driver which calls devfs_mk_cdev (about 50) needs conversion.  Note
   that the transition can happen in pieces - devfs_register continues to work
   after this patch, it's just the plan to get rid of it in the end.

<akpm@digeo.com>
   [PATCH] remove partition_name()
   
   From: Christoph Hellwig <hch@lst.de>
   
   partition_name() is a variant of __bdevname() that caches results and
   returns a pointrer to kmalloc()ed data instead of printing into a buffer.
   Due to it's caching it gets utterly confused when the name for a dev_t
   changes (can happen easily now with device mapper and probably in the
   future with dynamic dev_t users).
   
   It's only used by the raid code and most calls are through a wrapper,
   bdev_partition_name() which takes a struct block_device * that maybe be
   NULL.
   
   The patch below changes the bdev_partition_name() to call bdevname() if
   possible and the other calls where we really have nothing more than a dev_t
   to __bdevname.
   
   Btw, it would be nice if someone who knows the md code a bit better than me
   could remove bdev_partition_name() in favour of direct calls to bdevname()
   where possible - that would also get rid of the returns pointer to string
   on stack issue that this patch can't fix yet.

<akpm@digeo.com>
   [PATCH] switch most remaining drivers over to devfs_mk_bdev
   
   From: Christoph Hellwig <hch@lst.de>
   
   This is a pretty huge patch, but splitting it doesn't make a lot
   of sense..
   
   (USB may still need work)

<akpm@digeo.com>
   [PATCH] dvbdev fixes
   
   From: Monchi Abbad <kernel@axion.demon.nl>
   
   I found a mistake in the dvbdev.c file when creating the dvb /devfs files,
   it created /dev/dvb/adapter0device0 instead of /dev/dvb/adapter0/device0.
   But here is a simple fix.

<akpm@digeo.com>
   [PATCH] access_ok() race fix for 80386.
   
   From: Manfred Spraul <manfred@colorfullife.com>
   
   Real 80386 cpus ignore the write protected bit in the page tables when
   running in supervisory mode.  Thus the write protected bit must be checked by
   software.  The current implementation does that check during access_ok().
   This can result in data corruptions, if kswapd starts a swap-out between the
   access_ok and the actual write operation.
   
   To fix this, the patch moves the check from access_ok() into
   __copy_to_user_ll(), and redirects all user space writes into
   __copy_to_user_ll().  The patch only affects kernels build for 80386 cpus.
   Additionally, the patch removes the dead prototypes for __put_user_{1,2,4,8}.
   
   Due to the uninlining of access_ok, the .text segment is now ~ 8 kB shorter.

<akpm@digeo.com>
   [PATCH] hold i_sem on swapfiles
   
   If a swapfile is ftruncated while in use, subsequent swapout will scribble on
   the filesystem.
   
   This is a case of root-shoot-foot, but wrecking the fs is a fairly rude
   response.  And it's easy to fix: hold i_sem across the life of the swapon.

<akpm@digeo.com>
   [PATCH] remove unnecessary PAE pgd set
   
   From: Dave Hansen <haveblue@us.ibm.com>, Bill Irwin
   
   With PAE on, there are only 4 PGD entries.  The kernel ones never change,
   so there is no need to copy them when a vmalloc fault occurs.  This was
   this was causing problems with the split pmd patches, but it is still
   correct for mainline.
   
   Tested with and without PAE.  I ran it in a loop turning on and off 10 swap
   partitions, which is what excited the original bug.
   http://bugme.osdl.org/show_bug.cgi?id=640

<akpm@digeo.com>
   [PATCH] account for slab reclaim in try_to_free_pages()
   
   try_to_free_pages() currently fails to notice that it successfully freed slab
   pages via shrink_slab().  So it can keep looping and eventually call
   out_of_memory(), even though there's a lot of memory now free.
   
   And even if it doesn't do that, it can free too much memory.
   
   The patch changes try_to_free_pages() so that it will notice freed slab pages
   and will return when enough memory has been freed via shrink_slab().
   
   Many options were considered, but must of them were unacceptably inaccurate,
   intrusive or sleazy.  I ended up putting the accounting into a stack-local
   structure which is pointed to by current->reclaim_state.
   
   One reason for this is that we can cleanly resurrect the current->local_pages
   pool by putting it into struct reclaim_state.
   
   (current->local_pages was removed because the per-cpu page pools in the page
   allocator largely duplicate its function.  But it is still possible for
   interrupt-time allocations to steal just-freed pages, so we might want to put
   it back some time.)

<akpm@digeo.com>
   [PATCH] slab: additional debug checks
   
   From: Manfred Spraul <manfred@colorfullife.com>
   
   below is the promised patch for better slab debugging, against 2.5.68-mm4:
   
   Changes:
   
   - enable redzoning and last user accounting even for large objects, if
     that doesn't waste too much memory
   
   - document why FORCED_DEBUG doesn't enable redzoning&last user accounting
     for some caches.
   
   - check the validity of the bufctl chains in a slab in __free_blocks.
     This detects double-free error for the caches without redzoning.

<akpm@digeo.com>
   [PATCH] reduced overheads in fget/fput
   
   From: Dipankar Sarma <dipankar@in.ibm.com>
   
   
   fget() shows up on profiles, especially on SMP.  Dipankar's patch
   special-cases the situation wherein there are no sharers of current->files.
   
   In this situation we know that no other process can close this file, so it
   is not necessary to increment the file's refcount.
   
   It's ugly as sin, but makes a substantial difference.
   
   The test is
   
      dd if=/dev/zero of=foo bs=1 count=1M
   
   On 4CPU P3 xeon with 1MB L2 cache and 512MB ram:
   
      kernel           sys time     std-dev
      ------------     --------     -------
   
      UP - vanilla     2.104        0.028
      UP - file        1.867        0.019
   
      SMP - vanilla    2.976        0.023
      SMP - file       2.719        0.026

<akpm@digeo.com>
   [PATCH] allow i8042 interrupt sharing
   
   Ed Tomlinson has a machine on which some other device grabs IRQ12 first, and
   the 8042 doesn't work.  Enabling shared iRQs in the 8042 driver fixes it up.
   Alan has confirmed that this is OK.

<akpm@digeo.com>
   [PATCH] select() speedup
   
   From: Christoph Hellwig <hch@infradead.org>
   
   Originally by David Mosberger, testing by Roger Luethi.  From the ia64 tree.
   
   Basically, it avoids going to memory all the time.  What this does is make
   life a lot easier for gcc, so it can actually do a decent amount of
   optimization.  The restructuring clearly is less important for out-of-order
   CPUs, but even there it gives some benefits.
   
   More specifically, the loop is now structured to operate one "unsigned long"
   at a time, rather than one bit at a time.  Of course, you still need to
   process all the bits, but most of the relevant state in the inner loop can be
   kept in registers.
   
   Roger Luethi measured the routine on a bunch of different machines (mostly
   x86, IIRC: P5, P6, Crusoe, Athlons) and performance improved there, too (and
   it should definitely improve performance on any RISC-like architecture).
   
   
   Roger's benchmarking results (vs number of fd's):
   
                                          File                   TCP
   Numbfer of fd's:                  10   250  500          10   250   500
   
   UP, Pentium MMX 233MHz original    8.2 108.5 212.8   11.0 180.0 356.5
   UP, Pentium MMX 233MHz w/patch    7.4  87.6 171.1   10.4 163.6 323.4
   
   MP, Pentium MMX 233MHz original   15.7 283.8 562.8   18.9 354.4 705.5
   MP, Pentium MMX 233MHz w/patch   14.6 255.6 506.5   17.8 332.8 664.1
   
   UP, Athlon 1394 MHz original    1.3  13.4  26.1    1.9  24.7  48.6
   UP, Athlon 1394 MHz w/patch    1.2  11.0  21.5    1.6  22.3  43.8
   
   MP, Athlon 1394 MHz original    1.6  22.4  44.6    1.9  30.9  60.5
   MP, Athlon 1394 MHz w/patch    1.5  21.2  41.7    1.9  30.2  59.6

<akpm@digeo.com>
   [PATCH] Move security_d_instantiate hook calls
   
   From: Stephen Smalley <sds@epoch.ncsc.mil>
   
   This patch moves the security_d_instantiate hook calls in d_instantiate and
   d_splice_alias after the inode has been attached to the dentry.  This
   change is necessary so that security modules can internally call the
   getxattr inode operation (which takes a dentry parameter) from this hook to
   obtain the inode security label.

<akpm@digeo.com>
   [PATCH] ext3 xattr handler for security modules
   
   From: Stephen Smalley <sds@epoch.ncsc.mil>
   
   This patch against 2.5.68 implements an xattr handler for ext3 to support the
   use of extended attributes by security modules for storing file security
   labels.  As per the earlier discussion of extended attributes for security
   modules, this handler uses a "security." prefix and allows for per-module
   attribute names.  Security checking for userspace access to these attributes
   can be performed by the security module using the LSM hooks in fs/xattr.c,
   and the security module is free to internally use the inode operations
   without restriction for managing its security labels.  Unlike the trusted
   namespace, these labels are used internally for access control purposes by
   the security modules, and controls over userspace access to them require
   finer granularity than capable() supports.

<akpm@digeo.com>
   [PATCH] ext2 xattr handler for security modules
   
   From: Stephen Smalley <sds@epoch.ncsc.mil>
   
   This patch against 2.5.68 implements an xattr handler for ext2 to support the
   use of extended attributes by security modules for storing file security
   labels.  As per the earlier discussion of extended attributes for security
   modules, this handler uses a "security." prefix and allows for per-module
   attribute names.  Security checking on userspace access to these attributes
   can be performed by the security module using the LSM hooks in fs/xattr.c,
   and the security module is free to internally use the inode operations
   without restriction for managing its security labels.  Unlike the trusted
   namespace, these labels are used internally for access control purposes by
   the security module, and controls over userspace access to them require finer
   granularity than capable() supports.

<akpm@digeo.com>
   [PATCH] Change LSM hooks in setxattr
   
   From: Stephen Smalley <sds@epoch.ncsc.mil>
   
   This patch against 2.5.69 adds a security_inode_post_setxattr hook so that
   security modules can update the inode security structure after a successful
   setxattr, and it moves the existing security_inode_setxattr hook call after
   the taking the inode semaphore so that atomicity is provided for the
   security check and the update to the inode security structure.

<akpm@digeo.com>
   [PATCH] Work around include/linux/sunrpc/svc.h compilation
   
   From: Grzegorz Jaskiewicz <gj@pointblue.com.pl>
   
   gcc-2.94 fails to compile this code, alleging an invalid lvalue.
   An equivalent transformation fixes it up.

<greg@kroah.com>
   TTY: fix up lost devfs_mk_cdev change.

<greg@kroah.com>
   USB: change core to use devfs_mk_cdev() instead of devfs_register()

<greg@kroah.com>
   USB: fix up compile error in tiglusb driver due to devfs_mk_cdev() changes.

<greg@kroah.com>
   TTY: add lock to tty_dev_list, and handle tty names with more than one '/'
   
   Thanks to Al Viro for pointing out these problems.

<chas@locutus.cmf.nrl.navy.mil>
   [ATM]: Kill stray ATM_PDU_OVHD reference in lec.c

<mk@linux-ipv6.org>
   [IPSEC]: Fix ipcomp header handling in ipv4 IPCOMP.

<hch@lst.de>
   [PATCH] rationalize scsi_queue_next & friends
   
   (1)  second arg to scsi_queue_next_request() is only ever non-NULL
        inside scsi_lib.c and only used in the first conditional inside
        that function - ripped out of scsi_queue_next_request() and
        put into a new helper scsi_requeue_command().
   (2)  Most remaining callers of are in the form
      scsi_put_command(cmd);
      scsi_queue_next_request(q, NULL);
        add a new helper, scsi_next_command() for them.
   (2b) many callers of that still contain a repeated codepath, namely
        everything from scsi_release_request except the final kfree.
        New helper __scsi_release_request() for those.
   (3)  All remaining callers loop over the devices of a host and call
        scsi_queue_next_request() on them - new helper
        scsi_run_host_queues().
   (4)  scsi_queue_next_request() renamed to scsi_run_queue(), second
        arg is gone and it's static to scsi_lib.c now.

<rddunlap@osdl.org>
   [IPV6]: Remove incorrect comment in ip6_fib.c

<shemminger@osdl.org>
   [SYSKONNECT]: /proc module handling fixup.

<shemminger@osdl.org>
   [PKTGEN]: Module and dev cleanup.

<steve@gw.chygwyn.com>
   [DECNET]: Decnet not obeying netdev locking (from shemminger@osdl.org).

<hch@lst.de>
   [SLIP]: Move over to initcalls.

<davem@nuts.ninka.net>
   [IPV4]: Fix expiration test in rt_check_expire.

<rusty@rustcorp.com.au>
   [NETFILTER]: Fix skb_checksum args in ip_nat_core.c

<david-b@pacbell.net>
   [PATCH] USB Gadget API (1/6)
   
   This patch createss <linux/usb_gadget.h>, the gadget API
   and inlined implementation.
   
   There's additional kerneldoc, which I won't submit at
   this time, available.

<david-b@pacbell.net>
   [PATCH] Net2280 driver (2/6)
   
   This patch creates drivers/usb/gadget/net2280.[hc],
   providing a driver for NetChip's "Net2280 PCI USB 2.0
   High Speed Peripheral Controller".
   
   It implements the API included in the first patch.
   
   The driver has behaved well with chiprev 0100 under
   stress tests with Gadget Zero and the ethernet model
   driver, and has passed sanity tests for chiprev 0110.

<david-b@pacbell.net>
   [PATCH] USB "Gadget Zero" driver (3/6)
   
   This patch adds "Gadget Zero" (drivers/usb/gadget/zero.c).
   
   Gadget Zero is a simple gadget driver that's useful for
   testing controller drivers, and as an example to be used
   for clone/modify style development.
   
   This driver implements two configurations, and needs only
   two bulk endpoints (in addition to ep0) ... so pretty much
   any USB device controller should be usable with it in
   one configuration or another.  It (optionally) supports
   high speed devices, and has passed the USB-IF "chapter 9"
   device model conformance tests.
   
   It's worth noticing the kinds of hardware differences that
   gadget drivers need to cope with.  Endpoints differ, in
   ways that must be reflected various ways in descriptors.
   And sometimes chip errata cause interoperability problems;
   for example, an sa1100 can't change configurations after
   enumerating.

<david-b@pacbell.net>
   [PATCH] USB Ethernet Gadget (4/6)
   
   This patch adds an "Ethernet Gadget" driver, implementing
   the CDC Ethernet model (drivers/usb/gadget/ether.c).
   
   It interops with the current CDC Ether drivers on Linux,
   both 2.4 (CDCEther, using Marcelo's latest) and 2.5
   (cdc-ether with recent patches, or on 2.5.68 "usbnet")
   
   On a net2280, this has successfully streamed dozens of
   megabytes per second using "ttcp" (high speed, and using
   "usbnet" on the host side), for days at a time.  And no
   problems using SSH/NFS/etc in lighter duty testing.
   
   It's possible this will need tweaking to cope with UDC
   bugs on Intel's pxa25x controllers, presenting itself
   as a non-CDC device. (I'm told altsettings are even
   more broken than originally specified to be.)

<david-b@pacbell.net>
   [PATCH] USB Gadget string utility (5/6)
   
   This adds utility code that gadget drivers can use to manage
   string descriptors (drivers/usb/gadget/usbstring.c) in the
   common case that the ISO-8859/1 character set is in use.
   
   Both "Gadget Zero" and the Ethernet gadget code use this.

<david-b@pacbell.net>
   [PATCH] kbuild/kbuild for USB Gadgets (6/6)
   
   This patch adds kconfig/kbuild support for the preceding
   code, so that an EXPERIMENTAL option appears in the
   USB part of the config menus.
   
   Once a USB device controller driver is configured (which
   just now means net2280, but sa11x0 and pxa25x options
   are just waiting for updates!), gadget driver options
   are also available.

<david-b@pacbell.net>
   [PATCH] USB: gadget cleanup of #ifdefs
   
   > can you get rid of all of the #ifdef HAVE_DRIVER_MODEL stuff?
   
   Done.  Now this code "knows" it's running in a 2.5
   environment, and needs modifications to run on 2.4.
   
   I also changed the file modes in the module_parm()
   calls so the parameters will be writable when they
   eventually show up in sysfs; and fixed a typo.
   
   Compile-tested with and without DEBUG enabled.

<david-b@pacbell.net>
   [PATCH] USB: gadget zero, loopback config fix
   
   If the host writes OUT packets using URB_ZERO_PACKET
   (or its analogue on other USB host systems), then the
   loopback configuration should set req->zero, to use that
   same transfer termination policy when it writes the
   response back IN to the host.

<david-b@pacbell.net>
   [PATCH] USB gadget: net2280: dmachain off, zlp pio ok
   
   This patch has two small fixes for issues that people
   reported to me yesterday:
   
     - One of the out-of-tree drivers sees odd things
       happening when dma chaining is enabled.  (The
       in-tree drivers seem fine with it.)  So disable
       for now; it's easily enabled if needed.
   
     - Zero Length Packets (ZLPs):
   
        * Should now read/write ok with PIO.
   
        * On DMA endpoints, explicit ZLPs need PIO.
          Until they do, don't allow queuing zero length
          buffers onto DMA endpoints.

<torvalds@penguin.transmeta.com>
   Use the right CFLAGS for source checking. Fix grammar.

<davem@nuts.ninka.net>
   [MPLS]: Add ethernet protocol numbers.

<davem@nuts.ninka.net>
   [NETFILTER]: Fix icmp_reply_translation args.

<davem@nuts.ninka.net>
   [MPLS]: Add MPLS support to PPP.

<maxk@qualcomm.com>
   [Bluetooth] Add required infrastructure for socket module refcounting.
   Initialize ->owner fields in Bluetooth protocols and drivers.

<davem@nuts.ninka.net>
   [SKFDDI]: Use SET_MODULE_OWNER.

<davem@nuts.ninka.net>
   [IPV6]: Pass route attributes all the way down.

<davidm@tiger.hpl.hp.com>
   ia64: Patch from Asit K. Mallick: fix a few places where last_fph_cpu
      wasn't updated and one place in the sigreturn path where
      the fph-owner wasn't set.

<jmorris@intercode.com.au>
   [IPSEC]: Use xfrm_state_put in pfkey_msg2xfrm_state.

<chas@cmf.nrl.navy.mil>
   [ATM]: Make he driver code more palatable.

<davem@nuts.ninka.net>
   [NETFILTER]: Fix ip_nat_core.c:manip_pkt return value checks.

<willy@debian.org>
   [DLCI]: Use module_init and fix ioctl handling.

<ak@muc.de>
   [NET]: Clean up socket filter compat handling.

<davej@codemonkey.org.uk>
   [AGPGART] Remove duplicate copying of ->chipset in agp_copy_info()

<yoshfuji@linux-ipv6.org>
   [MAINTAINERS/CREDITS]: Add entries for USAGI hackers.

<jmorris@intercode.com.au>
   [XFRM]: Make use of xfrm_state_hold().

<jmorris@intercode.com.au>
   [XFRM]: Use xfrm_pol_hold().

<hch@lst.de>
   [NET]: Switch x25_asy over to initcalls.

<davem@nuts.ninka.net>
   [XFRM]: Fix typos in xfrm_state_put() changes.

<marcel@holtmann.org>
   [Bluetooth] Send the correct values in RPN response
   
   This patch fixes a bug in rfcomm_recv_rpn(), which do not set
   the correct values for xon_char, xoff_char and flow_ctrl.

<marcel@holtmann.org>
   [Bluetooth] Handle priority bits in parameter negotiation
   
   The PN response have to return the same value for the priority
   bits as in the request. The priority value is now also stored
   in the rfcomm_dlc structure and the default value is 7.

<torvalds@home.transmeta.com>
   Make aic7xxx driver use ANSI prototypes. My checker tool refuses
   to touch K&R C.

<maxk@qualcomm.com>
   [Bluetooth] L2CAP config req/rsp fixes. 
   We have to set continuation flag in config rsp if it was set in req.

<greg@kroah.com>
   [PATCH] i2c: add i2c_adapter class support

<mark@alpha.dyndns.org>
   [PATCH] I2C: add more classes
   
   Add I2C classes for analog and digital cameras, and fix a typo.

<torvalds@penguin.transmeta.com>
   Annotate LDT system calls with user pointer annotations.

<torvalds@penguin.transmeta.com>
   Annotate x86 system calls with user pointer annotations.

<torvalds@penguin.transmeta.com>
   Fix mismatch between i387 user copy function declaration and
   definition.

<torvalds@penguin.transmeta.com>
   Annotate IPC system calls with user pointer annotations

<torvalds@penguin.transmeta.com>
   Annotate vm86_info as a pointer to user space.

<warp@mercury.d2dc.net>
   [PATCH] I2C: Another it87 patch.
   
   This is against my last.
   
   While the old code most definitely did /something/ to the register for
   setting the fan div, the 'what' is a more interesting question.
   
   To be honest I could not figure out what it was trying to do, because
   the way it was inserting values disagreed with not only the data sheet,
   but how it parsed the very same register.
   
   This corrects the issue, and allows one to properly control the divisor
   on all 3 fans, including the (much more limited) 3rd fan.

<warp@mercury.d2dc.net>
   [PATCH] I2C: Yet another it87 patch.
   
   Ok, after writing up something in the way of a perl script to make some
   sense of the data for voltages, and finding that there is no sense to
   make, I took a longer look at things.
   
   The it87 driver in 2.5.x is doing some, down right /odd/ math on the
   numbers for the in_input* readings, and the 2.4.x driver is doing
   something quite different.
   
   And while it might be possible to get sane numbers out of the 2.5.x
   driver, people /expect/ to get the numbers that they were getting from
   2.4.x.
   
   So this patch puts things back to the simpler calculations done by the
   2.4.x lm-sensors drivers, and my script confirms that the numbers come
   out right.

<warp@mercury.d2dc.net>
   [PATCH] I2C: And another it87 patch.
   
   Don't provide min/max for in8, which allowed one to scribble on
   registers one should not be messing with. (My fault, oops.)
   
   The setting of the temp high/low registers was off by one, not mine this
   time.  While I was at it, I reordered a few other register accesses to
   be base 0 instead of base 1.
   
   The temp interface was slightly incorrect, degrees * 100 instead of
   degrees * 1000, also fixed.
   
   And lastly, when changing the fan count divisor, fix up the min setting
   to still be roughly the same. (Previously the meaning of the value in
   the register changed, but not the value itself, resulting in, undesired
   surprises.)

<greg@kroah.com>
   [PATCH] i2c: register the i2c_adapter_driver so things link up properly in sysfs

<rohit.seth@intel.com>
   [PATCH] ia64: enable 1G hugepage size for Mckinley
   

<corbet@lwn.net>
   [PATCH] cpufreq class fix

<greg@kroah.com>
   [PATCH] driver core: Add driver symlink to class devices in sysfs.
   
   Thanks to Mike Anderson for the idea for this.

<greg@kroah.com>
   [PATCH] driver core: remove unneeded line in class code.
   
   Thanks to Jonathan Corbet for pointing this out.

<maxk@qualcomm.com>
   [Bluetooth] Detect and log error condition when first L2CAP fragment is too long.

<vandrove@vc.cvut.cz>
   [PATCH] Fix potential runqueue deadlock
   
   send_sig_info() has been broken since 2.5.60.
   
   The function can be invoked from a the time interrupt (timer_interrpt ->
   do_timer -> update_process_times -> -> update_one_process -> (
   do_process_times, do_it_prof, do_it_virt ) -> -> send_sig ->
   send_sig_info) but it uses spin_unlock_irq instead of the correct
   spin_unlock_irqrestore. 
   
   This enables interrupts, and later scheduler_tick() locks runqueue
   (without disabling interrupts).  And if we are unlucky, a new interrupt
   comes at this point.  And if this interrupt tries to do wake_up() (like
   RTC interrupt does), we will deadlock on runqueue lock :-(
   
   The bug was introduced by signal-fixes-2.5.59-A4, which split the
   original send_sig_info into two functions, and in one branch it started
   using these unsafe spinlock variants (while the "group" variant uses
   irqsave/restore correctly). 

<maxk@qualcomm.com>
   [Bluetooth] RFCOMM must wait for MSC exchange to complete before sending data.

<davej@codemonkey.org.uk>
   [AGPGART] death of generic-3.0.c  = folded into generic.c

<davej@codemonkey.org.uk>
   [AGPGART] Add proper AGP3 initialisation routine.

<davej@codemonkey.org.uk>
   [AGPGART] Make sure we don't poke reserved bits when enabling agp v3

<davej@codemonkey.org.uk>
   [AGPGART] Add missing #defines from last checkin.

<davej@codemonkey.org.uk>
   [AGPGART] Use symbolic defines for isoch registers in isoch code.

<davej@codemonkey.org.uk>
   [AGPGART] CodingStyle nitpicks for isoch.c

<davidm@tiger.hpl.hp.com>
   ia64: Prepare for GCC v3.4.  Sync with 2.5.69.

<davidm@tiger.hpl.hp.com>
   ia64: Patch by John Marvin: Add virtual mem-map support.

<davem@nuts.ninka.net>
   [TCP]: NULL out newsk->owner in tcp_create_openreq_child().

<jgarzik@redhat.com>
   [SCTP]: Fix missing Kconfig dependency.

<shemminger@osdl.org>
   [IPV4/IPV6]: inetsw using RCU.

<yoshfuji@linux-ipv6.org>
   [IPV6]: Convert /proc/net/raw6 to seq_file.

<davej@codemonkey.org.uk>
   [AGPGART] Make the agp 3.5 use the agp3 code for enabling, leaving just the isoch stuff in isoch.c

<James.Bottomley@steeleye.com>
   [PATCH] sd.c spinup code can go into a wild loop
   
   This problem was reported against 2.4 by Eddie.Williams@SteelEye.com
   
   There's a problem in the sd spinup code in that if the unit returns NOT
   READY, we begin to spin it up, but thereafter if it returns anything
   other than NOT READY or success, the while loop in the spinup code will
   be executed *without* the 1s delay that's in the NOT READY case.
   
   The problem was seen with a real device: Compaq multi-path storage
   arrays return NOT READY to probes down inactive paths, but when the
   start unit is sent to activate the path, they can then respond back with
   error conditions.
   
   The fix is to terminate the while loop for any unexpected return.

<hch@lst.de>
   [PATCH] some warning fixes

<hch@lst.de>
   [PATCH] fix the aacraid merge a bit more

<hch@lst.de>
   [PATCH] scsi_report_device_reset
   
   aic7xxx/79xx wants a variant of scsi_report_bus_reset that operates
   only on a single device.  Implement it to get rid of shost->my_devices
   traversals in drivers.  (and move both to scsi_error.c)

<andmike@us.ibm.com>
   [PATCH] scsi_host sysfs updates scsi-misc-2.5 [1/2]
   
   -andmike
   --
   Michael Anderson
   andmike@us.ibm.com
   
   
   DESC
   scsi_debug cleanups for scsi-misc-2.5
   - Remove release function.
   - Remove scsi_debug wrapper driver register / unregister functions.
   - Douglas's target == this_id fix.
   - Remove some old cleanups that where incorrect.
   - Move code back into sdebug_driver_remove.
   EDESC
   
   
    drivers/scsi/scsi_debug.c |   78 ++++++++++++++--------------------------------
    drivers/scsi/scsi_debug.h |    1
    2 files changed, 25 insertions(+), 54 deletions(-)

<andmike@us.ibm.com>
   [PATCH] scsi_host sysfs updates scsi-misc-2.5 [2/2]
   
   Here is an update of the patch with the externs in scsi_priv.h
   
   -andmike
   --
   Michael Anderson
   andmike@us.ibm.com
   
   DESC
   scsi shost sysfs cleanups for scsi-misc-2.5
   - Add LLDD short name to scsi_host struct device.
   - scsi_host_release now calls scsi_free_shost.
   - Switched from device_register / device_unregister and class_register
   / class_register to initialize, add, del, put pairs.
   - Moved some function from scsi_register and scsi_unregister.
   - Filled in scsi_host_put and scsi_host_get.
   
   Rev 2 move externs to scsi_priv.h
   EDESC
   
   
    drivers/scsi/hosts.c      |   33 ++++++++++++++++++++++++++++-----
    drivers/scsi/scsi_priv.h  |    2 ++
    drivers/scsi/scsi_sysfs.c |   19 +++++++++++--------
    3 files changed, 41 insertions(+), 13 deletions(-)

<hch@lst.de>
   [PATCH] consolidate devlist handling in a single file
   
   Currently it's spread all over the scsi midlayer but having this
   nicely separate out to a file of it's own without exposing the
   data structures sounds like a good idea.

<chas@cmf.nrl.navy.mil>
   [ATM]: HE and IPHASE driver fixes.

<yoshfuji@linux-ipv6.org>
   [NET]: Set file_operations->owner as appropriate.

<davem@nuts.ninka.net>
   [VLAN]: vlanproc.c needs module.h

<axboe@suse.de>
   [PATCH] bio_endio() increments bio->bi_sector
   
   increment bi_sector in bio_endio() so make_request_fn drivers don't
   have to do this accounting themselves.

<axboe@suse.de>
   [PATCH] make MO drive work with ide-floppy/ide-cd
   
   Resend of the ide-cd buggy debug check removal.
   
   From der.eremit@email.de.

<axboe@suse.de>
   [PATCH] shrink deadline hash size
   
   Limit deadline hash to 32 entries instead of 1024. This has been benched
   and profiled extensively and shows no increased system time.
   
   Also, move "hot" entries to the front of the list.

<axboe@suse.de>
   [PATCH] dynamic request allocation
   
   This patch adds dynamic allocation of request structures. Right now we
   are reserving 256 requests per initialized queue, which adds up to quite
   a lot of memory for even a modest number of queues. For the quoted 4000
   disk systems, it's a disaster.
   
   Instead, we mempool 4 requests per queue and put an upper limit on the
   number of requests that we will put in-flight as well. I've kept the 128
   read/write max in-flight limit for now. It is trivial to experiement
   with larger queue sizes now, but I want to change one thing at the time
   (the truncate scenario doesn't look all that good with a huge number of
   requests, for instance).
   
   Patch has been in -mm for a while, I'm running it here against stock 2.5
   as well. Additionally, it actually kills quite a bit of code as well

<James.Bottomley@steeleye.com>
   [PATCH] Correct typo in linux/scsi/scsi.h and introduce new
   
   I notice we seem to have a typo in the SAM_ status codes (they say
   IMMEDIATE where they mean INTERMEDIATE).
   
   I've also introduced a new macro who's job is to return true if any of
   the possible good return codes is found.  This means
   
   SAM_STAT_GOOD
   SAM_STAT_INTERMEDIATE
   SAM_STAT_INTERMEDIATE_CONDITION_MET
   
   and for now
   
   SAM_STAT_COMMAND_TERMINATED
   
   By and large, this is currently irrelevant to us, since we don't use
   linked commands and I've never met a device using COMMAND TERMINATED,
   but it may help us in the future.

<hch@lst.de>
   [PATCH] switch sb1000 to new style net init & pnp
   
   This cleans up the driver big time and gets rid of a big ugly wart
   in setup.c.  Note that I don't have the hardware so this is only
   compile-tested.

<jt@bougret.hpl.hp.com>
   [PATCH] irq fixes for wavelan_cs/netwave_cs
   
           This patch for 2.5.68-bk11 will fix the irq handler of some
   obsolete wireless drivers (wavelan, wavelan_cs and netwave_cs) plus
   assorted fixes. All those drivers have been tested on a SMP box.

<jt@bougret.hpl.hp.com>
   [PATCH] Wireless Extension 16
   
           This patch for 2.5.68-bk11 will update Wireless Extension to
   version 16 :
           o increase bitrate and frequency number for 802.11g/802.11a
           o enhanced iwspy support
           o minor tweaks and cleanups
   
           This patch is only for the core of WE. The patches for the
   individual drivers have been sent to their respective maintainers.
      Compared to the previous version I sent you a few weeks ago,
   I've just updated to the latest kernel.

<jt@bougret.hpl.hp.com>
   [PATCH] WE-16 for Wavelan ISA driver
   
           This update the Wavelan ISA driver for Wireless Extension 16
   (going with my previous patch).

<jt@bougret.hpl.hp.com>
   [PATCH] WE-16 for Wavelan Pcmcia driver
   
           This patch update the Wavelan Pcmcia driver for Wireless
   Extensions 16, and also remove all the backward compatibility cruft
   that is broken anyway.

<paulus@samba.org>
   [PATCH] Update mac ethernet drivers
   
   This patch updates the bmac and mace ethernet drivers so that their
   interrupt routines return an irqreturn_t, and updates the bmac driver
   to use a spinlock rather than global cli/sti.

<dean@arctic.org>
   [PATCH] better ali1563 integrated ethernet support
   
   it turns out the tulip driver is a much better driver for the integrated
   ali1563 ethernet than the dmfe driver... the dmfe driver gets tx timeouts
   every ~15s and can't receive over 5MB/s.  but with the small tulip patch
   below i'm seeing 11MB/s+ in both directions without problems.

<mzyngier@freesurf.fr>
   [PATCH] depca update (was Re: [Patch] DMA mapping API for Alpha)
   
   this patch has been sleeping
   in Alan tree for quite some time. It updates the depca driver to the
   EISA/sysfs API, gets rid of check_region, and properly reserve memory
   region. Patch is against latest BK.

<jgarzik@redhat.com>
   [bk] add useful tip to bk kernel howto
   
   Kudos to Wayne Scott @ BitMover for this.

<mikpe@csd.uu.se>
   [PATCH] restore sysenter MSRs at APM resume
   
   This changes apm.c to invoke suspend.c's save and restore processor
   state procedures around suspends, which fixes the SYSENTER MSR problem.
   
   The patch also decouples sysenter.c from SOFTWARE_SUSPEND: the variables
   used (only!) in suspend_asm.S are moved there, and the include file now
   declares the procedures called from apm.c (previously they were only
   called from suspend_asm.S).

<B.Zolnierkiewicz@elka.pw.edu.pl>
   [PATCH] fix lost IDE interrupt problem
   
   Alan and I were investigating this, but we don't know why the problem
   occurs.
   
   This reverts the previous handling of masked_irq, and fixes the problem.

<jejb@raven.il.steeleye.com>
   Fix thinko introduced into include/scsi/scsi.h
   
   SAM_STAT_* are return codes, not bitmaps

<rth@kanga.twiddle.net>
   [ALPHA] Fix titan_intr_nop for 2.5 irq api changes.

<davem@nuts.ninka.net>
   [IPV4/IPV6]; Missing schedule_net() in inet{,6}_del_protocol.

<davem@nuts.ninka.net>
   [NETFILTER]: Fix stale skb data pointer usage in ipv4 NAT.

<davej@codemonkey.org.uk>
   [AGPGART] add checks to agp_copy_info() before dereferencing.
   Spotted by Andi Kleen with AGPless IOMMU setup.

<davem@nuts.ninka.net>
   [IPV6]: Missing sk->family check in UDPv6 multicast handling.

<torvalds@home.transmeta.com>
   Bartlomiej says: 'Please revert this patch, it is unfinished.'
   We'll do it *after* IDE taskfile IO is done
   Cset exclude: axboe@suse.de|ChangeSet|20030511184946|49736

<david-b@pacbell.net>
   [PATCH] more kbuild tweaks]
   
   This fixes a typo reported by Geert, and more significantly
   fixes static linking so that it works even when only the
   device side of USB is enabled, and the host side (CONFIG_USB)
   isn't.

<david-b@pacbell.net>
   [PATCH] Fix big-endian USB gadget build
   
   Initializers must be constant expressions, and thus we can't use the
   complex expression "cpu_to_le*()" - the end result of which may have a
   constant _value_ but the expression itself isn't a constant expression.
   
   So use the explicitly constant "__constant_cpu_to_*()" expression
   instead.

<akpm@digeo.com>
   [netdrvr] remaining irqreturn_t changes

<rusty@rustcorp.com.au>
   [NETFILTER]: Move ip_fw declarations into header file.

<zaitcev@redhat.com>
   [SPARC]: Fix shadowing of global max_pfn, kill BOOTMEM_DEBUG.

<zaitcev@redhat.com>
   [SPARC]: Allow esp to use highmem_io on sparc32.

<zaitcev@redhat.com>
   [SPARC]: New compact show_regs format.

<hch@lst.de>
   [PATCH] two more templates in headers
   
   I missed aic7xxx_old and cciss_scsi.  For the first it's the trivial
   move, for the second it's the patch to move to scsi_add_host & friend
   as already ACKed by Steve when he still was cciss maintainer.

<bgerst@didntduck.org>
   [PATCH] Fix ioperm bitmap
   
   This makes sure that the ioperm bitmap in the TSS is correctly set up
   during the first ioperm() call.  Without this the TSS bitmap contains
   random garbage until the next context switch.

<agrover@groveronline.com>
   ACPI: kobject fix (Greg KH)
   Here's a small patch that fixes the logic of the kobject creation and
   registration in the acpi code (since we use kobject_init(), we need to
   use kobject_add(), not kobject_register() to add the kobject to the
   kernel systems).

<agrover@groveronline.com>
   ACPI: Allow ":" in OS override string (Ducrot Bruno)

<agrover@groveronline.com>
   ACPI: Interpreter update to 20030509
   Changed the subsystem initialization sequence to hold off installation of
   address space handlers until the hardware has been initialized and the
   system has entered ACPI mode.  This is because the installation of space
   handlers can cause _REG methods to be run.  Previously, the _REG methods
   could potentially be run before ACPI mode was enabled.
   
   Fixed some memory l