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

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

Advertisement

Change log for patch v2.5.71

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

<perex@suse.cz>
   ALSA update
     - ISA PnP drivers - fixed failure path (missing pnp_unregister_card_driver() call)

<shaggy@shaggy.austin.ibm.com>
   Update JFS team members in jfs.txt

<anton@samba.org>
   ppc64: comment fix from Milton Miller

<anton@samba.org>
   ppc64: Fix problem creating zImage/zImage.initrd multiples times from Bryan Logan

<anton@samba.org>
   ppc64: clean up SLB reload code and remove some unnecessary isyncs

<jgrimm@touki.austin.ibm.com>
   [SCTP] Verify contents of SACK against underrun.
   
   Verify that the counts for duptsns and gapacks can actually
   fit in the skb so we won't underrun. 

<jgrimm@touki.austin.ibm.com>
   [SCTP] Use slab cache for sctp_chunk & sctp_bind_bucket.

<perex@suse.cz>
   ALSA update 0.9.3a
     - PCM - recoded link group locking
     - MPU401 - replaced RX_LOOP and TX_LOOP bits with atomic_t variables
     - ICE17xx - moved ak4xxx routines to separate module (snd-ak4xxx-adda)
     - CS8427 - fixed initialization, added Q-subcode control
     - AC97 - added more patches for Wolfson codecs
     - CMIPCI - added 24-bit sample support for S/PDIF
     - maestro3 - fixes
     - via82xx - workaround for Award BIOS, dxs_support module parameter
     - ymfpci - fixed initialization
     - intel8x0 - code cleanups, recoded inialization of pcm streams
     - sa11xx-uda1341 - removed debug code and other cleanups
     - irqreturn_t cleanups

<shaggy@shaggy.austin.ibm.com>
   JFS: i_acl & i_default_acl are not being re-initialized
   
   These fields were not being reset to JFS_ACL_NOT_CACHED when jfs_inode_info
   was reused from the slab cache.

<jgrimm@touki.austin.ibm.com>
   [SCTP] Bug fix for bind_bucket leak & heartbeat error count.
   
   Off by one error causes us to think that there was an error one the first 
   heartbeat timeout.  Also, fix leak in bind_buckets. 

<bunk@fs.tum.de>
   kbuild: [PATCH] document modules_install in "make help"
   
   The patch below adds information about modules_install to "make help".

<sam@ravnborg.org>
   kbuild: [PATCH] Remove duplicate definitions in Makefile.build
   
   After introducing support for the checker tool, is was
   apparent that too much duplicate definitions were present for
   the two cases with and without CONFIG_MODVERSIONS.
   This patch collects the definitions, without adding new functionality.

<jgrimm@touki.austin.ibm.com>
   [SCTP] Use non-prefetch list walker for short list.
   
   Something weird is happening with prefetch during our module init.  
   Notified Andi, but this is at least a workaround for us dying.

<jgrimm@touki.austin.ibm.com>
   [SCTP] CANT_STR_ASSOC could/should return error up to user. (ardelle.fan)

<sri@us.ibm.com>
   [SCTP] Support for socket options that pass both addr and associd.

<jgrimm@touki.austin.ibm.com>
   [SCTP] Multiple causes may be embedded in an ERROR chunk (ardelle.fan)

<jgrimm@touki.austin.ibm.com>
   [SCTP] Don't use path thresholds determine the overall error thresh.
   
   This was too cautious; let the user set what they really want.  This
   is preventing the Lockheed folks from doing interesting failover tests
   setting all path_retrans to 0 (for immediate failover). 

<hch@lab343.munich.sgi.com>
   acpi serial stuff

<sri@us.ibm.com>
   [SCTP] Support for SCTP_GET_PEER_ADDR_INFO socket option.

<gibbs@overdrive.btc.adaptec.com>
   Aic6xxx and Aic79xx Driver Update
    o Remove errno and unistd.h usage
    o Remove splitting of S/G elements that cross
      a 4GB boundary.  Code above the driver already
      guatantees that this cannot happen.
    o Simplify irqreturn_t compatibility glue.
    o Fix GCC 3.3 warnings.

<gibbs@overdrive.btc.adaptec.com>
   Aic79XX Driver Update
    o Fixup spelling of "coalesce" and derivatives.

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx Driver Update
    o Fix a few twin channel target id calculation bugs
      in the domain validation code.  These would only
      effect the 2742T.

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx Driver README update
    o Add a changelog entry for 6.2.34

<gibbs@overdrive.btc.adaptec.com>
   Merge in latest 2.5.X tree changes.

<sri@us.ibm.com>
   [SCTP] Rename struct sctp_protocol as struct sctp_globals and define
          macros for all the global fields in the structure.
   
   This is to avoid the confusion with the static variable sctp_protocol
   of type struct inet_protocol. Also fixes some calls that pass the
   global variable as an argument.

<sri@us.ibm.com>
   [SCTP] SCTP_SHUTDOWN_EVENT notification support.

<hch@de.rmk.(none)>
   [PATCH] kill register_pccard_driver
   
   I tried to get as much in as possible through the maintainers but
   didn't get much feedback.. (Except two batches included and Kai
   ACKing the ISDN stuff).
   
   So here's a big patch to move the reamining users over to
   pcmcia_register_driver and kill it off.

<anton@samba.org>
   ppc64: fix compile warnings

<anton@samba.org>
   ppc64: fix misreporting of unhandled IRQs in xics IPI

<anton@samba.org>
   ppc64: cleanup some hardcoded constants

<andmike@us.ibm.com>
   [PATCH] Call release on scsi legacy LLDD
   
   In the sysfs scsi host reference counting merge the call to a legacy hosts
   release function was removed.
   
   This patch adds the call back in.
   
   This patch was tested with insmod / rmmod on LLDDs using the legacy interface
   and LLDDs using the new interface:
   
   Legacy Interface:
   qla2xxx-v8.00.00b1
   qlogicisp
   aic7xxx_old (Does not call scsi_unregister in release, but unloaded)
   
   New Interface:
   scsi_debug
   aic7xxx (Many illegal context warnings caused by mid vs LLDD primitive
            mixing, but appears to unload clean).
   
    drivers/scsi/hosts.c |    4 ++++
    1 files changed, 4 insertions(+)

<oliver@neukum.org>
   [PATCH] fix irq handling for DC395
   
   this fix makes sure that all test in irq handling in that
   driver are for NULL thus fixing an oops.

<dougg@torque.net>
   [PATCH] scsi_mid_low_api.txt in lk 2.5.69
   
   This is a catch up, applying the patch that Andries
   Brouwer sent a while back. It will apply to lk 2.5.69
   and 2.5.69-bk10 .

<hch@lst.de>
   [PATCH] give ->proc_info a struct Scsi_Host * parameter
   
   Yeah, I know the method is obsolete but for proper refcounting we
   need to get rid of all those scsi_host_hn_get() abusers.
   
   scsi_host_hn_get() and scsi_host_put() are not exported anymore
   after this patch.

<stevef@steveft21.ltcsamba>
   Make return code on failed cifs mounts more specific and fix incorrect smb to posix return code conversions

<davej@codemonkey.org.uk>
   [PATCH] AM53C974 request region.
   
   Request port before using it.

<anton@samba.org>
   ppc64: replace MAX_PACAS with NR_CPUS

<anton@samba.org>
   ppc64: Fix a bad shift against PCI_BASE_CLASS_BRIDGE from Will Schmidt 

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx and Aic79xx Updates
    o Consistently access the COMMAND PCI space register
      via 16bit operations.

<gibbs@overdrive.btc.adaptec.com>
   Aic79xx Update
    o Add support for the 7901B

<gibbs@overdrive.btc.adaptec.com>
   Aic79xx Driver Update
    o Change handling of the Rev. A packetized lun output bug
      to be more efficient by having the sequencer copy the
      single byte of valid lun data into the long lun field.

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx Driver version 6.2.35

<perex@suse.cz>
   ALSA update 0.9.3c
     - added sscape driver
     - documentation updates
     - removed proc dynamic device directory
     - fixed deadlock in PCM midlevel
     - more PnP code cleanups
     - ICE1712/1724 driver - cleanups
     - usbaudio driver
       - added preliminary support for streams II/III
       - more quirk update for extigy
     - intel8x0 driver - nforce fixes
     - sb8 driver - full duplex MIDI UART code for DSP 2.xx+

<jejb@raven.il.steeleye.com>
   Fix up proc_info conversion in 53c700
   
   The host variable is now passed in, so we shouldn't have a
   similar variable defined in the proc_info routine

<anton@samba.org>
   ppc64: fix for boot cpu > 31

<perex@suse.cz>
   ALSA update
     - fixed sscape driver Makefile
     - fixed spin deadlock in PCM midlevel
     - added AC'97 detection workaround to ens1370 and nm256 drivers

<jejb@mulgrave.(none)>
   Fix while in spinup loop of sd
   
   We must loop on UNIT ATTENTION sense (to clear the condition).  However, the code 
   is assuming that a sense condition will always be accompanied by a not good status.
   We have several drivers in the tree that return GOOD with DRIVER_SENSE, so make the
   loop condition reflect this.

<anton@samba.org>
   ppc64: Report cpus > 32 in proc/cpuinfo correctly

<mochel@osdl.org>
   drver model: Add release method for class devices.
   
   From Manuel Estrada Sainz <ranty@debian.org>
   
   So device classes can intercept the generic object release method.

<mochel@osdl.org>
   sysfs: Fix binary file handling
   
   From Manuel Estrada Sainz <ranty@debian.org>
   
   
   >   - sysfs-bin-flexible-size.diff:
   >       Make dynamically sized files possible.  And return the right
   >       value on successful write.
   >
   >   - sysfs-bin-lost-dget.diff:
   >       I was having trouble when calling request_firmware() from a work
   >       queue, and after a little investigations it seams that this dget
   >       got lost along the way. Adding it back fixed the issue.
   >       Or am I causing a dentry leak now?

<Andries.Brouwer@cwi.nl>
   [PATCH] isa_writeb args interchanged

<Andries.Brouwer@cwi.nl>
   [PATCH] scsi: ten -> use_10_for_rw / use_10_for_ms
   
   In the old days, ancient scsi devices understood 6-byte commands
   and more recent ones also understood 10-byte commands.
   Thus, we had a "ten" flag indicating that 10-byte commands worked.
   
   These days, especially for usb-storage devices, the opposite
   sometimes holds - 10-byte commands are supported, but 6-byte commands
   are not.
   
   The patch below changes the field ten into the pair of fields
   use_10_for_rw, use_10_for_ms set initially when the driver
   thinks these are supported. Ifthe device returns ILLEGAL_REQUEST
   they are cleared.
   
   This patch obsoletes a large amount of code in usb-storage,
   and not only that, once the subsequent patch removes all this
   usb-storage code many devices will work that hang today.
   
   
   Andries

<Eddie.Williams@steeleye.com>
   [PATCH] scsi: allow devices to restrict start on add
   
   When a SCSI disk is added and it returns a NOT READY the SD driver is 
   automatically sending a START_UNIT command to spin the device up.  While this 
   may be the desired behavior for many if not most devices not all devices 
   either want or need this.  The attached patch provides a mechanism via the 
   device_list that allows a device to be defined to disable the automatic start 
   being issued on an add.
   
   The patch also modifies the device_list for several devices that would prefer 
   to not have the start command issued. 

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx Driver Update
    o Fix disabling of PCI parity error interrupts.  We need to set
      FAILDIS in the SEQCTL register, not the HCNTRL register.

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx and Aic79xx Driver Updated
    o Remove "cam_status cam_status" code where the variable
      name shaddows the type.  This is legal, but a bit
      confusing.

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx Driver Update
    o Correct/Simplify ignore wide residue message handling

<gibbs@overdrive.btc.adaptec.com>
   Aic7xxx Driver Update
    o Be more conservative in testing FIFOEMP before calling an
      overrun on a data transfer.

<gibbs@overdrive.btc.adaptec.com>
   Aic79xx Driver Update
    o Correct/Simplify ignore wide residue message handling

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

<gibbs@overdrive.btc.adaptec.com>
   Bump aic79xx driver version to 1.3.9

<oliver@neukum.org>
   [PATCH] improve Documentation for DC395
   
   this improves the Documentation for the DC395 driver for 2.5.
    dc395x.txt |   94 ++++++++++++++++++++++++++++++++++++++++---------------------
    1 files changed, 62 insertions(+), 32 deletions(-)

<hch@lst.de>
   PPC32: Syscall cleanups.

<paulus@samba.org>
   PPC32: Fix preempt bugs identified by Milton Miller.

<paulus@samba.org>
   PPC32: Discard the __ksymtab* sections when we are linking the boot wrapper.

<paulus@samba.org>
   PPC32: Re-open I/O windows on PCI-PCI bridges, needed for some powermacs.

<paulus@samba.org>
   PPC32: Better handling of program check exceptions on 4xx, patch from Kumar Gala.
   
   With this patch we read the ESR (exception syndrome register) early on in handling
   the program check exception, before reenabling the MMU and save it in the stack
   frame.  This avoids having the value overwritten by a subsequent exception.

<porter@cox.net>
   PPC32: Fix a compile error on 4xx embedded PowerPC.

<paulus@samba.org>
   PPC32: Simplify the BUG() implementation for now (a better one is coming).

<James.Bottomley@steeleye.com>
   [PATCH] SCSI: Make sysfs attributes mutable
   
   The attached patch makes the sysfs attributes a property of the host
   template (I can't really see a reason why the actual attributes need to
   change per host, so I think the template is the better place for them).
   
   I've also provided helper functions to modify the attributes in the LLD
   init routines.

<James.Bottomley@steeleye.com>
   [PATCH] Use of the new attribute modifiers on the 53c700
   
   The attached patch illustrates how the new attribute functions can be
   used.
   
   The 53c700 modifies the queue_depth attribute so it can be set by the
   root user, and also adds a new active_tags attribute which may be used
   to obtain the information it currently puts out via its proc interface.
   
   This achieves all I think we really need, which is the ability to have
   LLDs provide their own routines for setting the default attributes.

<jejb@raven.il.steeleye.com>
   Fix up 53c700 compile

<jejb@raven.il.steeleye.com>
   scsi sysfs add attribute release function.

<schlicht@uni-mannheimn.de>
   [NET]: One missed non-netdev SET_MODULE_OWNER case.

