Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Tag: v2.6.24-rc5
Commits on Dec 11, 2007
  1. Linux 2.6.24-rc5

    Linus Torvalds authored
  2. @jsgf

    xen: relax signature check

    jsgf authored Linus Torvalds committed
    Some versions of Xen 3.x set their magic number to "xen-3.[12]", so
    relax the test to match them.
    
    Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  3. Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-…

    Linus Torvalds authored
    …linus
    
    * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
      [MIPS] Malta: Enable tickless and highres timers.
      [MIPS] Bigsur: Enable tickless and and highres timers.
      qemu: do not enable IP7 blindly
      [MIPS] Alchemy: Fix Au1x SD controller IRQ
      [MIPS] Don't byteswap writes to display when running bigendian
  4. @ebiederm

    proc: remove/Fix proc generic d_revalidate

    ebiederm authored Linus Torvalds committed
    Ultimately to implement /proc perfectly we need an implementation of
    d_revalidate because files and directories can be removed behind the back
    of the VFS, and d_revalidate is the only way we can let the VFS know that
    this has happened.
    
    Unfortunately the linux VFS can not cope with anything in the path to a
    mount point going away.  So a proper d_revalidate method that calls d_drop
    also needs to call have_submounts which is moderately expensive, so you
    really don't want a d_revalidate method that unconditionally calls it, but
    instead only calls it when the backing object has really gone away.
    
    proc generic entries only disappear on module_unload (when not counting the
    fledgling network namespace) so it is quite rare that we actually encounter
    that case and has not actually caused us real world trouble yet.
    
    So until we get a proper test for keeping dentries in the dcache fix the
    current d_revalidate method by completely removing it.  This returns us to
    the current status quo.
    
    So with CONFIG_NETNS=n things should look as they have always looked.
    
    For CONFIG_NETNS=y things work most of the time but there are a few rare
    corner cases that don't behave properly.  As the network namespace is
    barely present in 2.6.24 this should not be a problem.
    
    Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
    Cc: "Rafael J. Wysocki" <rjw@sisk.pl>
    Cc: Pavel Emelyanov <xemul@openvz.org>
    Cc: "David S. Miller" <davem@davemloft.net>
    Cc: Herbert Xu <herbert@gondor.apana.org.au>
    Cc: Alexey Dobriyan <adobriyan@gmail.com>
    Cc: Trond Myklebust <trond.myklebust@fys.uio.no>
    Cc: "Denis V. Lunev" <den@openvz.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  5. @rinivanzetten

    atmel_spi: reload RCR before TCR

    rinivanzetten authored Linus Torvalds committed
    We have a wifi module connected to the spi bus and got sometimes FIFO
    overrun errors on the spi bus.
    
    After some investigation i found that the driver loads the TCR (transmit
    count) register before the RCR (receive count).  When the transfer list is
    not empty the atmel_spi_next_message is called while tx and rx are enabled.
     As soon as the TCR is loaded, hardware starts transfer and causes a rx
    fifo overrun because the RCR is not loaded yet.
    
    Load the RCR before the TCR.  After this patch the fifo overrun disapears
    at out setup.
    
    Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
    Signed-off-by: Rini van Zetten <rini@arvoo.nl>
    Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  6. @JoePerches

    MAINTAINERS: update stale entries

    JoePerches authored Linus Torvalds committed
    Some bad email addresses are removed:
    
            linux-tr@linuxtr.net
            ehaase@inf.fu-berlin.de
    
    Some are updated:
    
            linux@maxim.org.za to andrew@sanpeople.com
            linux-kernel@linux-mips.org to linux-mips@linux-mips.org
            jdike@karaya.com to jdike@addtoit.com
    
    The PCMCIA entry is corrected to a web address
    
    The ZR36120 VIDEO FOR LINUX DRIVER entry is removed
    
    Signed-off-by: Joe Perches <joe@perches.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  7. esp_scsi: fix reset cleanup spinlock recursion

    Maciej W. Rozycki authored Linus Torvalds committed
    The esp_reset_cleanup() function is called with the host lock held and
    invokes starget_for_each_device() which wants to take it too.  Here is a
    fix along the lines of shost_for_each_device()/__shost_for_each_device()
    adding a __starget_for_each_device() counterpart which assumes the lock
    has already been taken.
    
    Eventually, I think the driver should get modified so that more work is
    done as a softirq rather than in the interrupt context, but for now it
    fixes a bug that causes the spinlock debugger to fire.
    
    While at it, it fixes a small number of cosmetic problems with
    starget_for_each_device() too.
    
    Signed-off-by: Maciej W. Rozycki <macro@linux-mips.org>
    Acked-by: David S. Miller <davem@davemloft.net>
    Cc: James Bottomley <James.Bottomley@steeleye.com>
    Cc: <stable@kernel.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  8. @neilbrown

    Fix NULL dereference in umem.c

    neilbrown authored Linus Torvalds committed
    Fix NULL dereference in umem.c
    
    Signed-off-by: Neil Brown <neilb@suse.de>
    Tested-by: Dave Chinner <dgc@sgi.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  9. @JuliaLawall

    drivers/serial/uartlite.c: Add missing of_node_put

    JuliaLawall authored Linus Torvalds committed
    There should be an of_node_put when breaking out of a loop that iterates
    using for_each_compatible_node.
    
    This was detected and fixed using the following semantic patch.
    (http://www.emn.fr/x-info/coccinelle/)
    
    // <smpl>
    @@
    identifier d;
    type T;
    expression e;
    iterator for_each_compatible_node;
    @@
    
    T *d;
    ...
    for_each_compatible_node(d,...)
      {... when != of_node_put(d)
           when != e = d
    (
       return d;
    |
    +  of_node_put(d);
    ?  return ...;
    )
    ...}
    // </smpl>
    
    Signed-off-by: Julia Lawall <julia@diku.dk>
    Acked-by: Grant Likely <grant.likely@secretlab.ca>
    Acked-by: Peter Korsgaard <jacmet@sunsite.dk>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  10. hugetlb: handle write-protection faults in follow_hugetlb_page

    Adam Litke authored Linus Torvalds committed
    The follow_hugetlb_page() fix I posted (merged as git commit
    5b23dbe) missed one case.  If the pte is
    present, but not writable and write access is requested by the caller to
    get_user_pages(), the code will do the wrong thing.  Rather than calling
    hugetlb_fault to make the pte writable, it notes the presence of the pte
    and continues.
    
    This simple one-liner makes sure we also fault on the pte for this case.
    Please apply.
    
    Signed-off-by: Adam Litke <agl@us.ibm.com>
    Acked-by: Dave Kleikamp <shaggy@us.ibm.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  11. @willnewton

    spi_imx: fix typo in description

    willnewton authored Linus Torvalds committed
    Signed-off-by: Will Newton <will.newton@gmail.com>
    Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  12. @willnewton

    spi_bfin5xx: fix typo in description

    willnewton authored Linus Torvalds committed
    Signed-off-by: Will Newton <will.newton@gmail.com>
    Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  13. @willnewton

    pxa2xx_spi: fix typo in description

    willnewton authored Linus Torvalds committed
    Signed-off-by: Will Newton <will.newton@gmail.com>
    Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  14. asm-h8300: parentheses around definition CLOCK_TICK_RATE

    Roel Kluin authored Linus Torvalds committed
    Some places where CLOCK_TICK_RATE may be used incorrectly:
    
    arch/arm/mach-mx3/time.c:125:   __raw_writel((v / CLOCK_TICK_RATE) - 1, MXC_GPT_GPTPR);
    drivers/watchdog/davinci_wdt.c:103:     timer_margin = (((u64)heartbeat * CLOCK_TICK_RATE) & 0xffffffff);
    drivers/watchdog/davinci_wdt.c:105:     timer_margin = (((u64)heartbeat * CLOCK_TICK_RATE) >> 32);
    drivers/watchdog/ks8695_wdt.c:64:       unsigned long tval = wdt_time * CLOCK_TICK_RATE;
    
    I'm not sure whether this definition is used there, but adding parentheses
    should be good anyway.
    
    Signed-off-by: Roel Kluin <12o3l@tiscali.nl>
    Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  15. pcmcia: fix kernel-doc comments

    Randy Dunlap authored Linus Torvalds committed
    Fix kernel-doc comments in drivers/pcmcia/:
    
    - ti113x.h does not contain kernel-doc, so don't use /** to begin a doc
      comment
    - yenta_socket.c: remove /** on non-kernel-doc comments;
      escape the ':' in an "http:" comment so that it won't be treated as a
      section heading;
    - cs.c: remove /** on non-kernel-doc comments & add function parameter info
    - ds.c: fix function parameter info
    
    Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  16. revert "dpt_i2o: convert to SCSI hotplug model"

    Andrew Morton authored Linus Torvalds committed
    revert
    
        commit 55d9fcf
        Author: Matthew Wilcox <matthew@wil.cx>
        Date:   Mon Jul 30 15:19:18 2007 -0600
    
            [SCSI] dpt_i2o: convert to SCSI hotplug model
    
             - Delete refereces to HOSTS_C
             - Switch to module_init/module_exit instead of detect/release
             - Don't pass around the host template and rename it to adpt_template
             - Switch from scsi_register/scsi_unregister to scsi_host_alloc,
               scsi_add_host, scsi_scan_host and scsi_host_put.
    
    Because it caused (for unknown reasons) Andres' all-data-reads-as-zeroes
    problem, reported at
    http://groups.google.com/group/fa.linux.kernel/msg/083a9acff0330234
    
    Cc: Matthew Wilcox <matthew@wil.cx>
    Cc: "Salyzyn, Mark" <mark_salyzyn@adaptec.com>
    Cc: James Bottomley <James.Bottomley@SteelEye.com>
    Acked-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
    Cc: Anders Henke <anders.henke@1und1.de>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: <stable@kernel.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  17. aoe: properly initialise the request_queue's backing_dev_info

    Andrew Morton authored Linus Torvalds committed
    AOE forgot to initialise its queue's backing_dev_info, so kernels crash.
    (http://bugzilla.kernel.org/show_bug.cgi?id=9482)
    
    Fix that and consoldate aoeblk_gdalloc()'s error handling.
    
    Thanks be to Jon for reporting and testing.
    
    Cc: "Ed L. Cashin" <ecashin@coraid.com>
    Cc: <stable@kernel.org>
    Cc: "Jon Nelson" <jnelson@jamponi.net>
    Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Commits on Dec 10, 2007
  1. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    Linus Torvalds authored
    …/git/ieee1394/linux1394-2.6
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:
      firewire: OHCI 1.0 Isochronous Receive support
  2. Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/g…

    Linus Torvalds authored
    …it/aegl/linux-2.6
    
    * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
      [IA64] Fix iosapic interrupt delivery mode for CPE
      [IA64] kprobe: make kreturn probe handler stack unwind correct
      [IA64] operator priority fix in acpi_map_lsapic()
      [IA64] Add missing "space" to concatenated strings
      [IA64] make full use of macro efi_md_size
      [IA64] rename _bss to __bss_start
      [IA64] SGI Altix : fix bug in sn_io_late_init()
      [IA64] iosapic cleanup
      [IA64] signal : fix missing error checkings
      [IA64] export copy_page() to modules
      [IA64] don't assume that unwcheck.py is executable
      [IA64] increase .data.patch offset
  3. firewire: OHCI 1.0 Isochronous Receive support

    Jarod Wilson authored Stefan Richter committed
    Third rendition of FireWire OHCI 1.0 Isochronous Receive support, using a
    zer-copy method similar to OHCI 1.1 which puts the IR data payload directly
    into the userspace buffer. The zero-copy implementation eliminates the
    video artifacts, audio popping, and buffer underrun problems seen with
    version 1 of this patch, as well as fixing a regression in OHCI 1.1 support
    introduced by version 2 of this patch.
    
    Successfully tested in OHCI 1.1 mode on the following chipsets:
    
    - NEC uPD72847 (rev 01), OHCI 1.1 (PCI)
    - Ti XIO2200(A) (rev 01), OHCI 1.1 (PCIe)
    - Ti TSB41AB2 (rev 01), OHCI 1.1 (PCI on SB Audigy)
    - Apple UniNorth 2 (rev 81), OHCI 1.1 (PowerBook G4 onboard)
    
    Successfully tested in OHCI 1.0 mode on the following chipsets:
    
    - Agere FW323 (rev 06), OHCI 1.0 (Mac Mini onboard)
    - Agere FW323 (rev 06), OHCI 1.0 (PCI)
    - Via VT6306 (rev 46), OHCI 1.0 (PCI)
    - NEC OrangeLink (rev 01), OHCI 1.0 (PCI)
    - NEC uPD72847 (rev 01), OHCI 1.1 (PCI)
    - Ti XIO2200(A) (rev 01), OHCI 1.1 (PCIe)
    
    The bulk of testing was done in an x86_64 system, but was also successfully
    sanity-tested on other systems, including a PPC(32) PowerBook G4 and an i686
    EPIA M10k. Crude benchmarking (watching top during capture) puts the cpu
    utilization during capture on the EPIA's 1GHz Via C3 processor around 13%,
    which is down from 30% with the v1 code.
    
    Some implementation details:
    
    To maintain the same userspace API as dual-buffer mode, we set up two
    descriptors for every incoming packet. The first is an INPUT_MORE descriptor,
    pointing to a buffer large enough to hold just the packet's iso headers,
    immediately followed by an INPUT_LAST descriptor, pointing to a chunk of the
    userspace buffer big enough for the packet's data payload. With this setup,
    each incoming packet fills in these two descriptors in a manner that very
    closely emulates dual-buffer receive, to the point where the bulk of the
    handle_ir_* code is now identical between the two (and probably primed for
    some restructuring to share code between them).
    
    The only caveat I have at the moment is that neither of my OHCI 1.0 Via
    VT6307-based FireWire controllers work particularly well with this code
    for reasons I have yet to figure out.
    
    Signed-off-by: Jarod Wilson <jwilson@redhat.com>
    Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
  4. Merge branch 'for-linus' of git://oss.sgi.com:8090/xfs/xfs-2.6

    Linus Torvalds authored
    * 'for-linus' of git://oss.sgi.com:8090/xfs/xfs-2.6:
      [XFS] Fix xfs_ichgtime()s broken usage of I_SYNC
      [XFS] Make xfsbufd threads freezable
      [XFS] revert to double-buffering readdir
      [XFS] Fix broken inode cluster setup.
      [XFS] Clear XBF_READ_AHEAD flag on I/O completion.
      [XFS] Fixed a few bugs in xfs_buf_associate_memory()
      [XFS] 971064 Various fixups for xfs_bulkstat().
      [XFS] Fix dbflush panic in xfs_qm_sync.
  5. Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/fix-kbuild

    Linus Torvalds authored
    * git://git.kernel.org/pub/scm/linux/kernel/git/sam/fix-kbuild:
      kbuild: fix building with O=.. options
      kbuild: fix building with redirected output.
  6. Revert "PCI: fix IDE legacy mode resources"

    Linus Torvalds authored
    This reverts commit fd6e732, which
    helped up things on MIPS, but was wrong for everything else.  As Ralf
    Baechle puts it:
    
      "It seems the whole MIPS resource managment is complicated enough (out
       of necessity) that only a few people actually grok it.  Ioports being
       actually memory mapped on MIPS only makes the confusion worse, sigh."
    
    Requested-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
    Acked-by: Alan Cox <alan@redhat.com>
    Acked-by: Ralf Baechle <ralf@linux-mips.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  7. @ozbenh

    powerpc: Fix IDE legacy vs. native fixups

    ozbenh authored Linus Torvalds committed
    PowerMac and CHRP/BriQ platforms have quirks to switch some IDE
    controllers from legacy mode to fully native mode. Those quirks
    however will not work properly anymore due to a change to the
    generic code to better handle legacy IDE resources.
    
    This fixes it by moving those quirk to "early" quirks (so they
    run before resources are probed for the devices) and clearing
    all BARs after the conversion to force a reallocation of sane
    values.
    
    Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
    Acked-by: Alan Cox <alan@redhat.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  8. [XFS] Fix xfs_ichgtime()s broken usage of I_SYNC

    David Chinner authored Lachlan McIlroy committed
    The recent I_LOCK->I_SYNC changes mistakenly changed xfs_ichgtime to look
    at I_SYNC instead of I_LOCK. This was incorrect and prevents newly created
    inodes from moving to the dirty list. Change this to the correct check
    which is for I_NEW, not I_LOCK or I_SYNC so that behaviour is correct.
    
    SGI-PV: 974225
    SGI-Modid: xfs-linux-melb:xfs-kern:30204a
    
    Signed-off-by: David Chinner <dgc@sgi.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
  9. @rjwysocki

    [XFS] Make xfsbufd threads freezable

    rjwysocki authored Lachlan McIlroy committed
    Fix breakage caused by commit 8314418
    that did not introduce the necessary call to set_freezable() in
    xfs/linux-2.6/xfs_buf.c .
    
    SGI-PV: 974224
    SGI-Modid: xfs-linux-melb:xfs-kern:30203a
    
    Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
    Signed-off-by: David Chinner <dgc@sgi.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
  10. [XFS] revert to double-buffering readdir

    Christoph Hellwig authored Lachlan McIlroy committed
    The current readdir implementation deadlocks on a btree buffers locks
    because nfsd calls back into ->lookup from the filldir callback. The only
    short-term fix for this is to revert to the old inefficient
    double-buffering scheme.
    
    SGI-PV: 973377
    SGI-Modid: xfs-linux-melb:xfs-kern:30201a
    
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: David Chinner <dgc@sgi.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
  11. [XFS] Fix broken inode cluster setup.

    David Chinner authored Lachlan McIlroy committed
    The radix tree based inode caches did away with the inode cluster hashes,
    replacing them with a bunch of masking and gang lookups on the radix tree.
    
    This masking got broken when moving the code to per-ag radix trees and
    indexing by agino # rather than straight inode number. The result is
    clustered inode writeback does not cluster and things can go extremely
    slowly when there are lots of inodes to write.
    
    Fix it up by comparing the agino # of the inode we just looked up to the
    index of the cluster we are looking for.
    
    Tested-by: Torsten Kaiser <just.for.lkml@googlemail.com>
    
    SGI-PV: 972915
    SGI-Modid: xfs-linux-melb:xfs-kern:30033a
    
    Signed-off-by: David Chinner <dgc@sgi.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
  12. [XFS] Clear XBF_READ_AHEAD flag on I/O completion.

    Lachlan McIlroy authored Lachlan McIlroy committed
    SGI-PV: 972554
    SGI-Modid: xfs-linux-melb:xfs-kern:30128a
    
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
  13. [XFS] Fixed a few bugs in xfs_buf_associate_memory()

    Lachlan McIlroy authored Lachlan McIlroy committed
    - calculation of 'page_count' was incorrect as it did not
      consider the offset of 'mem' into the first page. The
      logic to bump 'page_count' didn't work if 'len' was <=
      PAGE_CACHE_SIZE (ie offset = 3k, len = 2k).
    - setting b_buffer_length to 'len' is incorrect if 'offset'
      is > 0. Set it to the total length of the buffer.
    - I suspect that passing a non-aligned address into
      mem_to_page() for the first page may have been causing
      issues - don't know but just tidy up that code anyway.
    
    SGI-PV: 971596
    SGI-Modid: xfs-linux-melb:xfs-kern:30143a
    
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
    Signed-off-by: Christoph Hellwig <hch@infradead.org>
  14. [XFS] 971064 Various fixups for xfs_bulkstat().

    Lachlan McIlroy authored Lachlan McIlroy committed
    - sanity check for NULL user buffer in xfs_ioc_bulkstat[_compat]()
    - remove the special case for XFS_IOC_FSBULKSTAT with count == 1. This
      special case causes bulkstat to fail because the special case uses
      xfs_bulkstat_single() instead of xfs_bulkstat() and the two functions
      have different semantics.  xfs_bulkstat() will return the next inode
      after the one supplied while skipping internal inodes (ie quota inodes).
      xfs_bulkstate_single() will only lookup the inode supplied and return
      an error if it is an internal inode.
    - in xfs_bulkstat(), need to initialise 'lastino' to the inode supplied
      so in cases were we return without examining any inodes the scan wont
      restart back at zero.
    - sanity check for valid *ubcountp values. Cannot sanity check for valid
      ubuffer here because some users of xfs_bulkstat() don't supply a buffer.
    - checks against 'ubleft' (the space left in the user's buffer) should be
      against 'statstruct_size' which is the supplied minimum object size.
      The mixture of checks against statstruct_size and 0 was one of the
      reasons we were skipping inodes.
    - if the formatter function returns BULKSTAT_RV_NOTHING and an error and
      the error is not ENOENT or EINVAL then we need to abort the scan. ENOENT
      is for inodes that are no longer valid and we just skip them. EINVAL is
      returned if we try to lookup an internal inode so we skip them too. For
      a DMF scan if the inode and DMF attribute cannot fit into the space left
      in the user's buffer it would return ERANGE. We didn't handle this error
      and skipped the inode. We would continue to skip inodes until one fitted
      into the user's buffer or we completed the scan.
    - put back the recalculation of agino (that got removed with the last fix)
      at the end of the while loop. This is because the code at the start of
      the loop expects agino to be the last inode examined if it is non-zero.
    - if we found some inodes but then encountered an error, return success
      this time and the error next time. If the formatter aborted with ENOMEM
      we will now return this error but only if we couldn't read any inodes.
      Previously if we encountered ENOMEM without reading any inodes we
      returned a zero count and no error which falsely indicated the scan was
      complete.
    
    SGI-PV: 973431
    SGI-Modid: xfs-linux-melb:xfs-kern:30089a
    
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
    Signed-off-by: David Chinner <dgc@sgi.com>
  15. [XFS] Fix dbflush panic in xfs_qm_sync.

    Donald Douwsma authored Lachlan McIlroy committed
    The recent behaviour layer removal dropped the check for quotas that have
    been requested at mount time but have subsequently been turned off. This
    results in a panic when accessing m_quotainfo which has been freed.
    
    This patch adds the check originally made by xfs_qm_syncall() to
    xfs_qm_sync().
    
    SGI-PV: 969769
    SGI-Modid: xfs-linux-melb:xfs-kern:29908a
    
    Signed-off-by: Donald Douwsma <donaldd@sgi.com>
    Signed-off-by: David Chinner <dgc@sgi.com>
    Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
Commits on Dec 9, 2007
  1. Avoid double memclear() in SLOB/SLUB

    Linus Torvalds authored
    Both slob and slub react to __GFP_ZERO by clearing the allocation, which
    means that passing the GFP_ZERO bit down to the page allocator is just
    wasteful and pointless.
    
    Acked-by: Matt Mackall <mpm@selenic.com>
    Reviewed-by: Pekka Enberg <penberg@cs.helsinki.fi>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  2. kbuild: fix building with O=.. options

    Sam Ravnborg authored
    The check introduced in commit:
    4f1127e "kbuild: fix
    infinite make recursion"
    
    caused certain external modules not to build and
    also caused 'make targz-pkg' to fail.
    This is a minimal fix so we revert to previous
    behaviour - but we do not overwrite the Makefile
    in the top-level directory.
    
    Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
    Tested-by: Jay Cliburn <jacliburn@bellsouth.net>
    Cc: Jay Cliburn <jacliburn@bellsouth.net>
  3. kbuild: fix building with redirected output.

    Sam Ravnborg authored Sam Ravnborg committed
    Jan Altenberg <jan.altenberg@linutronix.de> reported that
    building with redirected input like this failed:
    make O=dir oldconfig bzImage < /dev/null
    
    The problem were caused by a make silentoldconfig being
    run before oldconfig and with a non-recent .config the build
    failed because silentoldconfig requires non-redirected stdin.
    
    Silentoldconfig was run as a side-effect of having the
    top-level Makefile re-made by make.
    Introducing an empty rule for the top-level Makefile
    (and Kbuild.include) fixed the issue.
    
    Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Something went wrong with that request. Please try again.