ChangeSet@1.1585, 2004-04-26 23:16:34-07:00, akpm@osdl.org
  [PATCH] kbuild: Improved external module support
  
  From: Sam Ravnborg <sam@ravnborg.org>
  
  The external module support recently introduced caused a number of problems:
  - To build an external module the Module.symvers file was needed
  - To create the Module.symvers file a module was required
  - If Module.symvers was missing kbuild boiled out with an error
  - If vmlinux was missing also the stage 2 of module build failed (make -k)
  - It was not documented what was needed to actually bauild a module
  
  The following patch addresses this by adding the following functionality:
  - Always generate the Module.symvers file
  - Ignore a missing Module.symvers file
  - Add a new target modules_prepare, it prepares the kernel for building
    external modules, and is also usefull with O=
  - And it adds some more comments to Makefile.modpost, so others may follow
    it with some luck
  - .modpost.cmd is no longer generated
  
  This should close all reports on issues with respect to building external
  modules with current kernel - which has been identified as kernel problems.

ChangeSet@1.1584, 2004-04-26 23:04:34-07:00, akpm@osdl.org
  [PATCH] doc: specifiying module parameters
  
  From: "Randy.Dunlap" <rddunlap@osdl.org>
  
  kernel-parameters.txt: add info on how to specify loadable module
  parameters vs.  built-in module parameters