<schlicht@uni-mannheimn.de>
   [NET]: IPSEC protocol module owner cleanup.

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

<jejb@raven.il.steeleye.com>
   qla1280: convert the driver to be endian neutral
   
   This makes the driver compile and run on the PARISC platform.
   The biggest issue for this driver is the firmware layout because
   the chip insists on reading from firmware a 16 bit word at a time,
   so the entire byte layout of the firmware had to be reversed.

<yoshfuji@linux-ipv6.org>
   [IPV6]: Fix order of destruction of procfs.

<yoshfuji@linux-ipv6.org>
   [IPV6]: Make procfs destructors return void.

<jejb@raven.il.steeleye.com>
   qla1280: set the data direction correctly
   
   The data direction for the SCSI command was being strangely deduced
   by checking for an old WRITE_6 command.

<hch@lst.de>
   [NET]: Switch lanmedia driver to initcalls.

<jejb@raven.il.steeleye.com>
   qla1280: convert the driver to the new SCSI error handler

<davej@codemonkey.org.uk>
   [AGPGART] Compilation fix.
   Death of a typedef in an earlier cset broke i810fb

<davej@codemonkey.org.uk>
   [AGPGART] Remove useless early agp_init() from i810fb
   agp_init() just printk's a banner. This is unnecessary at this early stage.

<akpm@digeo.com>
   [PATCH] truncate and timestamps
   
   This patch will put us back to the 2.4 behaviour while preserving the
   truncation speedup.  It's a bit dopey (why do the timestamp update in
   the fs at all?) but changing this stuff tends to cause subtle
   problems.

<acme@conectiva.com.br>
   o wanrouter: fix bug introduced by latest namespace fix
   
   Thanks to Adrian Bunk for reporting.

<bcollins@debian.org>
   [PATCH] Update IEEE1394 (r939)
   
   - Adds fragementation support to eth1394
   - Fix race conditition in packet completion task call
   - Fix lack of proper logic in tlabel allocation
   - Fix brokeness introduced by "stanford checker fixes for memset" in
     ohci1394
   - Add trivial PM resume callback in ohci1394 to support sleep/resume.

<viro@www.linux.org.uk>
   [PATCH] callout removal: ircomm_tty
   
   callout removal: ircomm_tty

<viro@www.linux.org.uk>
   [PATCH] callout removal: mcfserial
   
   callout removal: mcfserial

<viro@www.linux.org.uk>
   [PATCH] callout removal: 68360
   
   callout removal: 68360

<viro@www.linux.org.uk>
   [PATCH] callout removal: tc_zs
   
   callout removal: tc_zs

<viro@www.linux.org.uk>
   [PATCH] callout removal: sgiserial
   
   callout removal: sgiserial

<viro@www.linux.org.uk>
   [PATCH] callout removal: aurora
   
   callout removal: aurora

<viro@www.linux.org.uk>
   [PATCH] callout removal: stallion
   
   callout removal: stallion

<viro@www.linux.org.uk>
   [PATCH] callout removal: rio
   
   callout removal: rio

<viro@www.linux.org.uk>
   [PATCH] callout removal: sx
   
   callout removal: sx

<viro@www.linux.org.uk>
   [PATCH] callout removal: specialix
   
   callout removal: specialix

<viro@www.linux.org.uk>
   [PATCH] callout removal: a2232
   
   callout removal: a2232

<viro@www.linux.org.uk>
   [PATCH] callout removal: riscom8
   
   callout removal: riscom8

<viro@www.linux.org.uk>
   [PATCH] callout removal: istallion
   
   callout removal: istallion

<viro@www.linux.org.uk>
   [PATCH] callout removal: sci
   
   callout removal: sci

<viro@www.linux.org.uk>
   [PATCH] callout removal: vme
   
   callout removal: vme

<viro@www.linux.org.uk>
   [PATCH] callout removal: tx3912
   
   callout removal: tx3912

<viro@www.linux.org.uk>
   [PATCH] callout removal: generic_serial
   
   callout removal: generic_serial

<viro@www.linux.org.uk>
   [PATCH] callout removal: isicom
   
   callout removal: isicom

<viro@www.linux.org.uk>
   [PATCH] callout removal: 68328
   
   callout removal: 68328

<viro@www.linux.org.uk>
   [PATCH] callout removal: chdlc
   
   callout removal: chdlc

<viro@www.linux.org.uk>
   [PATCH] callout removal: pc300
   
   callout removal: pc300

<viro@www.linux.org.uk>
   [PATCH] callout removal: macserial
   
   callout removal: macserial

<viro@www.linux.org.uk>
   [PATCH] callout removal: synclink_cs
   
   callout removal: synclink_cs

<viro@www.linux.org.uk>
   [PATCH] callout removal: synclinkmp
   
   callout removal: synclinkmp

<viro@www.linux.org.uk>
   [PATCH] callout removal: synclink
   
   callout removal: synclink

<viro@www.linux.org.uk>
   [PATCH] callout removal: serial167
   
   callout removal: serial167

<viro@www.linux.org.uk>
   [PATCH] callout removal: rocket
   
   callout removal: rocket

<viro@www.linux.org.uk>
   [PATCH] callout removal: pcxx
   
   callout removal: pcxx

<viro@www.linux.org.uk>
   [PATCH] callout removal: mxser
   
   callout removal: mxser

<viro@www.linux.org.uk>
   [PATCH] callout removal: moxa
   
   callout removal: moxa

<viro@www.linux.org.uk>
   [PATCH] callout removal: ip2
   
   callout removal: ip2

<viro@www.linux.org.uk>
   [PATCH] callout removal: esp
   
   callout removal: esp

<viro@www.linux.org.uk>
   [PATCH] callout removal: epca
   
   callout removal: epca

<viro@www.linux.org.uk>
   [PATCH] callout removal: dz
   
   callout removal: dz

<viro@www.linux.org.uk>
   [PATCH] callout removal: cyclades
   
   callout removal: cyclades

<viro@www.linux.org.uk>
   [PATCH] callout removal: amiserial
   
   callout removal: amiserial

<viro@www.linux.org.uk>
   [PATCH] callout removal: 8xx_uart
   
   callout removal: 8xx_uart

<viro@www.linux.org.uk>
   [PATCH] callout removal: 8260_uart
   
   callout removal: 8260_uart

<viro@www.linux.org.uk>
   [PATCH] callout removal: sicc
   
   callout removal: sicc

<viro@www.linux.org.uk>
   [PATCH] callout removal: vacserial
   
   callout removal: vacserial

<viro@www.linux.org.uk>
   [PATCH] callout removal: mips
   
   callout removal: mips

<viro@www.linux.org.uk>
   [PATCH] callout removal: simserial
   
   callout removal: simserial

<viro@www.linux.org.uk>
   [PATCH] callout removal: cris
   
   callout removal: cris

<viro@www.linux.org.uk>
   [PATCH] callout removal: isdn
   
   callout removal: isdn

<viro@www.linux.org.uk>
   [PATCH] callout removal: cleanup
   
   misc cleanup - switched to standard constant names for .subtype in the
   drivers that had private equivalents, removed unused ->callout_termios
   and friends from the last places where they were defined.

<viro@www.linux.org.uk>
   [PATCH] callout removal: callout is gone
   
   OK, that's it - no callout drivers left, so we drop the warning from
   tty_open() and kill the code that handles them in /proc/tty/drivers.

<neilb@cse.unsw.edu.au>
   [PATCH] md: Export bio_split_pool for md to use.

<neilb@cse.unsw.edu.au>
   [PATCH] md: Use new single page bio splitting for raid0 and linear
   
   Sometimes raid0 and linear are required to take a single page bio that
   spans two devices.  We use bio_split to split such a bio into two.
   
   The the same time, bio.h is included by linux/raid/md.h so
   we don't included it elsewhere anymore.
   
   We also modify the mergeable_bvec functions to allow a bvec
   that doesn't fit if it is the first bvec to be added to
   the bio, and be careful never to return a negative length from a
   bvec_mergable funciton.

<neilb@cse.unsw.edu.au>
   [PATCH] md: Handle concurrent failure of two drives in raid5
   
   If two drives both fail during a write request, raid5 doesn't
   cope properly and will eventually oops.
   
   With this patch, blocks that have already been 'written'
   are failed when double drive failure is noticed, as well as
   blocks that are about to be written.

<neilb@cse.unsw.edu.au>
   [PATCH] md: Improve test for which raid1 device doesn't need to be written to.
   
   Instead of testing last_used (which could change in unusual circumstances) we
   test against the bdev that we read frmo, and don't write back to there.

<neilb@cse.unsw.edu.au>
   [PATCH] md: Fix simple off-by-one error in md driver.

<neilb@cse.unsw.edu.au>
   [PATCH] md: Get rid of vmalloc/vfree from raid0
   
   raid0 currently uses vmalloc instead of kmalloc.  This patch
   changes to kmalloc.
   There is one allocation that can occasionally be very large - the hash_table.
   A subsequent patch will address this issue.

<neilb@cse.unsw.edu.au>
   [PATCH] md: Always allow a half-built md array to be stopped.
   
   When starting an array fails, we have to tear it down, but
   in some circumstances (particularly autostart_array) the
   reference count will be 3, so do_md_stop will fail.
   
   With this patch we only worry about the number of users
   is the array has been fully started.

<neilb@cse.unsw.edu.au>
   [PATCH] md: Improve raid0 mapping code to simplify and reduce mem usage.
   
   To cope with a raid0 array with differing sized devices,
   raid0 divides an array into "strip zones".
   The first zone covers the start of all devices, upto an offset
   equal to the size of the smallest device.
   
   The second strip zone covers the remaining devices upto the size of the
   next smallest size, etc.
   
   In order to determing which strip zone a given address is in,
   the array is logically divided into slices the size of the smallest
   zone, and a 'hash' table is created listing the first and, if relevant,
   second zone in each slice.
   
   As the smallest slice can be very small (imagine an array with a
   76G drive and a 75.5G drive) this hash table can be rather large.
   
   With this patch, we limit the size of the hash table to one page,
   at the possible cost of making several probes into the zone list
   before we find the correct zone.
   
   We also cope with the possibility that a zone could be larger than
   a 32bit sector address would allow.

<neilb@cse.unsw.edu.au>
   [PATCH] md: Remove dependancy on MD_SB_DISKS from multipath
   
   Multipath has a dependancy on MD_SB_DISKS which is no
   longer authoritative.  We change it to use a separately
   allocated array.

<neilb@cse.unsw.edu.au>
   [PATCH] md: Remove dependancy on MD_SB_DISKS from raid5
   
   One embeded array gets moved to end of structure and
   sized dynamically.

<neilb@cse.unsw.edu.au>
   [PATCH] md: Remove dependancy on MD_SB_DISKS from raid0
   
   Arrays with type-1 superblock can have more than
   MD_SB_DISKS, so we remove the dependancy on that number from
   raid0, replacing several fixed sized arrays with one
   dynamically allocated array.

<neilb@cse.unsw.edu.au>
   [PATCH] md: Remove MD_SB_DISKS limits from raid1
   
   raid1 uses MD_SB_DISKS to size two data structures,
   but the new version-1 superblock allows for more than
   this number of disks (and most actual arrays use many
   fewer).
   This patch sizes to two arrays dynamically.
   One becomes a separate kmalloced array.
   The other is moved to the end of the containing structure
   and appropriate extra space is allocated.
   
   Also, change r1buf_pool_alloc (which allocates buffers for
   a mempool for doing re-sync) to not get r1bio structures
   from the r1bio pool (which could exhaust the pool) but instead
   to allocate them separately.

<neilb@cse.unsw.edu.au>
   [PATCH] md: Remove dependance on MD_SB_DISKS in linear personality
   
   Linear uses one array sized by MD_SB_DISKS inside a structure.
   We move it to the end of the structure, declare it as size 0,
   and arrange for approprate extra space to be allocated on
   structure allocation.

<neilb@cse.unsw.edu.au>
   [PATCH] md: Replace bdev_partition_name with calls to bdevname

<gerg@snapgear.com>
   [PATCH] create m68knommu/coldfire specific ints.c
   
   Create a m68knommu/ColdFire specific ints.c. It is just simpler to
   have one for each sub-architecture (which means we currently need 3
   for the 3 prominant m68knommu families). Each can handle the hardware
   setup differences, and there is a few at this level.

<gerg@snapgear.com>
   [PATCH] remove common m68knommu ints.c
   
   Remove the m68knommu common ints.c. No longer needed with each
   sub-architecture now having its own.

<gerg@snapgear.com>
   [PATCH] don't compile m68knommu/kernel ints.c
   
   Modify m68knommu/kernel Makefile to no longer compile removed
   common ints.c.

<gerg@snapgear.com>
   [PATCH] compile m68knommu/ColdFire ints.c
   
   Add the m68knommu/Coldfire specific ints.c to build list.

<shmulik.hen@intel.com>
   [netdrvr bonding] fix long failover in 802.3ad mode
   
   This patch fixes the bug reported by Jay on April 3rd regarding long
   failover time when releasing the last slave in the active aggregator. The
   fix, as suggested by Jay, is to follow the spec recommendation and send a
   LACPDU to the partner saying this port is no longer aggregatable and
   therefore trigger an immediate re-selection of a new aggregator instead of
   waiting the entire expiration timeout.

<shmulik.hen@intel.com>
   [netdrvr bonding] fix ABI version control problem
   
   This fix makes bonding not commit to a specific ABI version if the ioctl
   command is not supported by bonding.
   
   (It also removes the '\n' in the continuous printk reporting the link down
   event in bond_mii_monitor - it got in there by mistake in our previous
   patch set and caused log messages to appear funny in some situations).

