1. 26 Apr, 2004 40 commits
    • Andrew Morton's avatar
      [PATCH] fs/proc/array.c: workaround for gcc-2.96 · 8d67bea6
      Andrew Morton authored
      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.
      8d67bea6
    • Andrew Morton's avatar
      [PATCH] ppc32: fix head_44x.S copyrights · 1c9cdbfc
      Andrew Morton authored
      From: Matt Porter <mporter@kernel.crashing.org>
      
      A copyright change to properly show the lineage of this file.
      1c9cdbfc
    • Andrew Morton's avatar
      [PATCH] doc: tips for S3 resume on radeon cards · 6356aaa9
      Andrew Morton authored
      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.
      6356aaa9
    • Andrew Morton's avatar
      [PATCH] ISDN Eicon driver: remove call to trap usermode helper · 4a99dc71
      Andrew Morton authored
      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.
      4a99dc71
    • Andrew Morton's avatar
      [PATCH] hugepage fixes · 6d576c06
      Andrew Morton authored
      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().
      6d576c06
    • Andrew Morton's avatar
      [PATCH] simplify put_page() · 65ea1aff
      Andrew Morton authored
      By requiring that compound pages implement destructors we can drop some code
      from put_page().
      65ea1aff
    • Andrew Morton's avatar
      [PATCH] smb_writepage retval fix · c8c855b5
      Andrew Morton authored
      ->writepage() is supposed to return zero or a negative error code.  Returning
      the number of bytes written will confuse the VFS.
      c8c855b5
    • Andrew Morton's avatar
      [PATCH] slab: use order 0 for vfs caches · 1b2569fb
      Andrew Morton authored
      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.
      1b2569fb
    • Andrew Morton's avatar
      [PATCH] isofs "default NLS charset not used" fix · b3f25c2b
      Andrew Morton authored
      From: Marek Szuba <scriptkiddie@wp.pl>
      
      Use the configured default NLS rather than hardwire it.
      b3f25c2b
    • Andrew Morton's avatar
      [PATCH] fix CONFIG_SYSFS=n compile warning · 81567845
      Andrew Morton authored
      From: Matt Mackall <mpm@selenic.com>
      81567845
    • Andrew Morton's avatar
      [PATCH] dio_bio_reap() return value fix · 9aa8863f
      Andrew Morton authored
      This function doesn't correctly accumulate -EIO for its caller.
      9aa8863f
    • Andrew Morton's avatar
      [PATCH] task_lock() comment update · 81779415
      Andrew Morton authored
      81779415
    • Andrew Morton's avatar
      [PATCH] s390: no timer interrupts in idle. · 1bd4c02c
      Andrew Morton authored
      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.
      1bd4c02c
    • Andrew Morton's avatar
      [PATCH] efibootmgr location change · 30c1ec2b
      Andrew Morton authored
      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.
      30c1ec2b
    • Andrew Morton's avatar
      [PATCH] efivars fixes · 03d1c495
      Andrew Morton authored
      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.
      03d1c495
    • Andrew Morton's avatar
      [PATCH] efivars: remove x86 references · 1079344c
      Andrew Morton authored
      From: Matt Tolentino <metolent@snoqualmie.dp.intel.com>
      
      Third efivars driver update patch that removes x86 references to the /proc
      version of the driver.
      1079344c
    • Andrew Morton's avatar
      [PATCH] efivars: add to drivers/firmware · d621c98a
      Andrew Morton authored
      From: Matt Tolentino <metolent@snoqualmie.dp.intel.com>
      
      Second efivars driver update patch that adds efivars into the drivers/firmware
      directory.
      d621c98a
    • Andrew Morton's avatar
      [PATCH] efivars: remove from arch/ia64 · 855647c4
      Andrew Morton authored
      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.
      855647c4
    • Andrew Morton's avatar
      [PATCH] m68k bitops · b13496e8
      Andrew Morton authored
      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()
      b13496e8
    • Andrew Morton's avatar
      [PATCH] m68k: Amiga A2065 Ethernet KERN_* · 009c5ed6
      Andrew Morton authored
      From: Geert Uytterhoeven <geert@linux-m68k.org>
      
      Amiga A2065 Ethernet: Add KERN_* prefixes to printk() messages
      009c5ed6
    • Andrew Morton's avatar
      [PATCH] prune_dcache comment fix · 5324408b
      Andrew Morton authored
      From: Maneesh Soni <maneesh@in.ibm.com>
      
      Clarify some things which were confusing poeple...
      5324408b
    • Andrew Morton's avatar
      [PATCH] slab alignment fixes · afcd93a4
      Andrew Morton authored
      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.
      afcd93a4
    • Andrew Morton's avatar
      [PATCH] hugetlbpage: remove include linux/module.h · 01305153
      Andrew Morton authored
      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.
      01305153
    • Andrew Morton's avatar
      [PATCH] ppc64: prom.c fix for CONFIG_BLK_DEV_INITRD=n · 59e8d5c9
      Andrew Morton authored
      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...
      59e8d5c9
    • Andrew Morton's avatar
      [PATCH] ppc64: Move Initrd · e51a23c6
      Andrew Morton authored
      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.
      e51a23c6
    • Andrew Morton's avatar
      [PATCH] ppc64: Initrd Cleanup · 54c832af
      Andrew Morton authored
      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.
      54c832af
    • Andrew Morton's avatar
      [PATCH] ppc64: Clean up prom functions in prom.c · 79293254
      Andrew Morton authored
      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.
      79293254
    • Andrew Morton's avatar
      [PATCH] ppc64: Fix prom.c to boot on G5 after make_room fix · 8b66a490
      Andrew Morton authored
      From: Rusty Russell <rusty@rustcorp.com.au>
      
      Ben Herrenschmidt made this actually boot.
      8b66a490
    • Andrew Morton's avatar
      [PATCH] ppc64: make_room macro for ppc64 prom.c · efa8a179
      Andrew Morton authored
      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.
      efa8a179
    • Andrew Morton's avatar
      [PATCH] ppc64: Make finish_device_tree use lmb_alloc, not klimit · d6d33678
      Andrew Morton authored
      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.
      d6d33678
    • Andrew Morton's avatar
      [PATCH] ppc64: Rearrage Rest of prom.c in C Order · 196431fd
      Andrew Morton authored
      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.
      196431fd
    • Andrew Morton's avatar
      [PATCH] ppc64: Rearrage interpret_funcs in C Order · 9f06f65e
      Andrew Morton authored
      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.
      9f06f65e
    • Andrew Morton's avatar
      [PATCH] ppc64: Rearrage copy_device_tree() and its functions in C Order · cde5f62f
      Andrew Morton authored
      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.
      cde5f62f
    • Andrew Morton's avatar
      [PATCH] ppc64: Rearrage finish_device_tree() and its functions in C Order · 5fa5de94
      Andrew Morton authored
      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.
      5fa5de94
    • Andrew Morton's avatar
      [PATCH] ppc64: Split prom.c Into pre-reloc and post-reloc Functions · c8fbc7b9
      Andrew Morton authored
      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.
      c8fbc7b9
    • Andrew Morton's avatar
      [PATCH] Minor fixes for ext3 journalled quotas · fe6ec59f
      Andrew Morton authored
      From: Jan Kara <jack@ucw.cz>
      
      It fixes a memory leak when turning journalled quotas off.
      fe6ec59f
    • Andrew Morton's avatar
      [PATCH] dquot: remove unneeded test · 87d218f9
      Andrew Morton authored
      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.
      87d218f9
    • Andrew Morton's avatar
      [PATCH] Per-sb dquot dirty lists · 984e6953
      Andrew Morton authored
      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...)
      984e6953
    • Andrew Morton's avatar
      [PATCH] Bigger quota hashtable · 2187a5e4
      Andrew Morton authored
      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.
      2187a5e4
    • Andrew Morton's avatar
      [PATCH] ext3 journalled quota locking fix · fa24b7f2
      Andrew Morton authored
      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.
      fa24b7f2