ChangeSet@1.1583, 2004-04-26 23:04:25-07:00, akpm@osdl.org
  [PATCH] SELinux ptrace race fix
  
  From: Stephen Smalley <sds@epoch.ncsc.mil>
  
  Looking again at the SELinux ptrace check, I believe that there is an
  unrelated race due to the fact that the parent link is only updated after
  releasing the task lock in ptrace_attach (and this is necessary as task lock
  doesn't nest with write lock of tasklist_lock).
  
  The patch below changes SELinux to save the tracing process' SID upon a
  successful selinux_ptrace hook call and then use that SID in the ptrace check
  in apply_creds in order to avoid such races.  This allows us to preserve the
  fine-grained process-to-process ptrace check upon exec (vs.  the global
  CAP_SYS_PTRACE privilege => PT_PTRACE_CAP flag used by the capability module)
  while still avoiding races.

ChangeSet@1.1582, 2004-04-26 23:04:15-07:00, akpm@osdl.org
  [PATCH] ppc64: remove duplicated mb() and comment from __cpu_up
  
  From: Nathan Lynch <nathanl@austin.ibm.com>
  
  This seems to have slipped in during a manual merge at some point.

ChangeSet@1.1581, 2004-04-26 23:04:06-07:00, akpm@osdl.org
  [PATCH] SubmittingPatches diffing update.
  
  From: Zwane Mwaikambo <zwane@arm.linux.org.uk>
  
  A kernel janitor recently got confused by the advice in SubmittingPatches
  and was sending patches with the wrong strip level, i think just about
  everyone would prefer standard patches.  Also mention various patch
  management scripts for batching up large deltas.

ChangeSet@1.1580, 2004-04-26 23:03:56-07:00, akpm@osdl.org
  [PATCH] Set module license in mcheck/non-fatal.c
  
  From: Herbert Xu <herbert@gondor.apana.org.au>
  
  This patch sets the module license for mcheck/non-fatal.c.  The module
  doesn't work at all without this as one of the symbols it needs is only
  exported as GPL.

ChangeSet@1.1579, 2004-04-26 23:03:46-07:00, akpm@osdl.org
  [PATCH] remove Documentation/DocBook/parportbook.tmpl
  
  From: Christoph Hellwig <hch@lst.de>
  
  The partportbook is licensed under the GFDL and Linus agreed to remove
  all GFDL licensed files in
  http://www.ussg.iu.edu/hypermail/linux/kernel/0306.1/1968.html.
  
  I pinged the author the first time on the 2nd of april but still didn't get
  a reply, then send a patch to Linus to remove it last week but linus
  ignored it.  Here's the patch again:

ChangeSet@1.1578, 2004-04-26 23:03:36-07:00, akpm@osdl.org
  [PATCH] fix fs/proc/task_nommu.c compile
  
  From: Christoph Hellwig <hch@lst.de>
  
  this file has been broken for ages, but it seems few !CONFIG_MMU users use
  mainline at all.

ChangeSet@1.1577, 2004-04-26 23:03:24-07:00, akpm@osdl.org
  [PATCH] ppc32: dma_unmap_page() fix
  
  From: <a.othieno@bluewin.ch> (Arthur Othieno)
  
  Duplicate definition of dma_unmap_single() should actually be
  dma_unmap_page().
  
  (acked by Tom Rini)

ChangeSet@1.1576, 2004-04-26 23:03:14-07:00, akpm@osdl.org
  [PATCH] nfs_writepage() retval fix
  
  Both ->writepage() and ->writepages() should return 0 or a negative error
  code.  It shouldn't return the number of bytes which were written.
  
  From: Trond Myklebust <trond.myklebust@fys.uio.no>
  
     Redirty the page if all of the modified parts of the page weren't
     written out.

ChangeSet@1.1575, 2004-04-26 23:03:05-07:00, akpm@osdl.org
  [PATCH] blkdev.h: functions no longer inline
  
  From: "Randy.Dunlap" <rddunlap@osdl.org>
  
  These are EXPORTed SYMBOLs; 'inline' was removed from them in ll_rw_blk.c
  on 2002-11-25.

ChangeSet@1.1574, 2004-04-26 23:02:54-07:00, akpm@osdl.org
  [PATCH] fs/proc/array.c: workaround for gcc-2.96
  
  From: Alan Stern <stern@rowland.harvard.edu>
  
  This patch is needed to work around gcc-2.96's limited ability to cope with
  long long intermediate expression types.  I don't know why the code
  compiled okay earlier and failed now.

ChangeSet@1.1573, 2004-04-26 23:02:44-07:00, akpm@osdl.org
  [PATCH] ppc32: fix head_44x.S copyrights
  
  From: Matt Porter <mporter@kernel.crashing.org>
  
  A copyright change to properly show the lineage of this file.

ChangeSet@1.1572, 2004-04-26 23:02:34-07:00, akpm@osdl.org
  [PATCH] doc: tips for S3 resume on radeon cards
  
  From: Pavel Machek <pavel@ucw.cz>
  
  Stefan has pretty useful tips for getting S3 to work on radeon notebooks.
  This brings whole new class of systems to be usable for S3.

ChangeSet@1.1571, 2004-04-26 23:02:25-07:00, akpm@osdl.org
  [PATCH] ISDN Eicon driver: remove call to trap usermode helper
  
  From: Armin Schindler <armin@melware.de>
  
  This patch removes the function to call a usermode helper if the hardware
  and its firmware has a problem.  This feature is already implemented in the
  user utility and the driver does not need to care about it.

ChangeSet@1.1570, 2004-04-26 23:02:14-07:00, akpm@osdl.org
  [PATCH] hugepage fixes
  
  From: William Lee Irwin III <wli@holomorphy.com>
  
  mm/hugetlb.c is putting the destructor in head->lru.prev not head[1].mapping;
  fix below along with nuking huge_page_release(), which simply duplicates
  put_page().

ChangeSet@1.1569, 2004-04-26 23:02:05-07:00, akpm@osdl.org
  [PATCH] simplify put_page()
  
  By requiring that compound pages implement destructors we can drop some code
  from put_page().

ChangeSet@1.1568, 2004-04-26 23:01:55-07:00, akpm@osdl.org
  [PATCH] smb_writepage retval fix
  
  ->writepage() is supposed to return zero or a negative error code.  Returning
  the number of bytes written will confuse the VFS.

ChangeSet@1.1567, 2004-04-26 23:01:44-07:00, akpm@osdl.org
  [PATCH] slab: use order 0 for vfs caches
  
  We have interesting deadlocks when slab decides to use order-1 allocations for
  ext3_inode_cache.  This is because ext3_alloc_inode() needs to perform a
  GFP_NOFS 1-order allocation.
  
  Sometimes the 1-order allocation needs to free a huge number of pages (tens of
  megabytes) before a 1-order grouping becomes available.  But the GFP_NOFS
  allocator cannot free dcache (and hence icache) due to the deadlock problems
  identified in shrink_dcache_memory().
  
  So change slab so that it will force 0-order allocations for shrinkable VFS
  objects.  We can handle those OK.

ChangeSet@1.1566, 2004-04-26 23:01:34-07:00, akpm@osdl.org
  [PATCH] isofs "default NLS charset not used" fix
  
  From: Marek Szuba <scriptkiddie@wp.pl>
  
  Use the configured default NLS rather than hardwire it.

ChangeSet@1.1565, 2004-04-26 23:01:25-07:00, akpm@osdl.org
  [PATCH] fix CONFIG_SYSFS=n compile warning
  
  From: Matt Mackall <mpm@selenic.com>

ChangeSet@1.1564, 2004-04-26 23:01:14-07:00, akpm@osdl.org
  [PATCH] dio_bio_reap() return value fix
  
  This function doesn't correctly accumulate -EIO for its caller.

ChangeSet@1.1563, 2004-04-26 23:01:02-07:00, akpm@osdl.org
  [PATCH] task_lock() comment update

ChangeSet@1.1562, 2004-04-26 23:00:52-07:00, akpm@osdl.org
  [PATCH] s390: no timer interrupts in idle.
  
  From: Martin Schwidefsky <schwidefsky@de.ibm.com>
  
  This patch add a system control that allows to switch off the jiffies timer
  interrupts while a cpu sleeps in idle.  This is useful for a system running
  with virtual cpus under z/VM.

ChangeSet@1.1561, 2004-04-26 23:00:41-07:00, akpm@osdl.org
  [PATCH] efibootmgr location change
  
  From: Matt Domsch <Matt_Domsch@dell.com>
  
  I moved the home of the efibootmgr utility from domsch.com to
  linux.dell.com.  Note the move in drivers/firmware/Kconfig, also note
  version 0.5.0-test3 or above is necessary.

ChangeSet@1.1560, 2004-04-26 23:00:32-07:00, akpm@osdl.org
  [PATCH] efivars fixes
  
  From: Matt Domsch <Matt_Domsch@dell.com>
  
  Patch below fixes three small bugs in efivars.c as posted by Matt Tolentino
  last week and included in the latest -mm.  Aside from this small patch, I'm
  quite pleased with Matt T's work, thanks!
  
  - dummy() used for reading write-only sysfs files should return -ENODEV to
    indicate failure, not 0.
  
  - efivar_create() should return the number of bytes written on success, not
    zero.
  
  - efivar_delete() should return the number of bytes written on success, not
    zero.

ChangeSet@1.1559, 2004-04-26 23:00:23-07:00, akpm@osdl.org
  [PATCH] efivars: remove x86 references
  
  From: Matt Tolentino <metolent@snoqualmie.dp.intel.com>
  
  Third efivars driver update patch that removes x86 references to the /proc
  version of the driver.

ChangeSet@1.1558, 2004-04-26 23:00:13-07:00, akpm@osdl.org
  [PATCH] efivars: add to drivers/firmware
  
  From: Matt Tolentino <metolent@snoqualmie.dp.intel.com>
  
  Second efivars driver update patch that adds efivars into the drivers/firmware
  directory.

ChangeSet@1.1557, 2004-04-26 23:00:00-07:00, akpm@osdl.org
  [PATCH] efivars: remove from arch/ia64
  
  From: Matt Tolentino <metolent@snoqualmie.dp.intel.com>
  
  I broke up the efivars driver update patch I had sent out quite a while ago
  into several smaller patches.  This includes several fixes and suggestions
  that were pointed out.  The patches are broken down as follows:
  
  1 - remove all traces of efivars from arch/ia64/
  2 - add new sysfs based efivars driver into
      drivers/firmware with accompanying Kconfig/Makefile
      changes to make it fully functional for ia64 again.
  3 - cleans up x86 references to the /proc version of
      the efivars driver.

ChangeSet@1.1556, 2004-04-26 22:59:49-07:00, akpm@osdl.org
  [PATCH] m68k bitops
  
  From: Geert Uytterhoeven <geert@linux-m68k.org>
  
  M68k bitops updates (from Roman Zippel):
    - Optimize find_{first,next}_zero_bit()
    - Add missing implementations of find_{first,next}_bit()

ChangeSet@1.1555, 2004-04-26 22:59:38-07:00, akpm@osdl.org
  [PATCH] m68k: Amiga A2065 Ethernet KERN_*
  
  From: Geert Uytterhoeven <geert@linux-m68k.org>
  
  Amiga A2065 Ethernet: Add KERN_* prefixes to printk() messages

ChangeSet@1.1554, 2004-04-26 22:59:23-07:00, akpm@osdl.org
  [PATCH] prune_dcache comment fix
  
  From: Maneesh Soni <maneesh@in.ibm.com>
  
  Clarify some things which were confusing poeple...

ChangeSet@1.1553, 2004-04-26 22:59:12-07:00, akpm@osdl.org
  [PATCH] slab alignment fixes
  
  From: Manfred Spraul <manfred@colorfullife.com>
  
  Below is a patch that redefines the kmem_cache_alloc `align' argument:
  
  - align not zero: use the specified alignment.  I think values smaller than
    sizeof(void*) will work, even on archs with strict alignment requirement (or
    at least: slab shouldn't crash.  Obviously the user must handle the
    alignment properly).
  
  - align zero:
  * debug on: align to sizeof(void*)
  * debug off, SLAB_HWCACHE_ALIGN clear: align to sizeof(void*)
  * debug off, SLAB_HWCACHE_ALIGN set: align to the smaller of
     - cache_line_size()
     - the object size, rounded up to the next power of two.
    Slab never honored cache align for tiny objects: otherwise the 32-byte
    kmalloc objects would use 128 byte objects.
  
  There is one additional point: right now slab uses ints for the bufctls.
  Using short would save two bytes for each object.  Initially I had used short,
  but davem objected.  IIRC because some archs do not handle short efficiently. 
  Should I allow arch overrides for the bufctls?  On i386, saving two bytes
  might allow a few additional anon_vma objects in each page.

ChangeSet@1.1552, 2004-04-26 22:59:01-07:00, akpm@osdl.org
  [PATCH] hugetlbpage: remove include linux/module.h
  
  From: Paul Jackson <pj@sgi.com>
  
  The #include of linux/module.h in several arch/*/mm/hugetlbpage.c files for
  EXPORT_SYMBOL(hugetlb_total_pages) is now unneeded.

ChangeSet@1.1551, 2004-04-26 22:58:50-07:00, akpm@osdl.org
  [PATCH] ppc64: prom.c fix for CONFIG_BLK_DEV_INITRD=n
  
  From: Rusty Russell <rusty@rustcorp.com.au>
  
  Doesn't compile with CONFIG_BLK_DEV_INITRD=n.  Be more careful with the
  conditionals.
  
  Spotted by Dave Boutcher...

ChangeSet@1.1550, 2004-04-26 22:58:38-07:00, akpm@osdl.org
  [PATCH] ppc64: Move Initrd
  
  From: Rusty Russell <rusty@rustcorp.com.au>
  
  This patch moves the initrd when "make_room" runs out of space, rather than
  stepping over it.  The problem with stepping over it is that it gets copied
  with the kernel when this happens, which wastes space.
  
  Also ensures that the initrd isn't where the kernel wants to be moved to: if
  it is, it gets moved out the way.

ChangeSet@1.1549, 2004-04-26 22:58:27-07:00, akpm@osdl.org
  [PATCH] ppc64: Initrd Cleanup
  
  From: Rusty Russell <rusty@rustcorp.com.au>
  
  Clean up initrd handling.
  
  1) Expose initrd_start and initrd_end to prom.c (replacing its local
     initrd_start and initrd_len).
  
  2) Don't hand mem (aka klimit) through functions which don't need it.
  
  3) Add more debugging under DEBUG_PROM in case we broke anything.

ChangeSet@1.1548, 2004-04-26 22:58:17-07:00, akpm@osdl.org
  [PATCH] ppc64: Clean up prom functions in prom.c
  
  From: Rusty Russell <rusty@rustcorp.com.au>
  
  1) Define PROM_ERROR: checks for call_prom() < 0 are bogus (returns ulong)
  2) All OF access functions should be marked __init.
  3) prom_strtoul isn't used at all.

ChangeSet@1.1547, 2004-04-26 22:58:06-07:00, akpm@osdl.org
  [PATCH] ppc64: Fix prom.c to boot on G5 after make_room fix
  
  From: Rusty Russell <rusty@rustcorp.com.au>
  
  Ben Herrenschmidt made this actually boot.

ChangeSet@1.1546, 2004-04-26 22:57:56-07:00, akpm@osdl.org
  [PATCH] ppc64: make_room macro for ppc64 prom.c
  
  From: Rusty Russell <rusty@rustcorp.com.au>
  
  copy_device_tree calls inspect_node() which recurses to copy the Open Firmware
  device tree.  It just copied into memory above the kernel for about 8MB, which
  can overwrite the initrd, and/or get truncated on big machines.
  
  The real solution is to allocate memory properly for all the prom_init memory
  users.  However, that's quite a change.  This patch introduces a "make_room"
  macro which inspect_node uses to get memory.  This does the same as before,
  except skips over the initrd if neccessary.

ChangeSet@1.1545, 2004-04-26 22:57:46-07:00, akpm@osdl.org
  [PATCH] ppc64: Make finish_device_tree use lmb_alloc, not klimit
  
  From: Rusty Russell <rusty@rustcorp.com.au>
  
  finish_device_tree simply allocates nodes by incrementing klimit (ie.  using
  memory on top of the kernel).  Change it to figure out how much memory it
  needs, then use lmb_alloc to allocate that, then fill it in.
  
  This gets rid of the only manipulation of klimit after prom_init.

ChangeSet@1.1544, 2004-04-26 22:57:35-07:00, akpm@osdl.org
  [PATCH] ppc64: Rearrage Rest of prom.c in C Order
  
  From: Rusty Russell <rusty@rustcorp.com.au>
  
  Rather than pre-declaring static functions, order them so it's not neccessary.
  This makes the code easier to navigate and patch.

ChangeSet@1.1543, 2004-04-26 22:57:24-07:00, akpm@osdl.org
  [PATCH] ppc64: Rearrage interpret_funcs in C Order
  
  From: Rusty Russell <rusty@rustcorp.com.au>
  
  Rather than pre-declaring static functions, order them so it's not neccessary.
  This makes the code easier to navigate and patch.

ChangeSet@1.1542, 2004-04-26 22:57:14-07:00, akpm@osdl.org
  [PATCH] ppc64: Rearrage copy_device_tree() and its functions in C Order
  
  From: Rusty Russell <rusty@rustcorp.com.au>
  
  Rather than pre-declaring static functions, order them so it's not neccessary.
  This makes the code easier to navigate and patch.

ChangeSet@1.1541, 2004-04-26 22:57:04-07:00, akpm@osdl.org
  [PATCH] ppc64: Rearrage finish_device_tree() and its functions in C Order
  
  From: Rusty Russell <rusty@rustcorp.com.au>
  
  Rather than pre-declaring static functions, order them so it's not neccessary.
  This makes the code easier to navigate and patch.

ChangeSet@1.1540, 2004-04-26 22:56:53-07:00, akpm@osdl.org
  [PATCH] ppc64: Split prom.c Into pre-reloc and post-reloc Functions
  
  From: Rusty Russell <rusty@rustcorp.com.au>
  
  Move all the functions that run normally (ie.  with the kernel in the correct
  address) to the bottom of prom.c, and keep all the functions which use RELOC()
  to the top, above "prom_init()" which calls them.
  
  Also, make prom_initialize_dart_table and prom_initialize_tce_table static.

ChangeSet@1.1539, 2004-04-26 22:56:42-07:00, akpm@osdl.org
  [PATCH] Minor fixes for ext3 journalled quotas
  
  From: Jan Kara <jack@ucw.cz>
  
  It fixes a memory leak when turning journalled quotas off.

ChangeSet@1.1538, 2004-04-26 22:56:32-07:00, akpm@osdl.org
  [PATCH] dquot: remove unneeded test
  
  We're testing the nullness of `sb' potentially after rereferencing it
  (although the compiler will have reordered things to avoid such a bug).
  
  Just remove the test - the superblock pointer shouldn't be null in there.

ChangeSet@1.1537, 2004-04-26 22:56:22-07:00, akpm@osdl.org
  [PATCH] Per-sb dquot dirty lists
  
  From: Jan Kara <jack@ucw.cz>
  
  When there are lots of dirty dquots the vfs_quota_sync() is too slow (it has
  O(N^2) behaviour).  Attached patch implements list of dirty dquots for each
  superblock and quota type.  Using this lists sync is trivially linear.
  Attached patch is against 2.6.5 with journalled quota and previous patch for
  hash table size.
  
  (Jan had a test which went from 8 minutes to 0.8 seconds...)

ChangeSet@1.1536, 2004-04-26 22:56:11-07:00, akpm@osdl.org
  [PATCH] Bigger quota hashtable
  
  From: Jan Kara <jack@ucw.cz>
  
  I found out that quota uses hash table with just 43 entries to hash dquot
  entries.  I guess that we can afford using one page for that
  (quotactl(Q_GETQUOTA...), got faster like 3x for 4000 users).  Attached patch
  implements that.

ChangeSet@1.1535, 2004-04-26 22:56:01-07:00, akpm@osdl.org
  [PATCH] ext3 journalled quota locking fix
  
  From: Jan Kara <jack@ucw.cz>
  
  I've attached a fix for a problem in ext3 journalled quota patch - the problem
  is that detecting whether dqput() sleeps was wrong and so we could possibly
  schedule when holding a spinlock.

ChangeSet@1.1534, 2004-04-26 22:55:51-07:00, akpm@osdl.org
  [PATCH] credentials locking fix
  
  From: Chris Wright <chrisw@osdl.org>
  
  Contributions from:
  Stephen Smalley <sds@epoch.ncsc.mil>
  Andy Lutomirski <luto@stanford.edu>
  
  During exec the LSM bprm_apply_creds() hooks may tranisition the program to a
  new security context (like setuid binaries).  The security context of the new
  task is dependent on state such as if the task is being ptraced.  
  
  ptrace_detach() doesn't take the task_lock() when clearing task->ptrace.  So
  there is a race possible where a process starts off being ptraced, the
  malicious ptracer detaches and if any checks agains task->ptrace are done more
  than once, the results are indeterminate.
  
  This patch ensures task_lock() is held while bprm_apply_creds() hooks are
  called, keeping it safe against ptrace_attach() races.  Additionally, tests
  against task->ptrace (and ->fs->count, ->files->count and ->sighand->count all
  of which signify potential unsafe resource sharing during a security context
  transition) are done only once the results are passed down to hooks, making it
  safe against ptrace_detach() races.
  
  Additionally:
  
  - s/must_must_not_trace_exec/unsafe_exec/
  - move unsafe_exec() call above security_bprm_apply_creds() call rather than
    in call for readability.
  - fix dummy hook to honor the case where root is ptracing
  - couple minor formatting/spelling fixes

ChangeSet@1.1533, 2004-04-26 22:55:41-07:00, akpm@osdl.org
  [PATCH] reiserfs: ignore prepared and locked buffers
  
  From: Chris Mason <mason@suse.com>
  
  block_write_full_page might see and lock clean metadata buffers, which leads
  to bogus vs-12339 messages.  Change the message to ignore bh locked.

ChangeSet@1.1532, 2004-04-26 22:55:31-07:00, akpm@osdl.org
  [PATCH] Use workqueue for call_usermodehelper
  
  From: Rusty Russell <rusty@rustcorp.com.au>
  
  call_usermodehelper uses keventd to create a thread, guaranteeing a nice,
  clean kernel thread.  Unfortunately, there is a case where
  call_usermodehelper is called with &bus->subsys.rwsem held (via
  bus_add_driver()), but keventd could be running bus_add_device(), which is
  blocked on the same lock.  The result is deadlock, and it comes from using
  keventd for both.
  
  In this case, it can be fixed by using a completely independent thread for
  call_usermodehelper, or an independent workqueue.  Workqueues have the
  infrastructure we need, so we use one.
  
  Move EXPORT_SYMBOL while we're there, too.
  
  akpm fixes: Make it compile with !CONFIG_KMOD

ChangeSet@1.1531, 2004-04-26 22:55:21-07:00, akpm@osdl.org
  [PATCH] create singlethread_workqueue()
  
  From: Rusty Russell <rusty@rustcorp.com.au>
  
  Workqueues are a great primitive for running things from user context from
  a completely clean environment.  Unfortunately, they currently insist on
  creating one thread per CPU, which is overkill for many situations, so the
  more generic keventd workqueue is used for these.  Recently deadlocks using
  keventd were demonstrated, showing that it is not suitable for all uses.
  
  1) Clean up CPU iterators.  Always a nice touch.
  
  2) Add __create_workqueue() and create_singlethread_workqueue(),
     keeping source compatibility.
  
  3) Put workqueues in workqueue list even if !CONFIG_HOTPLUG_CPU (means
     we need a lock to protect that list).  Now we can tell if a wq is
     single-threaded using list_empty(&wq->list).
  
  4) For single-threaded workqueues, override CPU in queue_work,
     delayed_work_timer_fn and flush_workqueue to be 0.  flush_workqueue
     now does redundant passes for single-threaded workqueues, but the
     code remains simple.
  
  5) Make create_workqueue_thread return the thread, so we can easily
     kthread_bind for multi-threaded workqueues.
  
  
  akpm fixes:
  
  - Fix up is_single_threaded() handling
  
  - single-threaded wq thread does not have "/0" appended.