<bunk@fs.tum.de>
   [wan lmc] remove 2.0.x-era code
   
   The patch below removes obsolete #if'd code for kernel 2.0 and 2.2 from
   drivers/net/wan/lmc/* (this includes the expansion of some #define's 
   that were definded differently for different kernel versions).

<edward_peng@dlink.com.tw>
   [netdrvr sundance] fix flow control bug

<edward_peng@dlink.com.tw>
   [netdrvr sundance] fix another flow control bug

<jgarzik@redhat.com>
   [netdrvr eepro] update MODULE_AUTHOR per old-author request

<engebret@us.ibm.com>
   [netdrvr pcnet32] bug fixes
   
   I would like to see a couple of the pcnet32 changes that I think we can
   agree on be put into the trees so a couple of the potential defects can be
   avoided.  The following patch contains just these pieces.  The only
   controversial one is an arbitrary change in the number of iterations in a
   while loop spinning on hardware state.   No matter how this is done, I am
   not especially fond of this bit of code as it has no reasonable error
   recovery path -- however, as a half-way, incremental solution, increasing
   the polling time should help as the 100 value was certainly found to be
   insufficient.  1000 may not be sufficient either, but it is certainly no
   worse.
   
   Both of the other changes were hit in testing (and I belive the wmb() at a
   customer even), so it would help reduce some debug if these go in.  Any
   feedback is appreciated - thanks.

<torvalds@home.transmeta.com>
   Remove a few zero-sized files, as noted by David Gibson.

<yoshfuji@linux-ipv6.org>
   [CRYPTO]: Fix compiler warnings in sha512.c

<yoshfuji@linux-ipv6.org>
   [IPV6]: Fix possible idev leakage in icmp.c

<davem@nuts.ninka.net>
   [NET]: One too many IRQ_HANDLED added to sunqe.c driver.

<yoshfuji@linux-ipv6.org>
   [IPV6]: Fix possible oops in ndisc_send_na.

<herbert@gondor.apana.org.au>
   [IPSEC]: Order SPD using priority.

<davej@codemonkey.org.uk>
   [AGPGART] Yet another missed typedef compile fix.

<oliver@vermuden.neukum.org>
   01-debug-cleanup.patch

<axboe@suse.de>
   [PATCH] remove buggy BUG_ON in ide-cd
   
   Alan (or someone else) added a buggy BUG_ON() in ide-cd. We can address >
   32-bit just fine with 2kb block size. People are hitting this, just got
   one more report today...

<agrover@groveronline.com>
   ACPI: fix extra semicolon (Pavel Machek)

<stevef@smfhome1.austin.rr.com>
   adjust for change of devname to const char (new mount format)

<viro@parcelfarce.linux.theplanet.co.uk>
   [PATCH] Fix sound lockup - missing chardev init
   
   Argh.  Missing initialization in char_dev.c - it's definitely
   responsible for crap on unload.  Load side appears to be something else,
   though...

<axboe@suse.de>
   [PATCH] blk layer tag resize
   
   This allows drivers to resize their tag depth at run-time.

<anton@samba.org>
   ppc64: merge conflicts

<sri@us.ibm.com>
   [SCTP] /proc interface to display associations/endpoints.

<viro@parcelfarce.linux.theplanet.co.uk>
   [PATCH] procfs bug exposed by cdev changes
   
      fs/inode.c assumes that any ->delete_inode() will call clear_inode().
   procfs instance doesn't.  It had passed unpunished for a while; cdev changes
   combined with ALSA creating character devices in procfs made it fatal.
   
      Patch follows.  It had fixed ALSA-triggered memory corruption here -
   what happens in vanilla 2.5.70 is that clear_inode() is not called when
   procfs character device inodes are freed.  That leaves a freed inode on
   a cyclic list, with obvious unpleasantness following when we try to traverse
   it (e.g. when unregistering a device).

<miles@lsi.nec.co.jp>
   [PATCH] Remove some unneeded register saving on the v850
   
   These registers are now saved in a difference place, but the old code
   was inadvertently left in.

<miles@lsi.nec.co.jp>
   [PATCH] Include <linux/fs.h> in arch/v850/kernel/rte_cb_leds.c
   
   This is to define `struct file'; apparently some include-file change
   removed a previous implicit include.

<miles@lsi.nec.co.jp>
   [PATCH] Miscellaneous v850 whitespace and comment cleanups

<miles@lsi.nec.co.jp>
   [PATCH] Handle new do_fork return value on v850

<miles@lsi.nec.co.jp>
   [PATCH] Add __KERNEL__ guard to nb85e_cache.h on v850
   
   This header ends up getting included by uClibc (though nothing in it is
   used), so this protection is necessary to avoid problems with kernel-only
   typedefs.

<miles@lsi.nec.co.jp>
   [PATCH] Add leading underline to new linker-script symbols on the v850
   
   This is needed to match the output of the C compiler.

<miles@lsi.nec.co.jp>
   [PATCH] Whitespace and comment cleanups for v850 entry.S

<miles@lsi.nec.co.jp>
   [PATCH] Add v850 support for hardware single-step (via ptrace)

<miles@lsi.nec.co.jp>
   [PATCH] Update irq.c on v850 to use irqreturn_t

<miles@lsi.nec.co.jp>
   [PATCH] const-qualify memory arg in v850's __test_bit
   
   This silences at least one compile-time warning... :-)

<hirofumi@mail.parknet.co.jp>
   [PATCH] Adds the large partition (> 128GB) support to FAT (1/5)
   
   This adds large partition (> 128GB) support to FAT.

<hirofumi@mail.parknet.co.jp>
   [PATCH] Fix VFAT_IOCTL_READDIR_BOTH/_SHORT ioctl (2/5)
   
   This fixes the return value of ioctl() for enables using the same way as
   readdir().
   
   put/get_user() return code check patch from John R R Leavitt
   <jrrl@steampunk.com>

<hirofumi@mail.parknet.co.jp>
   [PATCH] Remove Documentation/filesystems/fat_cvf.txt (3/5)
   
   This removes the obsolete Documentation/filesystems/fat_cvf.txt.

<hirofumi@mail.parknet.co.jp>
   [PATCH] FAT cluster chain cache per superblock (4/5)
   
   This shifts the data position caches from module to per-superblock, and
   cleanups.

<hirofumi@mail.parknet.co.jp>
   [PATCH] FAT cluster chain cache per inode (5/5)
   
   This adds a cache of lastest accessed cluster to inode for sequential
   access.
   
   The following is 500M file of FAT-to-FAT copy test, this may be a most
   different case in usual operations, because maximum readahead window
   flush the all caches.
   
   512 bytes blocksize, 4096 bytes cluster size.
   
   linux-2.5.69-bk12
      root@devron (a)[1232]# time cp file file1
   
      real    7m58.900s
      user    0m0.267s
      sys     6m44.258s
   
   linux-2.5.69-bk12+patch
      root@devron (a)[1576]# time cp file file1
   
      real    2m44.309s
      user    0m0.270s
      sys     0m28.631s

<ink@jurassic.park.msu.ru>
   [PATCH] alpha: compile warning fix
   
   Make the "addr" arg to test_bit "const" to prevent flood of compile
   warnings in networking code.

<ink@jurassic.park.msu.ru>
   [PATCH] alpha: fix panic on smp boot (fork_by_hand)

<ink@jurassic.park.msu.ru>
   [PATCH] alpha: typo in EISA bridge detection

<ink@jurassic.park.msu.ru>
   [PATCH] alpha: single-step breakpoints - updated fix
   
   Restore 2.4 behavior when setting the single step breakpoints.

<elenstev@mesatop.com>
   [PATCH] Use '#ifdef' to test for CONFIG options

<herbert@gondor.apana.org.au>
   [NET]: Missing refcount bump in flow cache.

<davem@nuts.ninka.net>
   [IPV4/IPV6]: Use Jenkins hash for fragment reassembly handling.

<davem@nuts.ninka.net>
   [IPV6]: Input full addresses into TCP_SYNQ hash function.

<davem@nuts.ninka.net>
   [IPV4]: Add sysctl to control ipfrag_secret_interval.

<acme@conectiva.com.br>
   o net: abstract access to struct sock ->flags
   
   This makes:
   
   1. simpler primitive to access struct sock flags, shorter
   2. we check if the flag is valid by using enum sock_flags
   3. we can change the implementation to an open coded bit operations
      if it proves to be faster than the more general bit manipulation
      routines now used, i.e. we only have to change sock.h, not the
      whole net tree like now

<yoshfuji@linux-ipv6.org>
   [IPV6]: Clean up ip6_dst_alloc() calls.

<bdschuym@pandora.be>
   [BRIDGE]: Remove unnecessary code in br_input.

<yoshfuji@linux-ipv6.org>
   [IPV6]: Always remove fragment header.

<yoshfuji@linux-ipv6.org>
   [IPV6]: Fix possible dst leakage in ndisc_send_redirect.

<davem@nuts.ninka.net>
   [IPV6]: Fix typo in defragmentation changes.

<oliver@vermuden.neukum.org>
   - major cleanup of the module code

<rmk@flint.arm.linux.org.uk>
   [ARM] Fix GCC3.3 build error
   
   GCC 3.3 complains that r2 overlaps input operands when a u64 pointer
   is passed into __put_user().  Fix this by using ip as a temporary
   register instead.

<rmk@flint.arm.linux.org.uk>
   [ARM] Remove old 26-bit ARM keyboard drivers
   
   Also remove mouse_ps2.c which was never referenced from the Makefile.

<rmk@flint.arm.linux.org.uk>
   [ARM] Declare mmu_gathers using DEFINE_PER_CPU.

<proski@org.rmk.(none)>
   [PATCH] Fix crash when unloading yenta_socket in Linux 2.5.69
   
   socket->base is unmapped in yenta_close(), which is called by
   cardbus_remove().  The value of socket->base is not changed to
   NULL, so it becomes invalid.
   
   Then cardbus_remove() calls class_device_unregister(), which calls
   pcmcia_unregister_socket(), which it turn tries to access memory
   space of the socket.

<dwmw2@infradead.org>
   MTD and JFFS2 update.
   
    - JFFS2 bugfixes and performance improvements
    - Support for 64-bit flash arrangements
    - Optimise for linear mappings of flash, without out-of-line access functions
    - New map drivers
    - Updated NAND flash support, new board drivers
    - Support for DiskOnChip Millennium Plus and INFTL translation layer
    - Clean up all translation layers with a single blkdev helper library.
    - Fix races in MTD device registration/deregistration
    - Add support for new flash chips
    - Clean up partition parsing code
   
   More detailed comments in per-file changelogs.

<dwmw2@infradead.org>
   Final cleanups for MTD merge. 

<torvalds@home.transmeta.com>
   Make zlib_inflate look more like ANSI C code.
   
   Anybody who still thinks K&R makes sense should just be shot.

<Matt_Domsch@dell.com>
   dynids: use list_add_tail
   
   instead of list_add, such that later entries come later in the scanned list.

<Matt_Domsch@dell.com>
   dynids: free dynids on driver unload

<davem@nuts.ninka.net>
   [TCP]: Do not access inet_sk() of a time-wait bucket.
   
   Bug discovered by Mandred Spraul.

<jgarzik@redhat.com>
   [netdrvr tlan] cleanup
   
   * use pci_{request,release}_regions for PCI devices
   * use alloc_etherdev (fixes race)
   * propagate error returns from pci_xxx function errors

<david@gibson.dropbear.id.au>
   [PATCH] Update orinoco driver to 0.13e
   
   This updates the orinoco driver, fixing many bugs and adding some minor
   features.  It also adds a new module, orinoco_tmd for devices based on
   the TMD7168 PCI<->PCMCIA adaptor.

<jgarzik@redhat.com>
   [netdrvr] s/init_etherdev/alloc_etherdev/ in code comments,
   in 8139too and pci-skeleton drivers.

<jgarzik@redhat.com>
   [netdrvr 8139too] respond to "isn't this racy?" comment

<anton@samba.org>
   [PATCH] compat_wait4 fix
   
   sys_wait4 can return a pid and in this case we want to copy the struct
   rusage out to userspace.

<jgarzik@redhat.com>
   [netdrvr r8169] use alloc_etherdev, pci_disable_device

<davem@nuts.ninka.net>
   [SPARC64]: Fix probe error handling in envctrl.c driver.

<davem@nuts.ninka.net>
   [SPARC64]: Fix probe error handling in bbc_{envctrl,i2c}.c driver.

<anton@samba.org>
   ppc64: Always pass non segment faults on the 0xc region up to do_page_fault

<yoshfuji@linux-ipv6.org>
   [IPV6]: Fix default router selection in some cases.

<davem@nuts.ninka.net>
   [SPARC64]: Do not export {un,}register_ioctl32_converstion twice.

<hch@lst.de>
   [NET]: Remove sdla from setup.c

<hch@lst.de>
   [SPARC64]: Kill sys_aplib.

<chas@cmf.nrl.navy.mil>
   [ATM]: lane and mpoa module refcounting and locking cleanup.

<jgarzik@redhat.com>
   [ROSE]: Kill kfree of net_device->name.

<yoshfuji@linux-ipv6.org>
   [IPV6]: Add ip6frag sysctls.

<dwmw2@infradead.org>
   Fix some accidental regressions which slipped in with the MTD merge.
   
    - Unrevert strncpy->strlcpy change in JEDEC chip driver
    - Fix partition handling in physmap map driver
    - Switch sa1100-flash map driver back to rmk's version.

<davem@nuts.ninka.net>
   [NET}: Fix typo in sock_set_flag changes.

<gerg@snapgear.com>
   [PATCH] fix calls to do_fork()
   
   Change the m68knommu specific calls to do_fork() to match
   its pid return vlue.

<gerg@snapgear.com>
   [PATCH] remove obsolete BLKMEM driver reference

<gerg@snapgear.com>
   [PATCH] cleanup is_in_rom() checker
   
   Clean up the dodgy is_in_rom() code for m68knommu targets.
   
   Now that all the m68knommu sub-architectures (68x328, 68360
   and ColdFire) have the same memory setup support we can
   make this code the same for all targets.

<gerg@snapgear.com>
   [PATCH] fix broken trace flag check in 68328 system call entry

<gerg@snapgear.com>
   [PATCH] security init call support in linker script
   
   Linker script updates for m68knommu architecture:
   
    - fix _ramend for DragonEngine2 board
    - add  security init call support

<shaggy@shaggy.austin.ibm.com>
   JFS: resize fixes
     
   Bmap control page was not always being updated.
   Superblock's s_size field was incorrectly set on big-endian hardware.

<alan@lxorguk.ukuu.org.uk>
   [netdrvr tlan] fix 64-bit issues

<acme@conectiva.com.br>
   o drivers/bluetooth/hci_usb: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/isdn/hisax/st5481: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/media/video/cpia_usb: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/net/irda/irda-usb: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/class/audio: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/class/bluetty: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/class/cdc-acm: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/class/usb-midi: initialize struct usb_driver ->owner field
   
   And remove MOD_{INC,DEC}_USE_COUNT

<acme@conectiva.com.br>
   o drivers/usb/core/devio: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/core/hub: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/image/hpusbscsi: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/image/microtek: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/image/scanner: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/input/aiptek: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/input/hid-core: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/input/hiddev: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/input/kbtab: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/input/powermate: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/input/usbkbd: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/input/usbmouse: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/input/wacom: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/input/xpad: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/media/dabusb: initialize struct usb_driver ->owner field
   
   Also remove MOD_{INC,DEC}_USE_COUNT

<acme@conectiva.com.br>
   o drivers/usb/media/dsbr100: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/media/ibmcam: remove MOD_{INC,DEC}_USE_COUNT

<acme@conectiva.com.br>
   o drivers/usb/media/konicawc: remove MOD_{DEC,INC}_USE_COUNT

<acme@conectiva.com.br>
   o drivers/usb/media/ov511: initialize struct usb_driver ->owner field
   
   Also remove MOD_{INC,DEC}_USE_COUNT

<acme@conectiva.com.br>
   o drivers/usb/media/pwc-if: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/media/se401: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/media/stv680: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/media/ultracam: remove MOD_{INC,DEC}_USE_COUNT

<acme@conectiva.com.br>
   o drivers/usb/media/vicam: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/misc/auerswald: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/misc/emi26: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/misc/rio500: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/misc/usblcd: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/net/catc: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/net/cdc-ether: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/net/pegasus: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/net/rtl8150: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/net/usbnet: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/serial/belkin_sa: initialize struct usb_driver ->owner field

<reeja.john@amd.com>
   [netdrvr amd8111e] interrupt coalescing, libmii, bug fixes
   
   * Dynamic interrupt coalescing
   * mii lib support
   * dynamic IPG support (disabled by default)
   * jumbo frame fix
   * vlan fix
   * rx irq coalescing fix

<acme@conectiva.com.br>
   o drivers/usb/serial/cyberjack: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/serial/digi_acceleport: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/serial/empeg: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/serial/ftdi_sio: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/serial/io_edgeport: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/serial/io_ti: initialize struct usb_driver ->owner field

<anton@samba.org>
   ppc64: Add some branch prediction

<acme@conectiva.com.br>
   o drivers/usb/serial/ipaq: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/serial/ir-usb: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/serial/keyspan: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/serial/kl5kusb105: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/serial/mct_u232: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/serial/omninet: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/serial/pl2303: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/serial/safe_serial: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/serial/usb-serial: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/serial/visor: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/serial/whiteheat: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/storage/usb: initialize struct usb_driver ->owner field

<acme@conectiva.com.br>
   o drivers/usb/usb-skeleton: initialize struct usb_driver ->owner field

<anton@samba.org>
   ppc64: remove ioperm

<greg@kroah.com>
   USB: fix up unusual_devs.h merge mess
   
   Thanks to Per Winkvist for the info and patches to do this.

<oliver@neukum.org>
   [PATCH] USB: allocate memory for reset earlier
   
   if we fail with -ENOMEM, we should do it before the device must be
   reparsed.

<mdharm-usb@one-eyed-alien.net>
   [PATCH] USB: storage: abort and disconnect handling.
   
   This patch re-organizes abort handling and enhances disconnect handling.
   
   Not only do we keep track of the state (ABORTING, IDLE, etc.), but during
   an abort we now introduce the idea of 'okay to send' or not.  The idea is
   that we can now implement reset-after-abort properly.
   
   We also track if we're disconnecting, and use that data to determine if we
   can submit URBs or not.  Which means we can now disconnect during an abort.
   
   This patch is from Alan Stern.

<mdharm-usb@one-eyed-alien.net>
   [PATCH] USB: storage: collapse one-use functions
   
   This patch collapses some one-use functions into their callers.  It also
   clones some code for control transfers so we can implement abortable
   control transfers with timeout.
   
   This patch is from Alan Stern.
   
    Remove usb_stor_bulk_msg() and usb_stor_interrupt_msg().  Move their
    functionality into usb_stor_bulk_transfer_buf() and
    usb_stor_intr_transfer().
   
    Move the functionality of usb_stor_control_msg() into
    usb_stor_ctrl_transfer().
   
    Remove the unused act_len parameter from usb_stor_intr_transfer().

<hch@lst.de>
   [PATCH] use second arg to scsi_add_host in usb storage
   
   That way we don't need the addition scsi_set_device call.

<hch@lst.de>
   [PATCH] fix scsi_register_host abuse in usb scanner drivers
   
   They should be using scsi_add_host directly.  I had to rewrite
   half of the drivers, though to fix horrible braindamage like
   leaving dangling scsi structures around after ->disconnect.
   
   Gettig rid of the remaining scsi_register_host callers is required
   for the scsi stack to move forward so please try to forward this
   to Linus in a timely mannor, thanks!

<elenstev@mesatop.com>
   [PATCH] K&R to ANSI C conversions for zlib
   
   Here are some more K&R to ANSI C conversions.

<elenstev@mesatop.com>
   [PATCH] Yet more K&R to ANSI C conversions
   
   More K&R to ANSI C conversions for lib/zlib_deflate.

<jgarzik@redhat.com>
   Cset exclude: shemminger@osdl.org|ChangeSet|20030529205634|46794
   
   The needed fix winds up breaking SG, checksumming, and other stuff
   in the process.

<scott.feldman@intel.com>
   [netdrvr e100] move register_netdev below netdev struct init
   
   (i.e. the better fix)

<chas@cmf.nrl.navy.mil>
   [ATM]: HE driver coding style conformance.

<chas@cmf.nrl.navy.mil>
   [ATM]: HE driver misc irq handler cleanups.

<chas@cmf.nrl.navy.mil>
   [ATM]: Move rategrid off stack in HE driver.

<shemminger@osdl.org>
   [BRIDGE]: Make delete bridge work with current unregister semantics.

<shemminger@osdl.org>
   [NET]: Sysfs netdev cleanup and bugfix.
   
   A couple of bugs in netdev_unregister_sysfs; still working on the harder
   refcount issues.
   - if driver sets get_stats after register then unregister 
     will attempt to delete kobject that has not be initialized.
   - unregister should call kobject_unregister not kobject_del.
   
   cleanup's:
   - use strlcpy instead of snprintf
   - don't need to memset the stats kobject

<jmm@informatik.uni-bremen.de>
   [CRYPTO]: Default CRYPTO and MD5 to y if IPV6_PRIVACY is enabled.

<shemminger@osdl.org>
   [NET]: Kill deprecated if_port_text and users.

<davem@nuts.ninka.net>
   [ATM]: Fix driver Makefile clean-files.

<gerg@snapgear.com>
   [PATCH] conditional ROMfs copy for ARNEWSH/5206 setup
   
   Make the ROMfs copy in the startup code for ARNEWSH/5260 board
   conditional on actually using a ROMfs setup.

<gerg@snapgear.com>
   [PATCH] support BOOTPARAM's on m68knommu/5206 targets
   
   Support pre-configured boot arguments on m68knommu/5206 targets.

<gerg@snapgear.com>
   [PATCH] support BOOTPARAM's on m68knommu/5206e targets
   
   Support pre-configured boot arguments on m68knommu/5206e targets.

<gerg@snapgear.com>
   [PATCH] m68knommu/pilot startup copy init segment to RAM
   
   The m68knommu/pilot startup code is not copying the init segment to
   RAM currently. Fix it to copy all of the data and init sections to RAM.

<bcollins@debian.org>
   [PATCH] USB Multi-input quirk

<david-b@pacbell.net>
   [PATCH] USB: ethernet "gadget", rx overflows happen
   
   I tightened up rx overflow logic in the net2280 driver
   a while back, and it broke MTU size packets in this
   driver (host pads them out).  This patch accomodates it
   by allocating a slightly larger buffer (almost 3*512).

<hwahl@hwahl.de>
   [PATCH] USB:  Patch for Samsung Digimax 410
   
   *** a/drivers/usb/storage/unusual_devs.h   2003-05-22 20:54:26.000000000 +0200

<akpm@digeo.com>
   [PATCH] fix typo in coda
   
   We want an "|" in there, not "||".

<akpm@digeo.com>
   [PATCH] Fix suspend with pccardd running
   
   From: Pavel Machek <pavel@ucw.cz>
   
   This fixes suspend when pccards are used...

<akpm@digeo.com>
   [PATCH] fix oops on resume from apm bios initiated suspend
   
   From: Milton Miller <miltonm@bga.com>
   
   mm is NULL for kernel threads without their own context.  active_mm is
   maintained the one we lazly switch from.
   
   Without this patch, apm bios initiated suspend events (eg panel close)
   cause an oops on resume in the LDT restore, killing kapmd, which causes
   further events to not be polled.

<akpm@digeo.com>
   [PATCH] export mmu_cr4_features to modules
   
   From: Jan Marek <linux@hazard.jcu.cz>
   
   The DRM modules (i810) need this symbol.
   
   As this is a special-case for one particular in-kernel module I changed Jan's
   patch from EXPORT_SYMBOL to EXPORT_SYMBOL_GPL.

<akpm@digeo.com>
   [PATCH] [VISWS] irqreturn_t conversion
   
   From: Andrey Panin <pazke@donpac.ru>
   
   This small patch (against 2.5.70) updates visws_apic.c in accordance
   with linux irq handling changes.

<akpm@digeo.com>
   [PATCH] Fix CONFIG_PROCFS=n
   
   From: Manfred Spraul <manfred@colorfullife.com>
   
   three build fixes for CONFIG_PROC_FS=n:
   
   include/linux/procfs.h:
   
    - add missing proc_pid_unhash, proc_pid_flush declarations.  static
      inline functions that do nothing.
   
    - move semicolons around for kclist_{add,del}.  gcc-3.2.2 doesn't like
      the current syntax.
   
   drivers/net/pppoe.c:
   
    - proc_net doesn't exist if CONFIG_PROC_FS=n.
   
   drivers/scsi/scsi_priv.h:
   
    - add missing brackets to macro definition.

<akpm@digeo.com>
   [PATCH] zoran user-pointer fix
   
   From: Hollis Blanchard <hollis@austin.ibm.com>
   
   Fix a user pointer deref, found by the Stanford checker.

<akpm@digeo.com>
   [PATCH] irq balance logic fix
   
   From: Andi Kleen <ak@suse.de>
   
   The logic is: the global variable is set to the magic value
   IRQBALANCE_CHECK_ARCH.  It can be overwritten by a __setup function.  If
   the magic value is still set when the irq balancer is started it asks the
   subarchitecture using the NO_BALANCE_IRQ macro.  This is defined to a
   genapic field in the generic architecture, otherwise constant.  Then the
   global variable is set and when it is true no balancing happens.
   
   Previously I had this wrong in that it always disabled it.
   
   This part should be correct, but it still doesn't seem to work.
   
   (I left the printk in there until the problem is debugged, could be removed
   of course)

<akpm@digeo.com>
   [PATCH] kill lock_kernel() in inode_setattr()
   
   All we're doing in there is writing things into the inode.  I see no need for
   the lock_kernel().
   
   And holding lock_kernel() across mark_inode_dirty() hurts on big SMP.

<akpm@digeo.com>
   [PATCH] i2o memleak comment
   
   From: Andy Whitcroft <apw@shadowen.org>
   
   There's a spot in i2o where we deliberately leak some memory when the
   hardware plays up.  The alternative is to let the hardware scribble on it at
   some unknown time in the future.
   
   Things like the Stanford checker keep alleging that this is a bug.  So shut
   them up with a comment

<akpm@digeo.com>
   [PATCH] write_one_page() fixlets
   
   - set the number of pages to be written to "1".
   
   - Don't test PG_writeback twice.

<akpm@digeo.com>
   [PATCH] speed up the unlink speedup
   
   I'm not sure why I used igrab() in unlink().  igrab takes the oft-taken
   inode_lock.
   
   The caller has a ref, so a simple increment of i_count will suffice.

<akpm@digeo.com>
   [PATCH] Remove unneeded fcntl check
   
   The NR_OPEN check in F_DUPFD is unneeded.  viro says:
   
   "We check the limits in locate_fd() (called by dupfd()).  Check for NR_OPEN
   can (and should) be dropped - locate_fd() will never go beyond that
   (expand_fd() will check it and refuse to go).
   
   "IOW, simply lose the check.  We _might_ want to check signedness, but that's
   it (IOW, check that arg will fit into 0..MAX_INT; second argument of dupfd()
   is an int).  OTOH, we might actually make dupfd() et.al.  take unsigned long
   and kill that crap completely."
   
   And indeed, the signedness is suspicious, so make various things in there
   unsigned too.

<akpm@digeo.com>
   [PATCH] unregister_netdev cleanups
   
   Replace
   
      rtnl_lock();
      register_netdevice(dev);
      rtnl_unlock();
   
   with the equivalent
   
      register_netdev();
   
   in numerous places.

<akpm@digeo.com>
   [PATCH] support 64 bit pci_alloc_consistent
   
   From: Jes Sorensen <jes@wildopensource.com>
   
   This is patch which provides support for 64 bit address allocations from
   pci_alloc_consistent(), based on the address mask set through
   pci_set_consistent_dma_mask().  This is necessary on some platforms which
   are unable to provide physical memory in the lower 4GB block and do not
   provide IOMMU support for cards operating in certain bus modes, such as
   PCI-X on the SGI SN2.
   
   The default mask for pci_alloc_consistent() is still 32 bit as there are 64
   bit capable hardware out there that doesn't support 64 bit addresses for
   descripters etc.  Likewise, platforms which provide IOMMU support in all
   bus modes can ignore struct pci_dev->consistent_dma_mask and just return a
   32 bit address as before.
   
   The patch also includes changes to tg3.c to make it use the new api as well
   as a documentation update.  I have done my best on the documentation part,
   if anyone feel the can make my scribbles clearer, please do.
   
   Thanks to Dave Miller, Grant Grundler, James Bottomley, Colin Ngam, and
   Jeremy Higdon for input and code/documentation portions.

<akpm@digeo.com>
   [PATCH] svcsock use-after-free fix
   
   From: Neil Brown <neilb@cse.unsw.edu.au>
   
   Extract ->stamp from skb *before* freeing it in svcsock.c
   
   As we sometime copy and free an skb, and sometime us it in-place, we must
   be careful to extract information from it *before* it might be freed, not
   after.
   
   Manfred's page-unmapping debug patch found this one.

<akpm@digeo.com>
   [PATCH] Fix writev when a segment generates EFAULT
   
   From: Martin Schwidefsky <schwidefsky@de.ibm.com>
   
   If writev() is passed a vector in which the second or later segment generates
   a fault it will currently return -EFAULT.
   
   It shouldn't.  It should write what it can and return the number of bytes
   which were successfully copied.
   
   Fix that up by writing the partial result and then returning the right value.

<akpm@digeo.com>
   [PATCH] Fixes trivial error in
   
   From: Herbert Xu <herbert@gondor.apana.org.au>
   
   This patch adds a pair of missing quotes.

<akpm@digeo.com>
   [NET]: Convert rtnl_lock/register_netdevice/rtnl_unlock to register_netdev.

<greg@kroah.com>
   [PATCH] USB: remove some old references to /proc/bus/usb/drivers
   
   This is needed, as the file was deleted over a year ago...

<stern@rowland.harvard.edu>
   [PATCH] USB: fix address assignment after device reset
   
   Until my ambitious project gets going, this patch at least fixes the
   problem of assigning a device's new address following a device reset.
   The only change needed to David's original suggestion was to handle the
   pathway involved in registering root hubs.

<proski@gnu.org>
   [PATCH] USB: name uninitialized in scanner.c
   
   Linux 2.5.69-bk18 prints something strange to the kernel log when the USB
   scanner is attached.  It turns out drivers/usb/image/scanner.c uses
   uninitialized variable "name" in probe_scanner() in the printk() call.
   That means that random memory is read and output to the kernel log.

<hch@lst.de>
   [PATCH] driver model for scsi upper drivers, take 2
   
   On Tue, May 27, 2003 at 09:32:18AM +0200, Christoph Hellwig wrote:
   >  - removed the tape sysfs pseudodevice crap that caused hangs
   >  - switched sg to a class_interface.  This means sg can be used
   >    on devices already claimed be an upper driver again.  This
   >    also means I had to remove the sg sysfs attributes temporarily
   >    because the old mechanism is gone, but I'll restore them
   >    differently in a followon patch.
   
   Yikes, this was the old patch again.  Here's the right one:

<jejb@raven.il.steeleye.com>
   Fix __exit routine of NCR_D700

<hch@lst.de>
   [PATCH] LDM-based scsi host lookup
   
   Replace scsi_host_hn_get with scsi_host_lookup that walks
   through the shost class and gets a proper reference to the
   host.  This should fix the OOPS that Douglas saw last week.

<hch@lst.de>
   [PATCH] switch /proc/scsi/scsi to seq_file and proper device model

<hch@lst.de>
   [PATCH] kill scsi_host_get_next
   
   The only reamining user was a horrible hack with a big XXX:
   in scsi_pc98.c.  Remove it and add an even bigger XXX there,
   we don't want to keep this function (and the scsi hostlist)
   around just for this.

<B.Zolnierkiewicz@elka.pw.edu.pl>
   [PATCH] allow "hdX=scsi" for modular scsi/ide-scsi
   
   Allow a user to mark a device as for scsi
   emulation at boot even with modular scsi/ide-scsi.
   (from 2.4 patch by Matan Ziv-Av)

<B.Zolnierkiewicz@elka.pw.edu.pl>
   [PATCH] kill "hdX=noremap"
   
   Since Andries killed ide-geometry, remove "hdX=noremap"
   parameter as it is no longer needed.

<B.Zolnierkiewicz@elka.pw.edu.pl>
   [PATCH] fix two IDE list_head problems
   
   Fix two problems related to list_head's (there are more, wip).
   Second bug was uncovered by wli's list_head debugging patch, thanks wli!
   
   - Remove ata_unused list and use &idedefault_driver->drives only,
     fixes list corruption (ata_unused will be later ressurected for hotplug).
   
   - Do not add same device twice to &idedefault_driver->drives, triggered
     by first calling ide_unregister_subdriver() and later ata_attach().

<hch@lst.de>
   [PATCH] kill remaining direct uses of scsi_register_host
   
   Together with a patch for the usb imaging drivers I just sent to
   Greg this will allow us to get rid of scsi_register_host as exported
   API, leaving it only for use of scsi_module.c.

<axboe@suse.de>
   [PATCH] copy the tag_map
   
   From: Milton Miller <miltonm@bga.com>

<axboe@suse.de>
   [PATCH] ide-cd buglets
   
   Assorted small ide-cd fixes, found and fixed by Andy Polyakov
   <appro@fy.chalmers.se>.
   
   - CHECK_CONDITION really wants to be SAM_STAT_CHECK_CONDITION, the damn
     bit shift by one bit again
   
   - Set sense_len correctly
   
   - Do post_transform() on the right buffer.

<axboe@suse.de>
   [PATCH] scsi_ioctl HZ fixes
   
   According to http://www.torque.net/sg/p/sg_v3_ho.html, SG HOWTO,
   SG_[GET|SET]_TIMEOUTs are measured in "jiffies," while timeout field
   of SG_IO structure - in milliseconds. Inconsistent? Yes. Yet it's no
   excuse to disregard the specification. "Jiffies" are USER_HZ, 10ms on
   IA-32 platforms and has to be scaled to kernel "jiffies," as suggested
   below. As for "(jiffies - start_time) * (1000 / HZ)" vs.
   "((jiffies - start_time) * 1000) / HZ." Just think that HZ is 1024 on
   some platforms...

<axboe@suse.de>
   [PATCH] ide-cd/scsi/block fixups for SG_IO
   
   - Kill the bogus ret transformation in block/ioctl.c if we return
     -EINVAL, doesn't make any sense.
   
   - Don't allow sg_reserved_size to be set bigger than a request we can
     deal with...
   
   - timeout fixes.
   
   - Cleanup of user access.
   
   - Set SAM_STAT_CHECK_CONDITION, not CHECK_CONDITION which needs to be
     bit shifted 1 up.
   
   - Set sense_len correctly.
   
   - Account sense_len correctly, don't just increment by 1...
   
   - Use the correct pointer in post transform.
   
   - Fix oops in bio_map_user(), it must get the extra reference prior to
     calling bio_unmap_user() itself too.

<akpm@digeo.com>
   [PATCH] fix generic_file_write()
   
   The recent writev() fix broke the invariant that ->commit_write _must_ be
   called after a successful ->prepare_write().  It leaves ext3 with a
   transaction stuck open and the filesystem locks up.

<henning@meier-geinitz.de>
   [PATCH] USB: new vendor/product ids for scanner driver
   
   This patch adds some new vendor/product ids for the USB scanner
   driver.

<paulkf@microgate.com>
   [PATCH] tty_register_driver
   
   This patch reinstates the ability of tty devices to use dynamically
   allocated major numbers yet specify the minor numbers statically.
   
   The synclink drivers do this.

<bellucda@tiscali.it>
   [PATCH] USB: replaced BKL in rio500.c

<dougg@torque.net>
   [PATCH] sg driver for lk 2.5.70
   
   This is a bug fix for a flawed patch I put in lk 2.4.19
   (sg version 3.1.24) and has been carried through into
   the 2.5 series. Thanks to Andy Polyakov
   <appro@fy.chalmers.se> for pointing this out (more than once).
   
   The sg.h header didn't get updated last time I submitted
   an sg patch so this patch also addresses that.

<jgrimm@touki.austin.ibm.com>
   [SCTP] Let T5 timer affect SHUTDOWN-PENDING associations.
   
   Otherwise, we can end up in a deadlock if both sides in SHUTDOWN-PENDING
   but both apps have gone away.  

<acme@conectiva.com.br>
   o n_hdlc: CodingStyle cleanups and removal of old stuff
   
   - remove include kerneld.h, long gone
   - some 80 column reformatting
   - removal of typedefs
   - c99 style documentation, using the existing function documentation
   - add MODULE_AUTHOR
   - remove GET_USER, COPY_TO_USER and friends
   - remove ssize_t typedef, already in the kernel headers
   - remove rw_count_t and rw_ret_t, use simple int and size_t as in the
     tty ops prototypes and avoiding casts for return
   - make strings in printk in init/exit module routines __initdata/__exitdata
     saving some bytes after module init and for the case where this driver is
     statically linked in the kernel (__exitdata is trown away)
   
   This makes this driver comply with parts of CodingStyle (more to be done) and
   makes it looks more like the rest of the kernel, making it easier to read/debug.
   
   Have been using this modifications with ADSL/syncppp for some time, working well.

<davem@nuts.ninka.net>
   [SPARC64]: Fix sys_shmat handling for 64-bit binaries.

<herbert@gondor.apana.org.au>
   [XFRM]: u64 --> __u64 in linux/xfrm.h

<vandrove@vc.cvut.cz>
   [PATCH] matroxfb update to new API
   
   This updates the matroxfb driver to the new framebuffer API.
   
   I'm sorry that it is quite large, but due to completely changed
   underlying API there is no reasonable way how to split it into smaller
   pieces.
   
    - Removed support for text mode. No way for it with current API.
    - Removed support for hardware cursor. Generic cursor code has enough
      troubles as is, in software mode.
    - No reasonable fbset support... It is especially annoying on multihead
      system, as 'stty cols XXX rows YYY' does not change pixclock...
    - Removed fastfont support. No way for it with current API.
   
   (Mis)features inherited from generic fbdev API:
    - Cursor on other framebuffers than primary one does not blink.
    - Contents of visible, but not foreground, display is not updated.

<elenstev@mesatop.com>
   [PATCH] More ANSI C cleanup of zlib
   
   More zlib K&R to ANSI C function header conversions.

<manfred@colorfullife.com>
   [PATCH] Prepare for page unmapper
   
   Avoid touching the next page in the NMI handler stack validity check.
   
   That way, we can start unmapping pages that aren't in use, without
   triggering this case.

<acme@conectiva.com.br>
   o net: reduce the data dependency of struct sock/struct tcp_tw_bucket
   
   With this the area that is shared among struct sock and struct tcp_tw_bucket
   is exact, i.e. there is no fields that are in struct sock and only reused
   for other reasons in tcp_tw_bucket, while keeping both struct free of holes.

<anton@samba.org>
   ppc64: threaded coredump support

<anton@samba.org>
   ppc64: fix copy_from_user leak, from Milton Miller

<anton@samba.org>
   ppc64: Add warning for unhandled irqs

<herbert@gondor.apana.org.au>
   [XFRM_USER]: Fix xfrm_state_lookup args in xfrm_add_sa.

<herbert@gondor.apana.org.au>
   [XFRM_USER]: Rename confusing member of struct xfrm_usersa_id.

<kaber@trash.net>
   [PPP] fix memory leak in ioctl error path

<herbert@gondor.apana.org.au>
   [XFRM]: Too many reference drops of delpol in xfrm_policy_insert.

<davem@nuts.ninka.net>
   [XFRM]: Handle use_time expiration properly.

<perex@suse.cz>
   ALSA update 0.9.4
     - added drivers for Digigram VXPocket V2, VXPocket 440 (pcmcia)
     - added driver for Digigram VXP220 V2/Mic (PCI)
     - added driver Harmony chipset (parisc)
     - added OPL4 driver
     - code cleanups - removed 2.2 and 2.4 code
     - nm256 driver - added Dell Latitude LS workaround
     - ac97 driver - fixes in intialization
     - usb audio driver - strlcat() fixes

<viro@parcelfarce.linux.theplanet.co.uk>
   [PATCH] Fix disk partitioning with multiple IDE disks
   
   Now that we use idedefault_driver.drives instead of ata_unused, the order
   of drives on the driver->drives becomes significant; note that when we added
   to ata_unused, we had done that to the end of list.
   
   So we should do the same with the "drives" list.

<greg@kroah.com>
   Cset exclude: greg@kroah.com|ChangeSet|20030529215347|05329

<mdharm-usb@one-eyed-alien.net>
   [PATCH] USB: usb-storage: fix typo
   
   Typo fix.  We need bitwise-OR here.

<mdharm-usb@one-eyed-alien.net>
   [PATCH] USB: usb-storage: timeouts and aborts
   
   This patch adds timeouts to usb_stor_control_msg().  Now we will no longer
   have to use the usb_control_msg() routine in the usb core, so all our
   control messages can be interrupted by scsi aborts or disconnects.
   
   This also includes the new serial-number for auto-REQUEST-SENSE change.
   The new serial number has one bit toggled from the old, guaranteeing that
   it is unique.
   
   Following a suggestion of David Brownell, this makes the transport-reset
   function attempt to clear a halt condition on both bulk pipes even if one
   of them fails.

<mdharm-usb@one-eyed-alien.net>
   [PATCH] USB: usb-storage: usb_stor_control_msg() and stuff
   
   This patch replaces usb_control_msg() with usb_stor_control_msg() everywhere,
   which allows better abort/disconnect processing.
   
   Some comments are fixed-up.
   
   The GetMaxLUN function is moved later so URBs are initialized (now that it
   uses the new control_msg() ).
   
   There is also some locking cleanup during reset.

<mdharm-usb@one-eyed-alien.net>
   [PATCH] USB: usb-storage: change result codes
   
   This patch changes to SAM_STAT_ result codes, which is (a) preferred,
   according to the code comments, and (b) removes some odd-looking
   bit-shifting.

<oliver@neukum.org>
   [PATCH] USB: return errors when disabling a port
   
   this allows us to learn about a port that cannot be disabled. It's needed
   for a superrobust usb_reset_device().

<davem@nuts.ninka.net>
   [SOUND]: Revert buggy ALSA merge ioctl32 changes.

<davem@nuts.ninka.net>
   [SOUND]: vx/vx_core.c needs linux/init.h

<davem@nuts.ninka.net>
   [SOUND]: Fix sparc cs4231 driver build due to pcm list changes.

<davem@nuts.ninka.net>
   [SPARC64]: Update defconfig.

<davidvh@cox.net>
   [PATCH] Fix compilation errors in ppa and imm modules
   
   This patch is a resend from LKML since it has yet to be applied in 
   either bk7. Patrick suggested I send it here. This patch fixes 
   compilation failures in ppa.c and imm.c that were introduced in 2.5.70-bk1.
   
   * Removes the 'int hostno' parameter from imm_proc_info().
   Parameter isn't used and breaks the pointer matching for Scsi_Host.
   * Added the prototype for imm_proc_info() in imm.h
   * Modified line 280 of ppa.c to match concept on line 263 of imm.c.

<mhoffman@lightlink.com>
   [PATCH] I2C: fix oops w83781d during rmmod
   
   This fixes the oops during w83781d module removal by putting the
   subclient registration back in.  While I was in there, I split
   w83781d_detect in half in an attempt to reduce the goto madness.
   
   So, the /sys tree looks like this, where 48 & 49 are the subclients.
   There are no entries (besides name & power) for the subclients.
   
   /sys/bus/i2c/
   |-- devices
   |   |-- 0-002d -> ../../../devices/pci0/00:02.1/i2c-0/0-002d
   |   |-- 0-0048 -> ../../../devices/pci0/00:02.1/i2c-0/0-0048
   |   `-- 0-0049 -> ../../../devices/pci0/00:02.1/i2c-0/0-0049
   `-- drivers
       |-- i2c_adapter
       `-- w83781d
           |-- 0-002d -> ../../../../devices/pci0/00:02.1/i2c-0/0-002d
           |-- 0-0048 -> ../../../../devices/pci0/00:02.1/i2c-0/0-0048
           `-- 0-0049 -> ../../../../devices/pci0/00:02.1/i2c-0/0-0049
   
   Also, I fixed a bug where this driver would request and release an
   ISA region, then poke around in that region, then finally request
   it again.
   
   This patch against 2.5.70 works for me vs. an SMBus adapter.  It needs
   re-testing against an ISA adapter since my particular chip is SMBus only.

<bunk@fs.tum.de>
   [PATCH] SECURITY_ROOTPLUG must depend on USB
   
   The following patch lets SECURITY_ROOTPLUG depend on USB (otherwise
   there are link errors since Root Plug Support needs
   usb_bus_list{,_lock}):

<greg@kroah.com>
   [PATCH] USB: add usb_find_device() function to USB core.

<greg@kroah.com>
   [PATCH] Root plug: remove USB bus walking functions, now use usb_find_device().
   
   Also fixed compiler warnings about the dbg() function.

<wahrenbruch@kobil.de>
   [PATCH] USB: kobil_sct.c added support for KAAN SIM Reader
   
   as promised - here is the patch for 2.5.70:
   Added support for KAAN SIM in kobil_sct.

<greg@kroah.com>
   [PATCH] USB: added .owner to kobil_sct driver

<anton@samba.org>
   ppc64: remove sys32.S

<davidel@xmailserver.org>
   [PATCH] epoll race fix
   
   The was a race triggered by heavy MT usage that could have caused
   processes in D state. Bad Davide, bad ...
   
   Also, the semaphore is now per-epoll-fd and not global. Plus some comment
   adjustment.

<bcollins@debian.org>
   [PATCH] Update IEEE1394 (r946)
   
    ETH1394: Use 64bit EUI as the hardware address.
    ETH1394: Support broadcast packets.
    SBP2   : Fix max_payload for > S400
    CORE   : Fix iso.c compilation by including linux/sched.h directly.

<zippel@linux-m68k.org>
   [PATCH] Remove old code and macros
   
   Remove old code and debugging macros which were used by the cml1->kconfig
   converter.

<zippel@linux-m68k.org>
   [PATCH] Change P_ROOTMENU into a MENU_ROOT flag
   
   This changes P_ROOTMENU into a MENU_ROOT flag and also fixes some qconf
   usability problems.
   
   Some gconf fixes by Romain Lievin <roms@tilp.info>.

<zippel@linux-m68k.org>
   [PATCH] add new keywords to parser
   
   Add the following new keywords: def_tristate, def_bool, def_boolean,
   select, enable and range.
   
   Add support for def_tristate and def_bool, which combines default and
   bool/tristate into a single statement and a allows simpler definition
   of derived symbols.

<zippel@linux-m68k.org>
   [PATCH] expression support
   
   "default" accepts now not only a single symbol but also an expression
   which can be assigned to boolean and tristate symbols.

<zippel@linux-m68k.org>
   [PATCH] reverse dependency support
   
   The 'select' keyword defines a lower limit for symbols and allows to
   select other symbols when a symbol is selected, e.g.:
   
   config JOLIET
      bool "Microsoft Joliet CDROM extensions"
      select NLS
   
   This means when JOLIET is selected, NLS will be selected as well.

<zippel@linux-m68k.org>
   [PATCH] support for 'range'
   
   The 'range' keyword allows to define a lower and upper limit for integer
   and hex symbols.

<zippel@linux-m68k.org>
   [PATCH] add more warnings
   
   Add a number of warnings to avoid misuse of the previously added features
   (most important check for recursive dependencies).

<zippel@linux-m68k.org>
   [PATCH] front end updates
   
   conf: better choice interface
         don't ask for unchangable symbols
   
   mconf: mark unchangable symbols with '---'
          update exit text (from Sam Ravnborg <sam@ravnborg.org>)
   
   qconf: update debug output

<zippel@linux-m68k.org>
   [PATCH] create configuration in the destination directory
   
   This creates the configuration in the destination directory instead of
   the current directory.

<zippel@linux-m68k.org>
   [PATCH] update kconfig documentation
   
   Fix various typos and and information about the new kconfig features.

<viro@parcelfarce.linux.theplanet.co.uk>
   [PATCH] ->minor_shift removal
   
   disk->minor_shift is not used anymore.  Remove it.

<akpm@digeo.com>
   [PATCH] magazine layer for slab
   
   From: Manfred Spraul <manfred@colorfullife.com>
   
   slab.c is not very efficient for passing objects between cpus.  Usually this
   is a rare event, but with network routing and cpu-affine NICs it is possible
   that nearly all allocation operations will occur on one cpu, and nearly all
   free operations on another cpu.
   
   This causes slab memory to be returned to slab's free page list rather than
   being cached on behalf of the particular slab cache.
   
   The attached patch solves that by adding an array of objects that is shared
   by all cpus.  Instead of multiple linked list operations per object, object
   pointers are now passed to/from the shared array (and thus between cpus) with
   memcopy operations.  On uniprocessor, the default array size is 0, because
   the shared array and the per-cpu head array are redundant.
   
   Additionally, the patch exports more statistics in /proc/slabinfo and make
   the array sizes tunable by writing to /proc/slabinfo.  Both changes break
   backward compatibility, user space scripts must look at the slabinfo version
   and act accordingly.
   
   The size of the new shared array may be altered at runtime, by writing to
   /proc/slabinfo.
   
   The new parameters for writing to /proc/slabinfo are:
   
      #echo "cache-name limit batchcount shared" > /proc/slabinfo
   
   For example "size-4096 120 60 8" improves the slab efficiency for network
   routing, because the default values (24 12 8) are too small for the large
   series generated due to irq mitigation.  Note that only root has write
   permissions to /proc/slabinfo.
   
   These changes provided an overall 12% speedup in Robert Olson's gigE
   packet-formwarding testing on 2-way.

<akpm@digeo.com>
   [PATCH] Additional fields in slabinfo
   
   From: Manfred Spraul <manfred@colorfullife.com>
   
   We need to present more information in /proc/slabinfo now the magazine
   layer has been added.
   
   The slabinfo version has been updated to 2.0.

<akpm@digeo.com>
   [PATCH] initialise vma->vm_next in do_mmap_pgoff()
   
   We end up inspecting this field in zap_page_range(), on the mmap error path.
   Best initialise it to something...

<akpm@digeo.com>
   [PATCH] More irq balance fixes
   
   From: Andi Kleen <ak@suse.de>
   
   John Stultz noticed that kirqd didn't start because of another logic error,
   which broke irq balancing.  This was still a fallout from the generic
   subarchitecture changes.
   
   Actually it still refuses to balance anything on my test box, but perhaps
   I'm just not able to generate enough interrupts.
   
   Anyways, with this patch the thread is running again at least.

<akpm@digeo.com>
   [PATCH] dirty_writeback_centisecs fixes
   
   This /proc tunable sets the kupdate interval.  It has a couple of problems:
   
   - No way to turn it off completely (userspace dirty memory management
     solutions require this).
   
   - If it has been set to one hour and then the user resets it to five
     seconds, that resetting will not take effect for up to an hour.
   
   Fix that up by providing a sysctl handler.  Setting the tunable to zero now
   disables the kupdate function.

<akpm@digeo.com>
   [PATCH] Copy nanosecond stat values for i386
   
   From: Andi Kleen <ak@suse.de>
   
   A brown paper bag bug, noticed by Ralf Baechle.
   
   i386 needs to define STAT_HAVE_NSEC too, otherwise it won't copy
   the nanosecond values to user space.

<akpm@digeo.com>
   [PATCH] Some subarch warning fixes
   
   From: Andi Kleen <ak@suse.de>
   
   Some recent subarch interface changes caused macro redefinition warnings
   for GET_APIC_ID and APIC_ID_MASK with the generic subarchitecture.  Fixing
   it properly required some reorganization by giving the generic arch a
   mach_apicdef.h too.

<akpm@digeo.com>
   [PATCH] MTD build fix
   
   From: Adrian Bunk <bunk@fs.tum.de>
   
   Fix this:
   
   drivers/mtd/maps/map_funcs.c: In function `simple_map_read64':
   drivers/mtd/maps/map_funcs.c:38: warning: implicit declaration of
   function `__raw_readll'

<akpm@digeo.com>
   [PATCH] improved core support for time-interpolation
   
   From: David Mosberger <davidm@napali.hpl.hp.com>
   
   Basically, what the patch does is provide two hooks such that platforms
   (and subplatforms) can provide time-interpolation in a way that guarantees
   that two causally related gettimeofday() calls will never see time going
   backwards (unless there is a settimeofday() call, of course).
   
   There is some evidence that the current scheme does work: we use it on ia64
   both for cycle-counter-based interpolation and the SGI folks use it with a
   chipset-based high-performance counter.
   
   
   It seems like enough platforms do this sort of thing to provide _some_
   support in the core, especially because it's rather tricky to guarantee
   that time never goes backwards (short of a settimeofday, of course).
   
   This patch is based on something Jes Sorensen wrote for the SGI Itanium 2
   platform (which has a chipset-internal high-res clock).  I adapted it so it
   can be used for cycle-counter interpolation also.  The net effect is that
   "last_time_offset" can be removed completely from the kernel.
   
   The basic idea behind the patch is simply: every time you advance xtime by
   N nanoseconds, you call update_wall_time_hook(NSEC).  Every time the time
   gets set (i.e., discontinuity is OK), reset_wall_time_hook() is called.

<akpm@digeo.com>
   [PATCH] ext3: fix for blocksize < PAGE_CACHE_SIZE
   
   If a buffer_head is outside i_size, block_write_full_page() will leave it
   !buffer_mapped().  We shouldn't attach that buffer to the transaction for
   writeout!
   
   This bug has been in 2.5 for some time.

<akpm@digeo.com>
   [PATCH] /proc/kcore fixes
   
   From: Tony Luck <tony.luck@intel.com>
   
   /proc/kcore has been broken on some architectures for a long time.  Problems
   surround the fact that some architectures allocate memory for vmalloc() and
   thus modules at addresses below PAGE_OFFSET, which results in negative file
   offsets in the virtual core file image provided by /proc/kcore.  There are
   also pending problems for discontig memory systems as /proc/kcore just
   pretends that there are no holes between "PAGE_OFFSET" and "high_memory", so
   an unwary user (ok super-user) can read non-existant memory which may do bad
   things.  There may also be kernel objects that would be nice to view in
   /proc/kcore, but do not show up there.
   
   A pending change on ia64 to allow booting on machines that don't have
   physical memory in any convenient pre-determined place will make things even
   worse, because the kernel itself won't show up in the current implementation
   of /proc/kcore!
   
   The patch attached provides enough hooks that each architecture should be
   able to make /proc/kcore useful.  The patch is INCOMPLETE in that *use* of
   those hooks is ONLY PROVIDED FOR IA64.
   
   Here's how it works.  The default code in fs/proc/kcore.c doesn't set up any
   "elf_phdr" sections ...  it is left to each architecture to make appropriate
   calls to "kclist_add()" to specify a base address and size for each piece of
   kernel virtual address space that needs to be made accessible through
   /proc/kcore.  To get the old functionality, you'll need two calls that look
   something like:
   
    kclist_add(&kcore_mem, __va(0),
                max_low_pfn * PAGE_SIZE);
    kclist_add(&kcore_vmem, (void *)VMALLOC_START,
                VMALLOC_END-VMALLOC_START);
   
   The first makes all of memory visible (__i386__, __mc68000__ and __x86_64__
   should use __va(PAGE_SIZE) to duplicate the original lack of access to page
   0).  The second provides a single map for all "vmalloc" space (the code still
   searches the vmlist to see what actually exists before accessing it).
   
   Other blocks of kernel virtual space can be added as needed, and removed
   again (with kclist_del()).  E.g.  discontiguous memory machines can add an
   entry for each block of memory.  Architectures that allocate memory for
   modules someplace outside of vmalloc-land can add/remove entries on module
   insert and remove.
   
   The second piece of abstraction is the kc_vaddr_to_offset() and
   kc_offset_to_vaddr() macros.  These provide mappings from kernel virtual
   addresses to offsets in the virtual file that /proc/kcore instantiates.  I
   hope they are sufficient to avoid negative offset problems that plagued the
   old /proc/kcore.  Default versions are provided for the old behaviour
   (mapping simply adds/subtracts PAGE_OFFSET).  For ia64 I just need to use a
   different offset as all kernel virtual allocations are in the high 37.5% of
   the 64-bit virtual address space.  x86_64 was the other architecture with
   this problem.  I don't know enough (anything) about the kernel memory map on
   x86_64, so I hope these provide a big enough hook.  I'm hoping that you have
   some low stuff, and some high stuff with a big hole in the middle ...  in
   which case the macros might look something like:
   
   #define kc_vaddr_to_offset(v) ((v) < 0x1000000000000000 ? (v) : \
                                 ((v) - 0xF000000000000000))
   
   But if you have interesting stuff scattered across *every* part of the
   unsigned address range, then you won't be able to squeeze it all into a
   signed file offset.
   
   There are a couple of bug fixes too:
   1) get_kcore_size() didn't account for the elf_prstatus, elf_prpsinfo
      and task_struct that are placed in the PT_NOTE section that is
      part of the header.  We were saved on most configurations by the
      round-up to PAGE_SIZE ... but it's possible that some architectures
      or machines corrupted memory beyond the space allocated for the
      header.
   
   2) The size of the PT_NOTES section was incorrectly set to the size
      of the last note, rather than the sum of the sizes of all the notes.

<akpm@digeo.com>
   [PATCH] remove 16-bit pid assumption from ipc/sem.c
   
   From: Manfred Spraul <manfred@colorfullife.com>
   
   SysV sem operations that involve multiple semaphores can fail in the
   middle, and then sempid (pid of the last successful operation) must be
   restored.  This happens with "sempid >>= 16" - broken due to the 32-bit pid
   values.  The attached patch fixes that by reordering the updates of the
   semaphore fields.
   
   Additionally, the patch fixes the corruption of the sempid value that occurs
   if a wait-for-zero operation fails.
   
   The patch is more than two years old, and was in -dj and -ak kernels.

<jim.houston@attbi.com>
   [PATCH] preallocate signal queue resource  - Posix timers
   
   This adds a new interface to kernel/signal.c which allows signals to be
   sent using preallocated sigqueue structures.  It also modifies
   kernel/posix-timers.c to use this interface.
   
   The current timer code may fail to deliver a timer expiry signal if
   there are no sigqueue structures available at the time of the expiry.
   The Posix specification is clear that the signal queuing resource should
   be allocated at timer_create time.  This allows the error to be returned
   to the application rather than silently losing the signal.
   
   This patch does not change the sigqueue structure allocation policy.  I
   hope to revisit that in another patch.
   
   Here is the definition for the new interface:
   
   struct sigqueue *sigqueue_alloc(void)
      Preallocate a sigqueue structure for use with the functions
      described below.
   
   void sigqueue_free(struct sigqueue *q)
      Free a preallocated sigqueue structure.  If the sigqueue
      structure being freed is still queued, it will be removed
      from the queue.  I currently leave the signal pending.
      It may be delivered without the siginfo structure.
   
   int send_sigqueue(int sig, struct sigqueue *q, struct task_struct *p)
      This function is equivalent to send_sig_info().  It queues
      a signal to the specified thread using  the supplied sigqueue
      structure.  The caller is expected to fill in the siginfo_t
      which is part of the sigqueue structure.
   
   int send_group_sigqueue(int sig, struct sigqueue *q, struct task_struct *p)
      This function is equivalent to send_group_sig_info().  It queues
      the signal to a process allowing the system to select which thread
      will receive the signal in a multi-threaded process.
      Again, the sigqueue structure is used to queue the signal.
   
   Both send_sigqueue() and send_group_sigqueue() return 0 if the signal
   is queued. They return 1 if the signal was not queued because the
   process is ignoring the signal.
   
   Both versions include code to increment the si_overrun count if the
   sigqueue entry is for a Posix timer and they are called while the
   sigqueue entry is still queued.  Yes, I know that the current code
   doesn't rearm the timer until the signal is delivered.  Having this
   extra bit of code doesn't do any harm, and I plan to use it.
   
   These routines do not check if there already is a legacy (non-realtime)
   signal pending.  They always queue the signal.  This requires that
   collect_signal() always checks if there is another matching siginfo
   before clearing the signal bit.

<viro@parcelfarce.linux.theplanet.co.uk>
   [NET]: Eliminate {init,register,unregister}_fcdev.

<viro@parcelfarce.linux.theplanet.co.uk>
   [NET]: Eliminate init_hippi_dev and {un,}register_hipdev.

<viro@parcelfarce.linux.theplanet.co.uk>
   [NET]: Convert most tokenring drivers away from {init,register,unregister}_trdev, only ibmtr remains.

<davem@nuts.ninka.net>
   [NET]: Kill PTI fddi driver, never completed and no plans to finish.

<viro@parcelfarce.linux.theplanet.co.uk>
   [NET]: Eliminate init_fddidev.

<anton@samba.org>
   ppc64: ppc64 update

<davem@nuts.ninka.net>
   [NET]: Fix CONFIG_HIPPI build.

<davem@nuts.ninka.net>
   [NET]: Fix typos in init_trdev changes to lanstreamer.c

<anton@samba.org>
   ppc64: copy_tofrom_user exception handling fix from Paul Mackerras

<davem@nuts.ninka.net>
   [NET]: Eliminate {init,register,unregister}_trdev().

<jgrimm@touki.austin.ibm.com>
   [SCTP] sctp_jitter() needs to protect against div by 0.
   
   User can configure rto_initial to zero... we go boom.

<anton@samba.org>
   ppc64: kcore support

<anton@samba.org>
   ppc64: Increase maximum allocation size to 16MB for largepage support

<davem@nuts.ninka.net>
   [NET]: Eliminate init_etherdev usage from arch/um drivers.

<anton@samba.org>
   ppc64: FORCE_MAX_ZONEORDER is actually order + 1, from Dave Gibson

<anton@samba.org>
   ppc64: fix compile error introduced in threaded coredump patch

<davem@nuts.ninka.net>
   [IPV6]: In ipv6_add_dev dont call __ipv6_regen_rndid without initial reference held.
   
   Based upon a report from Andrew Morton.

<davem@nuts.ninka.net>
   [NET]: Use INIT_LIST_HEAD in arch/um/drivers/net_kern.c

<davem@nuts.ninka.net>
   [NET]: Typo in iph5527.c driver changes.

<herbert@gondor.apana.org.au>
   [PATCH] Fix ide-mod unload crash
   
   This patch fixes an unload crash when no PCI drivers are loaded.

<hch@lst.de>
   [PATCH] fix signal.h compilation on PPC
   
   signal.h uses spinlock_t now so it needs to include spinlock.h.
   Without this compilation failes on PPC.

<davidm@napali.hpl.hp.com>
   [PATCH] fix TCP roundtrip time update code
   
   One of those very-hard-to-track-down, trivial-to-fix kind of problems:
   without this patch, TCP roundtrip time measurements will corrupt the
   routing cache's RTT estimates under heavy network load (the bug causes
   RTAX_RTT to go negative, but since its type is u32, you end up with a
   huge positive value...).  From there on, later TCP connections quickly
   will go south.
   
   The typo was introduced 8 months ago in v1.29 of the file by the patch
   entitled "Cleanup DST metrics and abstrct MSS/PMTU further".

<anton@samba.org>
   [PATCH] fix matroxfb compile on ppc64]
   
   Here we really want CONFIG_ALL_PPC, since these headers are only valid
   for PPC Mac machines (barf: badly named config option).

<anton@samba.org>
   ppc64: Call setup_kcore later in boot, we call kmalloc from it

<agrover@groveronline.com>
   ACPI: Trivial name init patch (Bjorn Helgaas)

<markh@osdl.org>
   [PATCH] megaraid driver fix for 2.5.70
   
   A recent change to the megaraid driver to fix some memset calls resulted
   in overflowing the arrays being cleared and causing a system panic.
   This patch fixes the problem by making sure that the arrays being
   cleared are dimensioned to the correct size.  The patch has been tested
   on osdl's stp machines that have megaraid controllers.

<sam@mars.ravnborg.org>
   kbuild: Updated make help
   
   Patches originally by Adrian Bunk and Rudmer van Dijk.
   Included "make V=0|1" and "make C=1"

<sam@mars.ravnborg.org>
   kbuild: Silence kbuild with make V=0
   
   With make version 3.80 kbuild echo'ed the fixdep command
   executed each time a c file was compiled.
   This has been tracked down to a bug in version 3.80 of make.
   Avoiding newlines in canned command sequences avoid this problem.
   
   At the same time consolidated similar code in Makefile.build,
   and avoiding a few ifdef/endif pairs resulting in a more readable makefile.

<mochel@osdl.org>
   [driver model] Clean up CPU unregistration.
   
   From Dave Jones.

<sam@mars.ravnborg.org>
   kbuild: CROSS_COMPILE and ARCH definitions
   
   Patch originally by Jesse Barnes <jbarnes@sgi.com>
   
   Previously the user were required to supply CROSS_COMPILE and ARCH on the
   commandline to make, alternatively they patched the Makefile direct.
   The following patch allows the user to specify the value of these in
   a variable assigned during init or similar.
   

<mochel@osdl.org>
   Driver Class: don't call put_device() when we never called get_device()
   
   From Greg: 
   
   This fixes a oops when unplugging pci network devices.

<mochel@osdl.org>
   [driver model] Clean up class release handling.
   
   Based on a patch by Stephen Hemminger.

<mochel@osdl.org>
   [kobject] Update Documentation and licenses. 
   
   - Make it very explicit that supplying an object desctructor is imperative
     if using the interface for object reference counting. 
   
   - Add GPL statement to the source files. 
   
   - Add GFL (http://www.fsf.org/licenses/fdl.html) statement to documentation.

<mochel@osdl.org>
   [driver model] Update copyrights and license statements. 
   
   It's a slow afternoon. 

<mochel@osdl.org>
   [driver model] fix comment in device.h

<greg@kroah.com>
   [PATCH] PCI: make pci_setup_device(), pci_alloc_primary_bus() and pci_alloc_primary_bus_parented() static
   
   No one is calling these functions.

<greg@kroah.com>
   [PATCH] PCI: make pools_lock and pci_lock static.
   
   No one is using them outside the pci core.

<greg@kroah.com>
   [PATCH] ACPI PCI Hotplug: remove hand made pci_find_bus function

<greg@kroah.com>
   [PATCH] IBM PCI hotplug: remove hand made pci_find_bus function.

<B.Zolnierkiewicz@elka.pw.edu.pl>
   [PATCH] create /proc/ide/hdX/capacity only once
   
   In ide_register_subdriver() create drive->proc entries only if driver is
   not idedefault_driver.
   
   [ There won't be /proc/ide/hdX/capacity for devices attached
     to idedefault_driver now, it reported 0x7fffffff previously. ]
   
   Do not create drive->proc entries in create_proc_ide_drives(), they are
   added later in ide_register_subdriver().

<B.Zolnierkiewicz@elka.pw.edu.pl>
   [PATCH] kill recreate_proc_ide_device()
   
   It is unused and not needed

<hawkes@oss.sgi.com>
   [PATCH] 2.5.70 remove smp_send_reschedule() cruft
   
   smp_send_reschedule_all() is unused in 2.5 and can be eliminated.

<ahaas@airmail.net>
   [PATCH] C99 patches for fs/
   
   Add C99 initializers to fs/bio.c and fs/dquot.c.  And fs/libfs.c had an
   obsolete GCC style initialzers that is converted to C99 style.

<ahaas@airmail.net>
   [PATCH] C99 struct initializers for kernel files

<greg@kroah.com>
   [PATCH] IBM PCI hotplug: remove direct access of pci_devices variable.

<greg@kroah.com>
   PCI Hotplug: move drivers/hotplug/* to drivers/pci/hotplug/*
     
   This will let include/linux/pci.h get smaller, and is what I should 
   have done in the first place 2 years ago...

<chas@cmf.nrl.navy.mil>
   [ATM]: more cleanup in HE driver

<davem@nuts.ninka.net>
   [NET]: Use INIT_LIST_HEAD correctly in arch/um/drivers/net_kern.c

<rddunlap@osdl.org>
   [NET]: add RFC references for Linux SNMP MIBs.

<rddunlap@osdl.org>
   [NET]: Typo corrections only.

<rddunlap@osdl.org>
   [IPV6]: Add IPv6 routing table statistic: fib_discarded_routes.

<yoshfuji@linux-ipv6.org>
   [NET]: Add ip-sysctl.txt entries for missing ip{,6}frag_* sysctls.

<hch@lst.de>
   [NET]: Move dmascc away from setup.c

<yoshfuji@linux-ipv6.org>
   [IPV6]: Set dead flag on idev if snmp6_register_dev() fails.

<davem@nuts.ninka.net>
   [IPSEC]: {esp,ah} --> {esp4,ah4}.

<hch@lst.de>
   [NET]: Fix non-modular sdla.c build.

<yoshfuji@linux-ipv6.org>
   [IPV6]: Fix several errors in udpv6_connect().
   
   - Pointer within an automatic storage class variable fl was illegally
     cached using ip6_dst_store()
   - uninitialized saddr was copied to fl.fl6_src
   - dont cache if ipv6_saddr_get() failed.
   
   Based upon patch from Ville Nuorvala (vnuorval@tcs.hut.fi)

<greg@kroah.com>
   [PATCH] PCI: Remove a lot of PCI core only functions from include/linux/pci.h

<jmorris@intercode.com.au>
   [CRYPTO]: Use "select" kconfig facility instead of fragile defaults.

<greg@kroah.com>
   [PATCH] PCI: remove CONFIG_PROC_FS checks in .c files.

<greg@kroah.com>
   [PATCH] PCI: Move more functions out of include/linux/pci.h that don't need to be there.

<yoshfuji@linux-ipv6.org>
   [IPV6]: typo, unrequired #undef and bad operator precedence.
   - no need to #undef CONFIG_IPV6_SUBTREE
   - use parentheses around "&" and "|".
   - fib_repair_tree() is typo.

<hch@lst.de>
   [NET]: Kill useless/wrong Version line from net/core/dv.c

<hch@lst.de>
   [NET]: net/core/dst.c typo.

<hch@lst.de>
   [NET]: Fix coding style in net/core/filter.c

<hch@lst.de>
   [NET]: Fix coding style in net/core/iovec.c

<viro@parcelfarce.linux.theplanet.co.uk>
   [NET]: Move sk98lin driver away from init_etherdev().

<viro@parcelfarce.linux.theplanet.co.uk>
   [NET]: Move 3c509 driver away from init_etherdev().

<rmk@flint.arm.linux.org.uk>
   [ARM] Fix more missing irqreturn_t and remove a static no_action func.

<herbert@gondor.apana.org.au>
   [IPSEC]: Include linux/slab.h where necessary.

<viro@parcelfarce.linux.theplanet.co.uk>
   [NET]: Move sunqe.c driver away from init_etherdev().

<davem@nuts.ninka.net>
   [NET]: Move arch/cris drivers away from init_etherdev().

<viro@parcelfarce.linux.theplanet.co.uk>
   [NET]: Move bmac.c away from init_etherdev().

<davem@nuts.ninka.net>
   [NET]: Convert ia64 simeth.c away from init_etherdev().

<davem@nuts.ninka.net>
   [NET]: Convert PPC 8260_io/enet.c away from init_etherdev().

<davem@nuts.ninka.net>
   [NET]: Convert PPC 8260_io/fcc_enet.c away from init_etherdev().

<davem@nuts.ninka.net>
   [NET]: Convert PPC 8xx_io/enet.c away from init_etherdev().

<davem@nuts.ninka.net>
   [NET]: Convert PPC 8xx_io/fec.c away from init_etherdev().

<davem@nuts.ninka.net>
   [NET]: Actually apply Al's sunqe.c changes.

<davem@nuts.ninka.net>
   [NET]: Fix thinkos in PPC 8260_io/fcc_enet.c changes.

<thomas@osterried.de>
   [AX25]: AX.25 bug fixes.
   - Flxnet CRC handling fix for mkiss.c
   - Use after free bug in ax25_ip.c

<davej@codemonkey.org.uk>
   [AGPGART] Report fixing of errata, and add missing printk stuff (\n's, KERN_INFO, PFX)

<davej@codemonkey.org.uk>
   [AGPGART] Kill useless printk in frontend.
   This has served no useful purpose ever afaics.

<davej@codemonkey.org.uk>
   [AGPGART] Missing printk levels.

<rmk@flint.arm.linux.org.uk>
   [ARM] Move dma_alloc_coherent() to consistent.c

<greg@kroah.com>
   [PATCH] PCI: Grab reference count on pci_dev if the pci driver binds to the device.
   
   And remember to decrement the count after remove() is called.

<sam@mars.ravnborg.org>
   kbuild: Silence output with make 3.80
   
   In the top-level makefile escaped two lines to avoid launching a second subshell.
   This make the build a bit less verbose with make V=0

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in sound/core/memalloc.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in sound/oss/esssolo1.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in sound/oss/maestro.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in sound/oss/via82cxxx_audio.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in sound/pci/rme9652/hammerfall_mem.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/acpi/pci_irq.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/char/agp/amd-k8-agp.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/char/agp/generic.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/char/agp/isoch.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/char/hw_random.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/char/watchdog/amd7xx_tco.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/char/watchdog/i810-tco.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/ide/pci/cs5530.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/ide/pci/hp2366.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/ide/pci/pdc202xx_new.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/ide/setup-pci.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/macintosh/via-pmu.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/message/fusion/mptbase.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/message/i2o/i2o_core.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/net/e100/e100_main.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/net/e1000/e1000_main.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/net/ixgb/ixgb_main.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/parport/parport_pc.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/pci/hotplug/ibmphp_core.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/pci/pci.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/pci/proc.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/pci/search.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/pci/setup-irq.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/pnp/resource.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/video/pm2fb.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in drivers/video/sis/sis_main.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/i386/pci/irq.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/i386/kernel/cpu/cpufreq/gx-suspmod.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/i386/pci/i386.c

<sam@mars.ravnborg.org>
   kbuild: Utilise kbuild infrastructure for vsyscall
   
   Added bonus:
   1) Check for changed cammandlines performed
   2) Nice output with make V=0

<rmk@flint.arm.linux.org.uk>
   [ARM] Convert platform devices to use platform_device
   
   Since struct platform_device now has the ability to pass resources,
   defined by the platform to the device driver, we can now use this
   to handle platform specific devices.  One such instance is the
   StrongARM SA1111 companion chip, which can appear in various address
   spaces, and connected to different IRQ lines depending on how many
   cups of coffee the hardware designer had, the direction of the wind
   outside the designers office that day.
   
   We also convert some of the other StrongARM peripheral on-chip
   devices to use struct platform_device.
   
   ARM also provides a platform_add_devices() function which can be
   used by platform code to bulk-register a tabular set of platform
   devices.

<rmk@flint.arm.linux.org.uk>
   [ARM] Tidy up Integrator core support.
   
   This merges arch.c, irq.c and mm.c into one core file for this
   platform; it's pointless keeping these separate.

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/alpha/kernel/sys_sio.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/arm/kernel/bios32.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/ia64/hp/common/sba_iommu.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/ia64/sn/io/pci_bus_cvlink.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/ia64/sn/io/pciba.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/ia64/sn/io/sn2/pci_bus_cvlink.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/mips/ddb5074/pci.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/mips/ddb5476/pci.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/mips/ddb5xxx/ddb5477/pci.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/mips/mips-boards/generic/pci.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/mips/sni/pci.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/mips64/mips-boards/generic/pci.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/mips64/sgi-ip32/ip32-pci.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/ppc/kernel/pci.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/ppc/platforms/chrp_pci.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/ppc/platforms/gemini_pci.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/ppc/platforms/pmac_pci.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/ppc/platforms/prep_pci.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/ppc64/kernel/iSeries_pci.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/ppc64/kernel/pSeries_pci.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/ppc64/kernel/pci_dma.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/sh/kernel/pci-sh7751.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/v850/kernel/rte_mb_a_pci.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/x86_64/kernel/bluesmoke.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/x86_64/kernel/pci-gart.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/x86_64/pci/irq.c

<greg@kroah.com>
   [PATCH] PCI: remove usage of pci_for_each_dev() in arch/x86_64/pci/x86-64.c

<greg@kroah.com>
   [PATCH] PCI: finally remove pci_for_each_dev() now that all users of it are gone.

<greg@kroah.com>
   PCI: remove usage of pci_for_each_dev() in arch/ppc64/kernel/pci.c

<acme@conectiva.com.br>
   o net: create struct sock_common and use in struct sock & tcp_tw_bucket
   
   With this the data dependency is reduced to just making sure that the first
   member of both struct sock and struct tcp_tw_bucket are a struct sock_common.
   
   Also makes it easier to grep for struct sock and struct tcp_tw_bucket usage in
   the tree as all the members in those structs are prefixed, respectively, with
   sk_ and tw_, like struct inode (i_), struct block_device (bd_), etc.
   
   Checked namespace with make tags/ctags, just one colision with the macros for
   the struct sock members, with a wanrouter struct, fixed that
   s/sk_state/state_sk/g in the wanrouter struct.
   
   Checked as well if the names of the members in both structs collided with some
   macro, none found.

<Jeff.Wiedemeier@hp.com>
   [PATCH] compile fix for agp_memory struct definitition change
   
   In 2.5.70, the agp_memory struct changed from:
      typedef struct agp_memory
   to:
      struct agp_memory
   
   This patch propagates that change into include/asm-alpha/agp_backend.h and
   arch/alpha/kernel/core_{titan,marvel}.c
   
   /jeff

<rth@kanga.twiddle.net>
   [ALPHA] Add posix timer and clock syscalls.

<jgarzik@redhat.com>
   [netdrvr] gcc 3.3 cleanups
   
   Mostly adding 'ULL' modifier to 64-bit constants.

<jgarzik@redhat.com>
   [netdrvr skge] add ULL modifier to 64-bit constant

<reeja.john@amd.com>
   [netdrvr amd8111e] link against mii lib

<akpm@digeo.com>
   [PATCH] fix broken networking
   
   Fix broken "cleanup"

<akpm@digeo.com>
   [NET]: Fix broken cleanups in net/core/iovec.c

<akpm@digeo.com>
   [PATCH] aio: small cleanups
   
   - comment fixes
   
   - duplicated assignments
   
   - Remove a prototype which is in aio.h already
   
   - Some __user annotation
   
   - use the existing symbolic names, not magic numbers.

<akpm@digeo.com>
   [PATCH] clean up timer interpolation code
   
   From: Christoph Hellwig <hch@lst.de>
   
   - don't add one level of indentation when taking a lock
   
   - remove useless ti_global struct

<akpm@digeo.com>
   [PATCH] radio-cadet.c: remove unnecessary copy_to_user()
   
   From: Hollis Blanchard <hollisb@us.ibm.com>
   
   As pointed out by the Stanford checker, 'v' is not tainted.  The driver
   shouldn't be using copy_to_user() in cadet_do_ioctl() at all:
   
     cadet_do_ioctl() is being called by drivers/media/video/videodev.c:
     video_usercopy(), which has already copied the buffer 'arg' (aka 'v')
     into kernel space, and will copy it back after cadet_do_ioctl()
     returns.  So all the direct 'v' accesses are correct.

<akpm@digeo.com>
   [PATCH] cmpci: fix improper access to userspace
   
   From: Hollis Blanchard <hollisb@us.ibm.com>
   
   Fix a direct userspace access, found by the Stanford checker.

<akpm@digeo.com>
   [PATCH] zr36120: fix improper access to userspace
   
   From: Hollis Blanchard <hollisb@us.ibm.com>
   
   Fix a direct userspace access, found by the Stanford checker.

<akpm@digeo.com>
   [PATCH] remove unsafe BUG_ON()
   
   From: Hugh Dickins <hugh@veritas.com>
   
   PageDirty BUG_ON in __remove_inode_page is, and always has been, unsafe for
   SMP or preemption: truncation may be racing against unmapping's
   set_page_dirty in zap_pte_range (amongst a few other possibilities).
   !PageUptodate error in __set_page_dirty_buffers is unsafe then too.

<akpm@digeo.com>
   [PATCH] pnpbios dereferencing user pointer
   
   From: Hollis Blanchard <hollisb@us.ibm.com>
   
   Another simple case of a memcpy that should be copy_from_user...
   
   Also fix some error-path memory leaks.

<akpm@digeo.com>
   [PATCH] fix bw-qcam.c bad copy_to_user
   
   From: Hollis Blanchard <hollisb@us.ibm.com>
   
   Like radio-cadet.c, bw-qcam.c is calling copy_to_user() where it shouldn't.
   The user buffer is copied to/from kernel space by
   drivers/media/video/videodev.c:video_usercopy().

<akpm@digeo.com>
   [PATCH] Graceful failure in devfs_remove()
   
   From: Pavel Roskin <proski@gnu.org>, via Christoph Hellwig <hch@infradead.org>
   
   It's already the second time that I encounter a kernel panic in the same
   place.  When devfs_remove() is called on a non-existent file entry, the
   kernel panics and I have to reboot the system.
   
   First time it was unregistering of pseudoterminals.  This time it's
   ide-floppy module that doesn't register devfs entries if the media is absent
   but still tries to unregister them.  The bug in ide-floppy will be reported
   separately.
   
   The point of this message is that the failure in devfs_remove() is possible,
   especially with rarely used drivers.  Secondly, is not fatal enough to
   justify an immediate panic and reboot.  Thirdly, devfs misses a chance to
   tell the user what's going wrong.

<akpm@digeo.com>
   [PATCH] Fix generic_file_write() again.
   
   From: "Milton D. Miller II" <miltonm@realtime.net>
   
   The code at present has a small problem: when a fault is encountered we will
   run commit_write() to cover the amount of data which was successfully copied
   in from userspace.
   
   But filemap_copy_from_user() may have zeroed out some more of the page.  So
   pagecache now has zeroes and the buffer_head which represents those zeroes is
   not dirtied.  So a subsequent eviction and re-read of the file in the window
   beyond the faulting offset will return the file's old contents and not the
   zeroes.
   
   So we change filemap_copy_from_user_iovec() to have the same behaviour as the
   non-iovec filemap_copy_from_user(), and ensure that the commit_write() covers
   the parts of the page which copy_from_user() zeroed out.

<akpm@digeo.com>
   [PATCH] reiserfs option parser fix and ability to pass
   
   From: Oleg Drokin <green@namesys.com>
   
   This patch adds support for remounting taking into account all extra options
   you may want to pass it.  (by Jeff Mahooney).
   
   Also it reworks the parser to correctly deal with mutually exclusive options.
   Now whatever option was specified last will take an effect.
   
   - If you pass more than one jdev= option, the error will be reported and
     mount/remount refused.
   
   - If you pass incorrect alloc= suboptions, the mount/remount will fail.
     (it did not before).
   
   - nolargeio now actually looks at its argument.  Argument is expected to be
     numeric.  If it is zero, default io size is set to 128k (default setting),
     if it is non-zero, default io size is set to PAGE_SIZE.

<akpm@digeo.com>
   [PATCH] reiserfs support for blocksizes other than 4096 bytes
   
   From: Oleg Drokin <green@namesys.com>
   
   This patch allows reiserfs to support blocksizes from 1024 bytes and up to
   PAGE_CACHE_SIZE.  Also it fixes two glitches that prevent reiserfs from
   working correctly in case if PAGE_CACHE_SIZE is bigger than blocksize.
   
   Originally this patch was created by Edward Shushkin and Vladimir Saveliev,
   and then it was adapted to modern 2.4 and 2.5 by me.
   
   Also people should be aware that 1024 bytes blocksize is not very good thing
   as tree grows very fast.  mkreiserfs is able to create filesystems with
   different blocksizes for quite a while already (-b switch).

<akpm@digeo.com>
   [PATCH] hugetlbfs: mount options and permissions
   
   From: "Seth, Rohit" <rohit.seth@intel.com>
   
   This patch enables system administrators to more flexibly assign read/write
   permissions to files in hugetlbfs.  Mount options are added which will
   specify the uid, gid and mode of the filesystem's root directory.
   
   This patch also enables super users to do chown/chgrp on files in hugetlbfs.
   
   Also included in this patch is the support for uid, gid and mode command line
   options for mount command for hugetlbfs.
   
   The following mount options are added to hugetlbfs:
   
      uid=value gid=value mode=value
   
   The values may be specified in hex (0xNNN), decimal or octal (0NNN).

<akpm@digeo.com>
   [PATCH] DEADLINE: hash removal fix
   
   From Jens: It fixes the occasional
   
      BUG_ON(list_empty(&req->queuelist));
   
   which people have been hitting in include/linux/blkdev.h:
   blkdev_dequeue_request()

<akpm@digeo.com>
   [PATCH] ext3: fix deadlock in journal_create()
   
   From: Mark Fasheh <mark.fasheh@oracle.com>
   
   journal_create() is called under down_write(s_umount) on the mount path.  But
   it calls fsync_bdev(), which wants down_write(s_umount).
   
   Change journal_create() to run sync_blockdev() instead.  Just to write out
   the new journal's blocks.

<davidm@napali.hpl.hp.com>
   [PATCH] allow thread_info