ChangeSet@1.1525.3.4, 2004-04-26 22:17:10-07:00, davem@nuts.davemloft.net
  [TG3]: Update driver version and reldate.

ChangeSet@1.1525.3.3, 2004-04-26 22:00:16-07:00, jgarzik@redhat.com
  [TG3]: Dump NIC-specific statistics via ethtool.
  
  Contributed by Tony Cureington @ HP, updated (from pre-ethtool_ops)
  and modified by me.

ChangeSet@1.1525.3.2, 2004-04-26 21:23:39-07:00, grundler@parisc-linux.org
  [TG3]: Fix comment typo.

ChangeSet@1.1371.724.2, 2004-04-26 21:02:26-07:00, mchan@broadcom.com
  [TG3]: Fix jimbo frame PHY programming.
  
  1. Added new workaround for 5705 to improve bit error rate.
  
  2. Changed to use read-modify-write to set the extended packet bit in
  tg3_phy_reset.
  
  3. Removed some phy setup code in tg3_phy_probe. All of that is already
  in the end of tg3_phy_reset. Writing to the phy during probe time may
  contend with ASF because ASF is constantly reading phy registers to
  determine the link.
  
  
  4. Removed the write to phy register 0x18 in tg3_phy_copper_begin. Not
  sure what it was for and it will overwrite that regsiter.

ChangeSet@1.1530, 2004-04-26 18:51:43-07:00, david-b@pacbell.net
  [PATCH] One more USB fix
  
  Here's another fix it'd be good to merge ...
  
  No changes to the Linux code at all, but it'll makes the Windows
  configuration of a Linux device running the Ethernet/RNDIS gadget behave
  correctly on more versions of Windows.  (It might prevent some
  Bluescreening too.)

ChangeSet@1.1525.2.4, 2004-04-26 16:37:38-07:00, petri.koistinen@iki.fi
  [SUNRPC]: Missing NULL kmalloc check in unix_domain_find().

ChangeSet@1.1525.2.3, 2004-04-26 16:33:37-07:00, shemminger@osdl.org
  [IRDA]: Export irda_task_delete.

ChangeSet@1.1525.2.2, 2004-04-26 16:32:48-07:00, shemminger@osdl.org
  [IPV4]: Spelling fixed for ip-sysctl.txt

ChangeSet@1.1525.2.1, 2004-04-26 16:31:03-07:00, shemminger@osdl.org
  [TCP]: Add vegas sysctl docs.

ChangeSet@1.1371.1.537, 2004-04-26 14:39:13-07:00, edwardsg@sgi.com
  [PATCH] ia64: Remove SN PDA page overflow check
  
  There's an obsolete check in sn_init_pdas() left over from the 2.4
  days that panics if the cpu PDA and cpu_data area span more than a page.
  With 2.6, we're not limited to a page, so remove the check entirely.

ChangeSet@1.1371.1.536, 2004-04-26 14:13:52-07:00, alex.williamson@hp.com
  [PATCH] ia64: bug w/ shared interrupts
  
  I just ran into a bug introduced by the most recent iosapic.c patch.
  The scenario is a builtin driver is up and running happily.  A module
  loads for a devices that happens to share the same interrupt vector,
  in this case a network driver.  The module calls pci_enable_device()
  as it should, which eventually lands in iosapic_enable_intr().  We
  then proceed to mask the interrupt and kill the device that's already
  running.  As a bonus, request_interrupt() doesn't fix the problem
  because we only call the startup for the interrupt handler on the
  first action attached to the interrupt.
  
  I think the best way out of this is simply to detect when an action is
  already attached to a vector and leave it alone.  This also prevents
  interrupts from moving to other cpus (on boxes w/o irq redirection)
  for no good reason.

ChangeSet@1.1525.1.1, 2004-04-26 12:17:44-07:00, axboe@suse.de
  [PATCH] correct LoEj logic
  
  The logic got a little foo-bar'ed in the last patch, we should have keep
  the old logic.  Ie LoEj bit (2nd) must always be set, just clear it for
  known non-capable of loading drives.

ChangeSet@1.1527, 2004-04-26 12:09:47-07:00, greg@kroah.com
  [PATCH] USB: further cleanup of the hiddev driver, fixing another possible oops on disconnect.

ChangeSet@1.1526, 2004-04-26 12:03:46-07:00, greg@kroah.com
  [PATCH] USB: fix up fake usb_interface structure in hiddev
  
  This fixes a oops in the current kernel tree.

ChangeSet@1.1525, 2004-04-26 09:10:32-07:00, axboe@suse.de
  [PATCH] don't log drive loading failures
  
  This is an old bug that often confuses people, rightfully.
  
  For some laptop and server type cdroms, the drives advertise themselves
  as tray loading even if they are caddy-like or slot-in loaders.  This
  means they cannot insert the media on their own, and this generates a
  5/24/00 error to START_STOP_UNIT.
  
  This prevents the logging of such a failure, and also fixes the
  generation of such a bad command in case the mech type was correctly set
  by the drive.

ChangeSet@1.1524, 2004-04-26 09:10:23-07:00, armin@melware.de
  [PATCH] ISDN CAPI: add ncci list semaphore
  
  Fix race conditions of ISDN CAPI's internal ncci list handling by using
  a per capidev semaphore.

ChangeSet@1.1520.2.1, 2004-04-26 09:00:10-07:00, torvalds@ppc970.osdl.org
  Merge DVB updates

ChangeSet@1.1371.744.9, 2004-04-26 08:53:51-07:00, hunold@linuxtv.org
  [PATCH] DVB: Follow saa7146 changes in affected V4L drivers
  
   - [V4L] follow changes in saa7146 driver: mxb, dpc7146, hexium_orion,
     hexium_gemini

ChangeSet@1.1371.744.8, 2004-04-26 08:53:40-07:00, hunold@linuxtv.org
  [PATCH] DVB: Misc. DVB USB driver updates
  
   - [DVB] ttusb-dec:
     - Add a parameter to dvb_filter_pes2ts function to specify whether
       the packet is a payload unit start or not
     - Use the hotplug firmware loader for 2.6 kernels instead of
       compiling the firmware into the module. 
     - Correct the USB id of the DEC3000-s, add basic support
  
   - [DVB] ttusb-budget:
      - Remove spurious discontinuity message when starting streaming

ChangeSet@1.1371.744.7, 2004-04-26 08:53:29-07:00, hunold@linuxtv.org
  [PATCH] DVB: Misc. DVB frontend driver updates
  
   - [DVB] follow changes in dvb-core for frontend drivers (ves1x93,
     ves1820, nxt6000, sp887x, tda1004x, stv0299, mt312, alps_tdlb7,
     alps_tdmb7, at76c651, cx24110, dst, dvb_dummy_fe, grundig_29504-401,
     grundig_29504-491)
   - [DVB] tda1004x: updated timeout to 800ms, implemented FE_SLEEP
   - [DVB] cx24110: add FE_CAN_RECOVER to reduce kdvb-fe CPU load
   - [DVB] grundig_29504-401: added 200ms delay after first FE_INIT,
     Implemented FE_GET_FRONTEND
   - [DVB] alps_tdlb7, alps_tdmb7: upped tuning delays to fix tuning

ChangeSet@1.1371.744.6, 2004-04-26 08:53:18-07:00, hunold@linuxtv.org
  [PATCH] DVB: AV7110 DVB driver updates
  
   - [DVB] av7110 update:
     - speed up firmware loading
     - follow internal API changes in saa7146 driver
     - introduced some symbolic constants for a/v dec cmds
     - change default for hw_sections to 0 to enable crc checks

ChangeSet@1.1371.744.5, 2004-04-26 08:53:08-07:00, hunold@linuxtv.org
  [PATCH] DVB: Other DVB core updates
  
   - [DVB] remove superflous memset() which caused section data to be
     overwritten when a) there are two sections in one TS packet, and b)
     the first section was smaller than 18 bytes; thanks to Jean-Claude
     Repetto for tracking this down
   - [DVB] starting a ts filter on a running section filter's pid did
     break the section filter; fixed. 
   - [DVB] integrate ULE Decapsulation code, thanks to gcs - Global
     Communication & Services GmbH.  and Institute for Computer Sciences
     Salzburg University.  Hilmar Linder <hlinder@cosy.sbg.ac.at> and
     Wolfram Stering <wstering@cosy.sbg.ac.at>
   - [DVB] fix the module use count bugs, thanks to Hernan A.Perez Masci
     for his initial work on this problem
   - [DVB] if dvb_frontend_internal_ioctl() returns an error code, be sure
     to deliver it to the calling application, don't ignore it (fixes the
     bug that the frontend0 doesn't respond properly to unknown ioctls...)
   - [DVB] major frontend code clean up, rewritten core tuning loop.
     Thanks to Andrew de Quincey.
   - [DVB] follow changes in dvb-core in skystar2, dvb-bt8xx

ChangeSet@1.1371.744.4, 2004-04-26 08:52:57-07:00, hunold@linuxtv.org
  [PATCH] DVB: Add EN50221 cam support to dvb-core
  
   - [DVB] add generic functions for EN50221 CAM interfaces

ChangeSet@1.1371.744.3, 2004-04-26 08:52:47-07:00, hunold@linuxtv.org
  [PATCH] DVB: Update DVB budget drivers
  
   - [DVB] budget-av: patch by Kenneth Aafl�y to add support for Typhoon
     DVB-S budget card
   - [DVB] budget.c: support for Fujitsu-Siemens Activy Card
   - [DVB] budget-ci: add preliminary CI support

ChangeSet@1.1371.744.2, 2004-04-26 08:52:35-07:00, hunold@linuxtv.org
  [PATCH] DVB: Documentation and Kconfig updazes
  
   - [DVB] misc. documentation updates, KConfig help file updates
   - [DVB] make Twinhan driver depend on bt8xx

ChangeSet@1.1371.744.1, 2004-04-26 08:52:23-07:00, hunold@linuxtv.org
  [PATCH] V4L: Update the saa7146 driver
  
   - [DVB] saa7146 driver updates:
     - remove bogus v_calc and h_calc parameters, which can be easily
       retrieved from other values
     - add class parameter to i2c initialization
     - let resource handling provide more useful informations
     - sanitize overlay/capture locking

ChangeSet@1.1371.741.5, 2004-04-25 21:35:58-07:00, chas@cmf.nrl.navy.mil
  [ATM]: [fore200e] make use tasklet configurable

ChangeSet@1.1371.741.4, 2004-04-25 21:35:28-07:00, chas@cmf.nrl.navy.mil
  [ATM]: [fore200e] 0.3e version by Christophe Lizzi (lizzi@cnam.fr)

ChangeSet@1.1371.743.5, 2004-04-25 18:50:17-07:00, B.Zolnierkiewicz@elka.pw.edu.pl
  [PATCH] prevent module unloading for legacy IDE chipset drivers
  
  It is unsafe thing to do (no locking, no reference counting etc).
  Just remove module_exit() as it was done for IDE PCI drivers.

ChangeSet@1.1371.743.4, 2004-04-25 18:50:03-07:00, B.Zolnierkiewicz@elka.pw.edu.pl
  [PATCH] use kernel min/max in IDE code (2/2)
  
  From: Randy Dunlap <rddunlap@osdl.org>
  From: Michael Veeck <michael.veeck@gmx.net>
  
  Removes unnecessary IDE_MIN()/IDE_MAX() macros
  and changes calls to use kernel.h macros instead.

ChangeSet@1.1371.743.3, 2004-04-25 18:49:54-07:00, B.Zolnierkiewicz@elka.pw.edu.pl
  [PATCH] use kernel min/max in IDE code (1/2)
  
  From: Randy Dunlap <rddunlap@osdl.org>
  From: Michael Veeck <michael.veeck@gmx.net>
  
  ide-cd.h: remove unnecessary MIN() macro
  ide-cd.c: change MIN() calls to use kernel.h calls
  ide-tape.c: use min_t()/max_t() instead of min()/max()

ChangeSet@1.1371.743.2, 2004-04-25 18:49:42-07:00, B.Zolnierkiewicz@elka.pw.edu.pl
  [PATCH] generic PCI IDE support for Toshiba Piccolo chips
  
  From: Daniel Drake <dsd@gentoo.org>
  
  Adds Toshiba chips to the list supported by the generic PCI IDE driver.
  The 2.4 tree already contained an entry for 0x1179:0x0102, this patch
  adds that entry to 2.6 as well as two new ones (0x0103 and 0x0105).
  This then allows DMA to be enabled on disks.

ChangeSet@1.1371.734.3, 2004-04-25 21:43:37-04:00, khc@pm.waw.pl
  [netdrvr tulip] fix use-after-free
  
  The attached patch fixes an "oops" in tulip driver when a live interface
  is deactivated (i.e. PC Card ejected or module unloaded) without being
  brought down first.

ChangeSet@1.1371.742.1, 2004-04-24 22:19:01-04:00, scott.feldman@intel.com
  [PATCH] e100: ICH 10/H Tx hang fix
  
  * Need to carry forward this workaround from old e100 driver to
    avoid a Tx hang on ICH systems linked at 10/Half.  Workaround
    adds a stall before each Tx command queued by issuing a NOP
    command followed by 1us delay.  Yuck!  Otherwise HW locks hard.
    (Probably needed for eepro100 also ;-).

ChangeSet@1.1371.740.4, 2004-04-24 22:19:55+01:00, dsaxena@net.rmk.(none)
  [ARM PATCH] 1815/1: Generic DMA buffer bouncing support for ARM targets
  
  Patch from Deepak Saxena
  
  Latest (and hopefully last :) patch for generic DMA buffer bouncing.
  
  - Fixed SA1111 dma_needs_bounce
  - Added check for out of bounds buffers.
  - Made dmabounce.c directly implement dma_* API
  
  Note that I didn't do the following:
  
  #ifndef CONFIG_DMABOUNCE
  inline implementations of all functions
  #else
  extern declarations
  #endif
  
  Instead I wrapped it individual in #ifndef/#else blocks to keep the
  comments in the same area as function declarations.  IMHO this makes 
  it easier for someone to go look at the comments if they need to know 
  what a specific API does.
  

ChangeSet@1.1371.740.3, 2004-04-24 21:47:18+01:00, rmk@flint.arm.linux.org.uk
  [ARM] Remove extraneous "volatile" from atomic_t pointers.

ChangeSet@1.1371.741.3, 2004-04-23 16:42:22-07:00, arjanv@redhat.com
  [NET]: linux/if.h needs linux/compiler.h for __user.

ChangeSet@1.1371.741.2, 2004-04-23 16:39:48-07:00, mludvig@suse.cz
  [CRYPTO]: Add module autoloads for null module.

ChangeSet@1.1371.741.1, 2004-04-23 16:28:42-07:00, shemminger@osdl.org
  [TCP]: Report vegas info via tcp_diag.

ChangeSet@1.1371.739.6, 2004-04-23 16:16:16-07:00, davem@nuts.davemloft.net
  [SPARC64]: Fix zero-extension issues wrt. {pgd,pmd}_val().

ChangeSet@1.1371.740.2, 2004-04-23 22:34:47+01:00, nico@org.rmk.(none)
  [ARM PATCH] 1825/1: abort on bad code generation with div64 in some cases
  
  Patch from Nicolas Pitre
  
  One case was found when the kernel is compiled with -O2 (instead of the 
  default -Os).  However, all gcc-3.* versions seem to have a problem with 
  this.  Instead of blacklisting them all unconditionally, better just abort
  when a bad case occurs especially since this bad case doesn't seem to
  appear with current default compiler flags.  Depends on patch #1824.

ChangeSet@1.1371.740.1, 2004-04-23 22:31:14+01:00, nico@org.rmk.(none)
  [ARM PATCH] 1824/1: guard against gcc not respecting local variable register assignment
  
  Patch from Nicolas Pitre
  
  The recent discovery of a problem with gcc not always respecting register
  assignment for local variables to be used with inline assembly is worrisome.
  If unnoticed, such problems can cover bugs that might prove hard to find
  especially when the code is right but silently ignored.  This patch adds a
  test where needed to have the assembler confirm our register selection and
  fail the kernel build if the wrong registers are allocated.

ChangeSet@1.1371.739.5, 2004-04-23 13:29:15-07:00, davem@nuts.davemloft.net
  [SPARC64]: Update defconfig.

ChangeSet@1.1371.738.4, 2004-04-23 16:48:55+01:00, aia21@cantab.net
  Merge cantab.net:/usr/src/bklinux-2.6 into cantab.net:/usr/src/ntfs-2.6

ChangeSet@1.1371.738.3, 2004-04-23 16:22:42+01:00, aia21@cantab.net
  NTFS: Finally fix NFS exporting of mounted NTFS volumes by checking the
  return of d_splice_alias() and acting accordingly rather than just
  ignoring the returned dentry.

ChangeSet@1.1371.739.1, 2004-04-23 06:32:08-07:00, akpm@osdl.org
  [PATCH] writeback livelock fix
  
  If a filesystem's ->writepage implementation repeatedly refuses to write the
  page (it keeps on redirtying it instead) (reiserfs seems to do this) then the
  writeback logic can get stuck repeately trying to write the same page.
  
  Fix that up by correctly setting wbc->pages_skipped, to tell the writeback
  logic that things aren't working out.

ChangeSet@1.1512, 2004-04-23 06:36:35-05:00, stevef@steveft21.ltcsamba
  do not allow routine user signals to kill SendReceive wait for response (which was damaging performance badly)

ChangeSet@1.1371.738.2, 2004-04-23 12:12:25+01:00, aia21@cantab.net
  NTFS: Move a few assignments after a NULL check in fs/ntfs/attrib.c.

ChangeSet@1.1371.738.1, 2004-04-23 09:19:18+01:00, aia21@cantab.net
  Merge cantab.net:/home/src/bklinux-2.6
  into cantab.net:/home/src/ntfs-2.6

ChangeSet@1.1511, 2004-04-22 22:55:12-05:00, stevef@stevef95.austin.ibm.com
  fix timeout on close operation when pending signal

ChangeSet@1.1510, 2004-04-23 02:18:21-05:00, stevef@steveft21.ltcsamba
  fix error code mapping on bad host

ChangeSet@1.1509, 2004-04-23 01:59:28-05:00, stevef@steveft21.ltcsamba
  proper rc on host down

ChangeSet@1.1371.731.24, 2004-04-22 23:38:25-07:00, davidm@tiger.hpl.hp.com
  ia64: Add message-queue support to copy_siginfo_from_user().

ChangeSet@1.1508, 2004-04-22 18:38:48-05:00, stevef@stevef95.austin.ibm.com
  Update change log for 1.10 cifs vfs

ChangeSet@1.1507, 2004-04-22 18:17:11-05:00, stevef@stevef95.austin.ibm.com
  exit from waiting on smb response when session dead

ChangeSet@1.1371.736.3, 2004-04-22 15:11:12-07:00, lxiep@us.ibm.com
  [PATCH] symlink doesn't support kobj name > 20 charaters (KOBJ_NAME_LEN)
  
  Since symlink.c uses "name" field of a kobj when it calculates the
  length,  it gets a wrong value if the kobj's name  has more than 20
  charathers.  A correct way to do that is to call kobject_name(kobj)
  instead of using kobj->name directly.

ChangeSet@1.1371.736.2, 2004-04-22 14:36:55-07:00, lkml@lievin.net
  [PATCH] tipar char driver: wrong timeout value
  
  this patch (2.4 & 2.6) fixes a bug about the timeout value. The formula
  used to calculate jiffies from timeout is wrong.
  The new formula is ok and takes care of integer computation/rounding.
  There is the same bug in the tiglusb.c module which will be fixed by another
  patch.

ChangeSet@1.1506, 2004-04-22 16:29:05-05:00, stevef@stevef95.austin.ibm.com
  resolve merge conflict

ChangeSet@1.1504.1.1, 2004-04-22 16:02:53-05:00, stevef@stevef95.austin.ibm.com
  RFC1002 fixup

ChangeSet@1.1371.733.19, 2004-04-22 13:53:58-07:00, david-b@pacbell.net
  [PATCH] USB: usbnet and pl2301/2302 reset
  
  Handle some PL-2301/2302 devices better.

ChangeSet@1.1371.733.18, 2004-04-22 13:53:33-07:00, jan@ccsinfo.com
  [PATCH] USB: ftdi patch fixup
  
  I just checked out the latest 2.6.6-rc1-mm1 to see that the ID patch for
  ftdi has applied cleanly, but apparently someone was faster and in the
  combined ID table our ID's were missing.
  Most probably the patch program got confused and applied the hung at wrong
  spot..
  
  Attached is a patch that places that 2 lines in the correct spot.

ChangeSet@1.1371.733.17, 2004-04-22 13:53:08-07:00, lkml@lievin.net
  [PATCH] USB: tiglusb: wrong timeout value
  
  Hi,
  
  this patch (cumulative; 2.4 & 2.6) fixes another bug in the tiglusb
  driver. The formula used to calculate jiffies from timeout is wrong.
  The new formula is ok and takes care of integer computation/rounding.
  This is the same kind of bug than in the tipar char driver.

ChangeSet@1.1371.733.16, 2004-04-22 13:52:40-07:00, wli@holomorphy.com
  [PATCH] USB: silence dpcm warning
  
  Warnings aren't terribly important in and of themselves, but there
  isn't really much the warning tells us to do here, so it would appear
  that caving in to the compiler is the thing to do for now.

ChangeSet@1.1371.733.15, 2004-04-22 13:43:39-07:00, david-b@pacbell.net
  [PATCH] USB: rndis gadget driver updates
  
  Various build fixes:  64bit (Andrew Morton), static linking,
  broken on big-endian, etc.
  
  Tighten up the integration with the main "ether" driver, so
  state transitions and host ethernet addresses are shared too.
  Add missing spinlock calls around RNDIS command outcall,
  fix GET_INTERFACE issue, host mustn't clobber netdev flags.
  
  Minor code cleanups.

ChangeSet@1.1371.733.14, 2004-04-22 13:43:11-07:00, david-b@pacbell.net
  [PATCH] USB: ehci handles pci misbehavior better
  
  Cope better when PCI misbehaves badly and registers misbehave:
  
      - terminate some loops before they get to infinity
         * capability scan
         * port reset
      - after init failure, memory may already be cleaned up
  
  Some systems have been reporting such problems after ACPI resume.

ChangeSet@1.1371.737.23, 2004-04-22 13:38:54-07:00, mikpe@csd.uu.se
  [PATCH] use smp_processor_id() in init_IRQ()
  
  This replaces current_thread_info()->cpu in i386' init_IRQ() by the
  equivalent smp_processor_id().
  
  Reduces overhead on UP, and makes the code cleaner.

ChangeSet@1.1371.737.22, 2004-04-22 13:38:42-07:00, mikpe@csd.uu.se
  [PATCH] clean up Pentium M quirk code in nmi.c
  
  This simplifies the Pentium M quirk code in nmi.c, and eliminates an
  unnecessary apic_read().
  
  Local APIC accesses are not zero-cycle; let's not inflict more damage
  than we must.

ChangeSet@1.1371.737.21, 2004-04-22 13:38:29-07:00, akpm@osdl.org
  [PATCH] ppc64: Set ARCH_MIN_TASKALIGN
  
  From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
  
  We need some alignement of those structs for proper operations especially
  with FP and Altivec, or SLAB_DEBUG can break us.

ChangeSet@1.1371.737.20, 2004-04-22 13:38:16-07:00, akpm@osdl.org
  [PATCH] ppc64: add some iSeries proc entries
  
  From: Stephen Rothwell <sfr@canb.auug.org.au>
  
  This patch just adds some proc entries for the virtual tape and cdrom
  drivers to allow mapping between linux devices and OS/400 ones.  This is
  expected by existing users and there is no other way to do this
  translation.

ChangeSet@1.1371.737.19, 2004-04-22 13:38:04-07:00, akpm@osdl.org
  [PATCH] sunrpc rmmod oops fix
  
  From: "J. Bruce Fields" <bfields@fieldses.org>
  
  Unregister svcauth_gss caches on exit from gss module; fixes an oops on
  rmmod.

ChangeSet@1.1371.737.18, 2004-04-22 13:37:51-07:00, akpm@osdl.org
  [PATCH] Set ARCH_MIN_TASKALIGN on ppc32
  
  From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
  
  From: David Woodhouse <dwmw2@infradead.org>
  
  Without this the task struct gets unaligned when using SLAB_DEBUG, causing
  random problems with FP and Altivec.

ChangeSet@1.1371.737.17, 2004-04-22 13:37:38-07:00, akpm@osdl.org
  [PATCH] Update comment in fs/compat.c
  
  From: Ralf Baechle <ralf@linux-mips.org>
  
  MIPS now also uses the generic ioctl compat code.

ChangeSet@1.1371.737.16, 2004-04-22 13:37:25-07:00, akpm@osdl.org
  [PATCH] MIPS is an a.out free zone
  
  From: Ralf Baechle <ralf@linux-mips.org>
  
  MIPS never uses a.out

ChangeSet@1.1371.737.15, 2004-04-22 13:37:12-07:00, akpm@osdl.org
  [PATCH] Merge missing MIPS i8042 bits
  
  From: Ralf Baechle <ralf@linux-mips.org>
  
  - Add HPC3 PS/2 driver bits for SGI IP22 aka Indy
  - Add Mace PS/2 driver bits for SGI IP32 aka O2
  - Add R4030 PS/2 driver bits for Jazz family
  - Don't register I/O ports where we're using the I/O port memory window
     to access the i8042 registers

ChangeSet@1.1371.737.14, 2004-04-22 13:36:59-07:00, akpm@osdl.org
  [PATCH] Add Pete Popov to credits
  
  From: Ralf Baechle <ralf@linux-mips.org>
  
  Add Pete to CREDITS for all the time he's invested into supporting the AMD
  Alchemy of SOCs and eval boards.

ChangeSet@1.1371.737.13, 2004-04-22 13:36:45-07:00, akpm@osdl.org
  [PATCH] MIPS: PCI code is now shared.
  
  From: Ralf Baechle <ralf@linux-mips.org>
  
  All MIPS systems use the same PCI code now.

ChangeSet@1.1371.737.12, 2004-04-22 13:36:32-07:00, akpm@osdl.org
  [PATCH] fbdev comment fix
  
  Fix the incorrect comment which caused the fb_ioctl confusion.

ChangeSet@1.1371.737.11, 2004-04-22 13:36:19-07:00, akpm@osdl.org
  [PATCH] dynamic proc cleanups
  
  From: Matt Mackall <mpm@selenic.com>
  
  Delete obsolete comment and kill test of obsolete define.

ChangeSet@1.1371.737.10, 2004-04-22 13:36:07-07:00, akpm@osdl.org
  [PATCH] EDD: set sysfs attr owner field
  
  From: Matt Domsch <Matt_Domsch@dell.com>
  
  The patch below from Michael E.  Brown properly sets the owner field of a
  sysfs attribute.  Without this patch, it is possible to crash the kernel with
  a simultaneous insmod/rmmod while reading files exported by the module.

ChangeSet@1.1371.737.9, 2004-04-22 13:35:53-07:00, akpm@osdl.org
  [PATCH] s390: crypto api.
  
  From: Martin Schwidefsky <schwidefsky@de.ibm.com>
  
  Add support for z990 crypto instructions to in-kernel crypto api.

ChangeSet@1.1371.737.8, 2004-04-22 13:35:40-07:00, akpm@osdl.org
  [PATCH] s390: zfcp adapter fixes.
  
  From: Martin Schwidefsky <schwidefsky@de.ibm.com>
  
  zfcp host adapter changes:
   - Fix error recovery stall in case of unavailable nameserver.
   - Reset host_scribble field to NULL in scsi_cmd.
   - Remove request debug code.

ChangeSet@1.1371.737.7, 2004-04-22 13:35:26-07:00, akpm@osdl.org
  [PATCH] s390: dasd device driver.
  
  From: Martin Schwidefsky <schwidefsky@de.ibm.com>
  
  dasd device driver changes:
   - Initialize open_count with -1 to account for blkdev_open in
     dasd_scan_partitions.
   - Introduce USE_ERP request flag to selectivly switch off error
     recovery for reserve, release & unconditional reserve ioctls.

ChangeSet@1.1371.737.6, 2004-04-22 13:35:12-07:00, akpm@osdl.org
  [PATCH] s390: network device drivers.
  
  From: Martin Schwidefsky <schwidefsky@de.ibm.com>
  
  Network driver changes:
   - qeth: Fix reference counting in regard to sysfs backing store patches.
   - qeth: Prefix kernel thread names with qeth_.
   - qeth: Remove inbound and outbound tasklets. Handle buffers directly
           in the interrupts handlers.
   - iucv: Add missing kfree in iucv_register_program.
   - iucv: Add missing return in netiucv_transmit_skb.
   - iucv: Check for NULL pointer in conn_action_txdone.

ChangeSet@1.1371.737.5, 2004-04-22 13:34:58-07:00, akpm@osdl.org
  [PATCH] s390: 3270 device driver.
  
  From: Martin Schwidefsky <schwidefsky@de.ibm.com>
  
  3270 device driver changes:
   - Add NULL pointer checks.

ChangeSet@1.1371.737.4, 2004-04-22 13:34:46-07:00, akpm@osdl.org
  [PATCH] s390: common i/o layer.
  
  From: Martin Schwidefsky <schwidefsky@de.ibm.com>
  
  Common i/o layer changes:
   - Quiesce active subchannels for lpar reipl.
   - Delete timer after reception of interrupt for kill on timeout.
   - Cleanup some comments in qdio.

ChangeSet@1.1371.737.3, 2004-04-22 13:34:32-07:00, akpm@osdl.org
  [PATCH] s390: core s390.
  
  From: Martin Schwidefsky <schwidefsky@de.ibm.com>
  
  s390 core changes:
   - Fix race in do_call_softirq in regard to kernel preemption.
   - Fix typo in compat mq system call wrappers.
   - Add s390 to Kconfig for AUDITSYSCALL.
   - Redefine TASK_SIZE to TASK31_SIZE for compilation of binfmt_elf32.
   - Use correct error value for sys32_ipc when called with an invalid number.
   - New default configuration.

ChangeSet@1.1371.737.2, 2004-04-22 13:34:19-07:00, akpm@osdl.org
  [PATCH] ppc64: iSeries virtual cdrom module fix
  
  From: Stephen Rothwell <sfr@canb.auug.org.au>
  
  This patch fixes loading viocd as a module.  It would oops because I was
  passing the address of a static buffer to dma_map_single and when loaded as
  a module, this address is not valid for that purpose.
  
  There are a couple of simple cleanups here as well.

ChangeSet@1.1371.737.1, 2004-04-22 13:34:05-07:00, akpm@osdl.org
  [PATCH] remove show_trace_task()
  
  It no longer has any callers.

ChangeSet@1.1371.733.13, 2004-04-22 13:32:53-07:00, greg@kroah.com
  [PATCH] USB: fix cdc-acm warnings due to previous patch

ChangeSet@1.1371.733.12, 2004-04-22 13:32:24-07:00, colin@colino.net
  [PATCH] USB: fix cdc-acm as it is still (differently) broken

ChangeSet@1.1371.733.11, 2004-04-22 13:03:22-07:00, stern@rowland.harvard.edu
  [PATCH] USB: Important bugfix for UHCI list management code
  
  A major bug in the UHCI driver turned up recently.  Thanks to a lot of
  help from Simone Gotti it was identified and fixed late last week.  It
  turned out to be entirely my fault -- a previous patch had introduced two
  (!) errors.  (A combination of carelessness and a nasty thinko, and
  somehow it passed the regression tests...)
  
  Anyway, it's entirely possible that many of the problems people have been
  seeing are caused by that bug.  This patch is the solution.

ChangeSet@1.1371.736.1, 2004-04-22 12:19:51-07:00, mebrown@michaels-house.net
  [PATCH] sysfs module unload race fix for bin_attributes
  
   -  Add module locking to sysfs bin_attribute files. Update all in-tree
      users to set module owner.
  
  	Compile tested. booted. stress tests pass:
  
  while true; do modprobe mymod; rmmod mymod; done &
  while true; do hexdump -C /sys/path/to/sysfs/binary/file; done

ChangeSet@1.1371.733.10, 2004-04-22 12:10:05-07:00, greg@kroah.com
  [PATCH] USB: Don't try to suspend devices that do not support it.
  
  Patch originally from luming.yu@intel.com and closes bug #1557

ChangeSet@1.1371.1.532, 2004-04-21 23:10:52-07:00, davem@nuts.davemloft.net
  [TCP]: Add vegas congestion avoidance support.
  
  A forward port of an old 2.3.x kernel hack done
  years ago.  I (DaveM) did the first rough port,
  Stephen Hemminger actually cleaned it up and
  made it usable.

ChangeSet@1.1371.1.531, 2004-04-21 22:47:05-07:00, davem@nuts.davemloft.net
  [TCP]: Abstract out all settings of tcp_opt->ca_state into a function.

ChangeSet@1.1503.1.1, 2004-04-21 23:08:55-05:00, stevef@smfhome.smfdom
  Retry 2nd time after failure on correct port

ChangeSet@1.1371.735.7, 2004-04-21 22:31:41-04:00, ralf@linux-mips.org
  [PATCH] declance updates
  
  Various small changes, DEC still doesn't work under 2.6.

ChangeSet@1.1371.735.6, 2004-04-21 22:10:31-04:00, ralf@linux-mips.org
  [PATCH] IOC3 updates
  
  Use generic MII code, compile time configurable rx and tx checksumming.
  Try to handle IOC3 attached 16552 serials.  Fix descriptor setup when
  crossing a 16kB page.  Use generic PCI API.  Use generic ethtool code,
  small cleanups, use a temporary kludge to exploit virtual device
  functionality for significantly better performance.

ChangeSet@1.1371.735.5, 2004-04-21 21:52:14-04:00, ralf@linux-mips.org
  [PATCH] sgiseeq fixes
  
  Resurrect into working order for 2.6.

ChangeSet@1.1371.735.4, 2004-04-21 21:52:06-04:00, ralf@linux-mips.org
  [PATCH] BCM1250 network driver updates
  
  Resurrect into working order for 2.6.

ChangeSet@1.1371.735.3, 2004-04-21 21:51:58-04:00, ralf@linux-mips.org
  [PATCH] meth updates
  
  More work on the meth driver for SGI IP32 aka O2.

ChangeSet@1.1371.735.2, 2004-04-21 21:51:51-04:00, ralf@linux-mips.org
  [PATCH] Remove RCS Id string

ChangeSet@1.1371.735.1, 2004-04-21 21:51:43-04:00, ralf@linux-mips.org
  [PATCH] Au1000 IrDA driver update
  
  Get to build under 2.6, random updates to debugging code, new eval boards.

ChangeSet@1.1371.734.2, 2004-04-21 21:00:25-04:00, akpm@osdl.org
  [PATCH] pcmcia netdev ordering fixes
  
  From: Russell King <rmk+pcmcia@arm.linux.org.uk>
  
  This is an *untested* patch (PCMCIA people, please test) to fix
  initialisation ordering issues in these network device drivers.  I don't
  have the hardware to be able to test these changes, although it passes a
  modular build without warnings.
  
  Andrew - it may be worth sticking these in -mm so they get some visibility
  via your tree as well.
  
  Many of these drivers were calling register_netdev() before they had
  completed their initialisation.
  
  In addition, they were calling register_netdev with the
  "DEV_CONFIG_PENDING" flag still set, which prevents hotplug scripts from
  bringing up the interface.
  
  Also, we take care to ensure that link->dev is correctly set - this is used
  to tell the PCMCIA release code if the netdev is currently registered (yes,
  that's probably racy at present, but lets sort one problem at a time.)
  
  I've arranged that all drivers register the netdevice as close as possible
  to the end of their initialisation, copy the net device's name for cardmgr
  to pass to it's network scripts, and then print out whatever information
  the driver wants to.
  
  Finally, a note about ibmtr - it seemed to assume that cardmgr wanted "tr0"
  or "tr1" depending on the base address, and completely ignoring the real
  device which the netdev layer allocated it.  I've assumed that this is
  wrong (since the netdev name is used in printk messages), and changed it to
  behave the same as the other drivers.

ChangeSet@1.1371.734.1, 2004-04-21 20:47:42-04:00, simon@thekelleys.org.uk
  [PATCH] atmel wireless update
  
  Fixes to avoid problems when the driver shares an interrupt. These were
  caused because the ISR cannot determine the status of the chip without
  changing its state and the driver was only disabling the interrupts from
  the card during some critical regions. An interrupt originating from
  another device at the wrong moment could run the ISR and corrupt chip
  state. Fixed by blocking interupts in the processor in critical regions
  and never checking the chip interrupt status before the driver is fully
  up.
  
  
  Added the ability to override the Regulatory Domain stored in ROM. The
  following command achieves this
  
  iwpriv <interface> regdomain <domain>
  
  vaild domains are USA,Canada,Europe,Spain,France,MKK,MKK1,Israel
  
  The current regulatory domain affects which radio channels are available
  for use.
  
  
  Some minor tidying to calibrate busy-wait loops using udelay and remove
  inclusion of obsolete include/linux/802_11.h

ChangeSet@1.1371.1.530, 2004-04-21 17:00:02-07:00, shemminger@osdl.org
  [TCP]: Add sysctl to turn off matrics caching.

ChangeSet@1.1371.1.529, 2004-04-21 16:57:58-07:00, shemminger@osdl.org
  [TCP]: Better packing of frto fields into tcp_opt.

ChangeSet@1.1371.1.528, 2004-04-21 16:49:05-07:00, rusty@rustcorp.com.au
  [NETFILTER]: Missing ip_rt_put in ipt_MASQUERADE.

ChangeSet@1.1371.1.527, 2004-04-21 16:45:18-07:00, chrisw@osdl.org
  [IPV4]: Fix return value on MCAST_MSFILTER error case.

ChangeSet@1.1371.733.8, 2004-04-21 16:23:05-07:00, jbglaw@lug-owl.de
  [PATCH] lkkbd: Current version
  
  This updates the lkkbd driver to it's current version.
  
  It also incorporates two patches suggested on LKML (fixing
  some leading whitespace and an unneccessary check).

ChangeSet@1.1371.733.7, 2004-04-21 16:22:53-07:00, jbglaw@lug-owl.de
  [PATCH] New set of input patches
  
  This  updates the vsxxx driver to it's current version.
  
  Even DEC tablet support (VSXXX-AB) is now tested - it works:)
  You can even hotplug between mouse and digitizer...

ChangeSet@1.1371.733.6, 2004-04-21 16:22:42-07:00, sfr@canb.auug.org.au
  [PATCH] PPC64 iSeries virtual ethernet fix
  
  This patch is needed due to other patches that were applied in parallel
  with the inclusion of the iSeries virtual ethernet driver.

ChangeSet@1.1371.733.5, 2004-04-21 16:16:05-07:00, B.Zolnierkiewicz@elka.pw.edu.pl
  [PATCH] removal of MOD_{INC,DEC}_USE_COUNT in ide-cs.c
  
  From: Pavel Roskin <proski@gnu.org>
  
  The "ide-cs" module cannot be unloaded because it uses obsolete
  MOD_INC_USE_COUNT and MOD_DEC_USE_COUNT macros.  In fact, they are not
  needed in ide-cs.c in 2.6 kernels.  The generic PCMCIA code already
  increases use count for every device served by the driver, so it's
  impossible to unload the ide-cs driver while it's in use.
  
  I was told that the removal of IDE interfaces may be unsafe in 2.6
  kernels.  However, MOD_INC_USE_COUNT only prevents removal of the module,
  not the interface.  It's also the first obstacle, albeit a trivial one,
  for anybody debugging those problems (i.e. loading a modified module
  requires "rmmod -f" or reboot to unload the old version).

ChangeSet@1.1371.733.4, 2004-04-21 16:15:54-07:00, B.Zolnierkiewicz@elka.pw.edu.pl
  [PATCH] ide-probe.c: kill duplicate #include
  
  From: Arthur Othieno <a.othieno@bluewin.ch>

ChangeSet@1.1371.733.3, 2004-04-21 16:15:42-07:00, B.Zolnierkiewicz@elka.pw.edu.pl
  [PATCH] ide-disk.c: fix for IDE CF card ejection with devfs
  
  From: Pavel Roskin <proski@gnu.org>
  
  If I eject IDE CompactFlash card, I get a stack dump from
  devfs_remove() because ide/host2/bus0/target0/lun0 doesn't exist.
  
  After del_gendisk() is called from idedisk_cleanup() drive->devfs_name refers
  to a non-existent directory and should be erased, so that ide_unregister()
  doesn't try to remove that directory again.

ChangeSet@1.1371.733.2, 2004-04-21 16:13:25-07:00, torvalds@ppc970.osdl.org
  Merge bk://bk.arm.linux.org.uk/linux-2.6-serial
  into ppc970.osdl.org:/home/torvalds/v2.6/linux

ChangeSet@1.1371.732.1, 2004-04-21 23:39:45+01:00, rmk@flint.arm.linux.org.uk
  [SERIAL] Correct PL011 help text.

ChangeSet@1.1371.729.2, 2004-04-21 23:33:52+01:00, rmk@flint.arm.linux.org.uk
  [ARM] Add support for ARM Versatile platform.
  
  This cset adds minimal support for ARM Ltd's ARM926EJ-S "Versatile"
  platform.

ChangeSet@1.1371.731.23, 2004-04-21 14:47:01-07:00, jakub@redhat.com
  [PATCH] ia64: add mq support for ia64
  

ChangeSet@1.1371.731.22, 2004-04-21 14:26:14-07:00, davidm@tiger.hpl.hp.com
  Merge tiger.hpl.hp.com:/data1/bk/vanilla/linux-2.5
  into tiger.hpl.hp.com:/data1/bk/lia64/to-linus-2.5

ChangeSet@1.1371.731.21, 2004-04-21 12:02:58-07:00, torvalds@ppc970.osdl.org
  Revert fb_ioctl "fix" with extreme prejudice.
  
  As Arjan points out, the patch does exactly the opposite
  of what it was claimed to do.
  
  Andrea: tssk tssk.
  
  Cset exclude: akpm@osdl.org[torvalds]|ChangeSet|20040421144431|15930

ChangeSet@1.1371.699.19, 2004-04-21 19:49:59+01:00, davej@redhat.com
  [CPUFREQ] Fix security hole in proc handler.
  Brad Spengler <spender@grsecurity.net> found an exploitable bug in the proc handler
  of cpufreq, where a user-supplied unsigned int is cast to a signed int and then
  passed on to copy_[to|from]_user() allowing arbitary amounts of memory to be written
  (root only thankfully), or read (as any user).
  
  The Common Vulnerabilities and Exposures project (cve.mitre.org) has assigned
  the name CAN-2004-0228 to this issue.

ChangeSet@1.1371.699.18, 2004-04-21 19:20:17+01:00, davej@redhat.com
  [CPUFREQ] Export an array of acpi driver supported frequencies in sysfs
  From Dominik.

ChangeSet@1.1371.699.17, 2004-04-21 19:18:57+01:00, davej@redhat.com
  [CPUFREQ] Make an educated guess at the current P-state in the ACPI driver.
  One big limitation of the ACPI specification is that it's impossible to
  detect the current P-State by reading from ACPI-defined registers. And the
  CPU isn't always at P0 when the system boots. So, try to "guess" the current
  P-State by analyzing cpu_khz.
  
  From Dominik.

ChangeSet@1.1371.699.16, 2004-04-21 17:58:29+01:00, davej@redhat.com
  [CPUFREQ] Remove redundant part of powernow-k7 module parm
  If used as a bootparam, this would've become powernow-k7.powernow_acpi_force which looks silly.

ChangeSet@1.1371.699.15, 2004-04-21 17:07:29+01:00, davej@redhat.com
  [CPUFREQ] Fix unbalanced try_get_module/put_module
  Spotted by Charles Coffing <ccoffing@novell.com>

ChangeSet@1.1371.731.20, 2004-04-21 07:44:58-07:00, akpm@osdl.org
  [PATCH] loop_set_fd() sendfile check fix
  
  From: Yury Umanets <torque@ukrpost.net>
  
  I have found small inconsistency in loop_set_fd().  It checks if
  ->sendfile() is implemented for passed block device file.  But in fact,
  loop back device driver never calls it.  It uses ->sendfile() from backing
  store file.

ChangeSet@1.1371.731.19, 2004-04-21 07:44:44-07:00, akpm@osdl.org
  [PATCH] i386 hugetlb tlb correction
  
  From: William Lee Irwin III <wli@holomorphy.com>
  
  i386 does hardware interpretation of pagetables, so pte_clear() can't be
  used on present ptes, as it sets the upper half of the hugepte prior to
  setting the lower half (which includes the valid bit).  i.e.  there is a
  window where having a hugepage mapped at 56GB and doing pte_clear() in
  unmap_hugepage_range() allows other threads of the process to see a
  hugepage at 0 in place of the original hugepage at 56GB.
  
  This patch corrects the situation by using ptep_get_and_clear(), which
  clears the lower word of the pte prior to clearing the upper word.
  
  There is another nasty where huge_page_release() needs to wait for TLB
  flushes before returning the hugepages to the free pool, analogous to the
  issue tlb_remove_page() and tlb_flush_mm() repair.

ChangeSet@1.1371.731.18, 2004-04-21 07:44:31-07:00, akpm@osdl.org
  [PATCH] fb_ioctl() usercopy fix
  
  From: Andrea Arcangeli <andrea@suse.de>
  
  Arrange for ioctl(FBIOPUTCMAP) to do copy_to_user() rather than memcpy.

ChangeSet@1.1371.731.17, 2004-04-21 07:44:18-07:00, akpm@osdl.org
  [PATCH] i810_dma range check
  
  From: Andrea Arcangeli <andrea@suse.de>
  
  Correctly range-check an incoming-from-userspace argument.  Found by the
  Stanford checker.

ChangeSet@1.1371.731.16, 2004-04-21 07:44:05-07:00, akpm@osdl.org
  [PATCH] selinux: remove hardcoded policy assumption from get_user_sids() logic
  
  From: Stephen Smalley <sds@epoch.ncsc.mil>
  
  This patch removes a hardcoded policy assumption from the get_user_sids logic
  in the SELinux module that was preventing it from returning contexts that had
  the same type as the caller even if the policy allowed such a transition.  The
  assumption is not valid for all policies, and can be handled via policy
  configuration and userspace rather than hardcoding it in the module logic.

ChangeSet@1.1371.731.15, 2004-04-21 07:43:53-07:00, akpm@osdl.org
  [PATCH] selinux: add runtime disable
  
  From: Stephen Smalley <sds@epoch.ncsc.mil>
  
  This patch adds a kernel configuration option that enables writing to a new
  selinuxfs node 'disable' that allows SELinux to be disabled at runtime prior
  to initial policy load.  SELinux will then remain disabled until next boot.
  This option is similar to the selinux=0 boot parameter, but is to support
  runtime disabling of SELinux, e.g.  from /sbin/init, for portability across
  platforms where boot parameters are difficult to employ (based on feedback by
  Jeremy Katz).

ChangeSet@1.1371.731.14, 2004-04-21 07:43:42-07:00, akpm@osdl.org
  [PATCH] selinux: change context_to_sid handling for no-policy case
  
  From: Stephen Smalley <sds@epoch.ncsc.mil>
  
  This patch changes the behavior of security_context_to_sid in the no-policy
  case so that it simply accepts all contexts and maps them to the kernel SID
  rather than rejecting anything other than an initial SID.  The change avoids
  error conditions when using SELinux in permissive/no-policy mode, so that any
  file contexts left on disk from prior use of SELinux with a policy will not
  cause an error when they are looked up and userspace attempts to set contexts
  can succeed.

ChangeSet@1.1371.731.13, 2004-04-21 07:43:30-07:00, akpm@osdl.org
  [PATCH] i4l: add compat ioctl's for CAPI
  
  From: Marcel Holtmann <marcel@holtmann.org>
  
  This patch adds the needed compat ioctl's for the CAPI on 64bit platforms.

ChangeSet@1.1371.731.12, 2004-04-21 07:43:17-07:00, akpm@osdl.org
  [PATCH] lockfs - dm bits
  
  From: Christoph Hellwig <hch@lst.de>
  
  This patch makes the device mapper use the new freeze_bdev/thaw_bdev
  interface.  Extracted from Chris Mason's patch.

ChangeSet@1.1371.731.11, 2004-04-21 07:43:05-07:00, akpm@osdl.org
  [PATCH] lockfs - xfs bits
  
  From: Christoph Hellwig <hch@lst.de>
  
  Remove all the code now in the VFS, make XFS's freeze ioctls use the new
  infastructure and reorganize some code.
  
  This code needs some work so the source files shared with 2.4 aren't
  exposed to the new VFS interfaces directly.  You'll get an update once this
  has been discussed with the other XFS developers and is implemented.  Note
  that the current patch works fine and I wouldn't complain if it gets into
  Linus' tree as-is.

ChangeSet@1.1371.731.10, 2004-04-21 07:42:53-07:00, akpm@osdl.org
  [PATCH] lockfs: reiserfs fix
  
  From: Chris Mason <mason@suse.com>
  
  reiserfs_write_super_lockfs() is supposed to wait for the transaction to
  commit.

ChangeSet@1.1371.731.9, 2004-04-21 07:42:39-07:00, akpm@osdl.org
  [PATCH] lockfs - vfs bits
  
  From: Christoph Hellwig <hch@lst.de>
  
  These are the generic lockfs bits.  Basically it takes the XFS freezing
  statemachine into the VFS.  It's all behind the kernel-doc documented
  freeze_bdev and thaw_bdev interfaces.
  
  Based on an older patch from Chris Mason.

ChangeSet@1.1371.731.8, 2004-04-21 07:42:28-07:00, akpm@osdl.org
  [PATCH] remove amd7xx_tco
  
  From: Zwane Mwaikambo <zwane@linuxpower.ca>
  
  We've had trouble with this driver, it appears to work but the hardware
  never does the final reboot.  I have yet to come across someone with a
  board which works and don't have personal access to one.  So how about
  scrapping the whole thing.

ChangeSet@1.1371.731.7, 2004-04-21 07:42:18-07:00, akpm@osdl.org
  [PATCH] Call populate_rootfs later in boot
  
  populate_rootfs() is called rather early - before we've called init_idle().
  
  But populate_rootfs() does file I/O, which involves calls to cond_resched(),
  and downing of semaphores, etc.  If it scheules, the scheduler emits
  scheduling-while-atomic warnings and sometimes oopses.
  
  So run populate_rootfs() later, after the scheduler is all set up.

ChangeSet@1.1371.731.6, 2004-04-21 07:42:05-07:00, akpm@osdl.org
  [PATCH] ext3 avoid writing kernel memory to disk
  
  From: Marc-Christian Petersen <m.c.p@kernel.linux-systeme.com>
  
  Solar Designer discovered an information leak in the ext3 code of Linux.
  In a worst case an attacker could read sensitive data such as cryptographic
  keys which would otherwise never hit disk media.  Theodore Ts'o developed a
  correction for this.

ChangeSet@1.1371.731.5, 2004-04-21 07:41:53-07:00, akpm@osdl.org
  [PATCH] compute_creds race
  
  From: Andy Lutomirski <luto@myrealbox.com>
  
  Fixes from me, Olaf Dietsche <olaf+list.linux-kernel@olafdietsche.de>
  
  In fs/exec.c, compute_creds does:
  
  	task_lock(current);
  	if (bprm->e_uid != current->uid || bprm->e_gid != current->gid) {
                   current->mm->dumpable = 0;
  
  		if (must_not_trace_exec(current)
  		    || atomic_read(&current->fs->count) > 1
  		    || atomic_read(&current->files->count) > 1
  		    || atomic_read(&current->sighand->count) > 1) {
  			if(!capable(CAP_SETUID)) {
  				bprm->e_uid = current->uid;
  				bprm->e_gid = current->gid;
  			}
  		}
  	}
  
           current->suid = current->euid = current->fsuid = bprm->e_uid;
           current->sgid = current->egid = current->fsgid = bprm->e_gid;
  
  	task_unlock(current);
  
  	security_bprm_compute_creds(bprm);
  
  I assume the task_lock is to prevent another process (on SMP or preempt)
  from ptracing the execing process between the check and the assignment.  If
  that's the concern then the fact that the lock is dropped before the call
  to security_brpm_compute_creds means that, if security_bprm_compute_creds
  does anything interesting, there's a race.
  
  For my (nearly complete) caps patch, I obviously need to fix this.  But I
  think it may be exploitable now.  Suppose there are two processes, A (the
  malicious code) and B (which uses exec).  B starts out unprivileged (A and
  B have, e.g., uid and euid = 500).
  
  1. A ptraces B.
  
  2. B calls exec on some setuid-root program.
  
  3. in cap_bprm_set_security, B sets bprm->cap_permitted to the full
     set.
  
  4. B gets to compute_creds in exec.c, calls task_lock, and does not
     change its uid.
  
  5. B calls task_unlock.
  
  6. A detaches from B (on preempt or SMP).
  
  7. B gets to task_lock in cap_bprm_compute_creds, changes its
     capabilities, and returns from compute_creds into load_elf_binary.
  
  8. load_elf_binary calls create_elf_tables (line 852 in 2.6.5-mm1),
     which calls cap_bprm_secureexec (through LSM), which returns false (!).
  
  9. exec finishes.
  
  The setuid program is now running with uid=euid=500 but full permitted
  capabilities.  There are two (or three) ways to effectively get local root
  now:
  
  1.  IIRC, linux 2.4 doesn't check capabilities in ptrace, so A could
     just ptrace B again.
  
  2. LD_PRELOAD.
  
  3.  There are probably programs that will misbehave on their own under
     these circumstances.
  
  Is there some reason why this is not doable?
  
  The patch renames bprm_compute_creds to bprm_apply_creds and moves all uid
  logic into the hook, where the test and the resulting modification can both
  happen under task_lock().
  
  This way, out-of-tree LSMs will fail to compile instead of malfunctioning. 
  It should also make life easier for LSMs and will certainly make it easier
  for me to finish the cap patch.

ChangeSet@1.1371.731.4, 2004-04-21 07:41:40-07:00, akpm@osdl.org
  [PATCH] Fix nfsroot option handling
  
  From: Trond Myklebust <trond.myklebust@fys.uio.no>
  
  The following patch fixes up a number of bugs in the NFSroot parser
  rewrite from patchset
  trond.myklebust@fys.uio.no|ChangeSet|20040411182341|00938
  
  It also ensures that NFSroot mount options are consistent with the userland
  "mount" program.

ChangeSet@1.1371.731.3, 2004-04-21 07:24:51-07:00, drepper@redhat.com
  [PATCH] Add missing __initdata
  
  One of the stack size optimizations introduced a new static variable in
  a function marked with __init.  But the variable is not marked
  appropriately and so 1k of data is never freed.

ChangeSet@1.1371.731.1, 2004-04-20 14:24:38-07:00, torvalds@ppc970.osdl.org
  Linux 2.6.6-rc2
  TAG: v2.6.6-rc2