Skip to content
Commits on May 1, 2008
  1. @tytso @torvalds

    Update .gitignore to include include/linux/bounds.h

    tytso committed with torvalds Apr 30, 2008
    (which is autogenerated by kbuild)
    
    Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  2. @torvalds

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6

    torvalds committed Apr 30, 2008
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
      ipv6: Compilation fix for compat MCAST_MSFILTER sockopts.
  3. @torvalds

    Fix dnotify/close race

    Al Viro committed with torvalds May 1, 2008
    We have a race between fcntl() and close() that can lead to
    dnotify_struct inserted into inode's list *after* the last descriptor
    had been gone from current->files.
    
    Since that's the only point where dnotify_struct gets evicted, we are
    screwed - it will stick around indefinitely.  Even after struct file in
    question is gone and freed.  Worse, we can trigger send_sigio() on it at
    any later point, which allows to send an arbitrary signal to arbitrary
    process if we manage to apply enough memory pressure to get the page
    that used to host that struct file and fill it with the right pattern...
    
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  4. @torvalds

    x86: Mark OPTIMIZE_INLINING broken

    torvalds committed Apr 30, 2008
    So Ingo finally did figure out why UML broke with this option: UML
    passes gcc the -fno-unit-at-a-time flag, and apparently that wreaks
    havoc with gcc's inlining.
    
    We could turn off -fno-unit-at-a-time for UML for gcc4+ (which is what
    x86 does), but there's bad blood about this whole option, and it does
    show that the thing is just fragile as heck.
    
    So let tempers cool, and disable the thing, and we can revisit the
    decision later.
    
    Cc: Adrian Bunk <bunk@kernel.org>
    Cc: David Miller <davem@davemloft.net>
    Acked-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  5. @torvalds

    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    torvalds committed Apr 30, 2008
    …/git/x86/linux-2.6-x86-fixes3
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86-fixes3: (21 commits)
      x86: numaq fix
      x86: 8K stacks by default
      x86: ioremap ram check fix
      x86: fix HT cpu booting on 32-bit
      x86: optimize inlining off
      x86: CONFIG_X86_ELAN fix
      x86: Kconfig fix
      x86 PAT: fix performance drop for glx, use UC minus for ioremap(), ioremap_nocache() and pci_mmap_page_range()
      x86: use defconfigs from x86/configs/*
      toshiba: use ioremap_cached
      revert: "x86: ioremap(), extend check to all RAM pages"
      x86: don't bother printing compat vdso address
      fix: x86: support for new UV apic
      x86: fix early-BUG message
      x86: iommu_sac_force can become static
      x86: add proper header for reboot_force
      x86 VISWS: build fix
      x86, voyager: fix ioremap_nocache()
      hpet: fix
      x86: unexport kmap_atomic_to_page
      ...
  6. @torvalds

    Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6

    torvalds committed Apr 30, 2008
    * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6:
      klist: fix coding style errors in klist.h and klist.c
      driver core: remove no longer used "struct class_device"
      pcmcia: remove pccard_sysfs_interface warnings
      devres: support addresses greater than an unsigned long via dev_ioremap
      kobject: do not copy vargs, just pass them around
      sysfs: sysfs_update_group stub for CONFIG_SYSFS=n
      DEBUGFS: Correct location of debugfs API documentation.
      driver core: warn about duplicate driver names on the same bus
      klist: implement klist_add_{after|before}()
      klist: implement KLIST_INIT() and DEFINE_KLIST()
      sysfs: Disallow truncation of files in sysfs
Commits on Apr 30, 2008
  1. @gregkh

    klist: fix coding style errors in klist.h and klist.c

    gregkh committed Apr 30, 2008
    Finally clean up the odd spacing in these files.
    
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  2. @kaysievers @gregkh

    driver core: remove no longer used "struct class_device"

    kaysievers committed with gregkh Mar 12, 2008
    Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  3. @gregkh

    pcmcia: remove pccard_sysfs_interface warnings

    David Brownell committed with gregkh Apr 28, 2008
    Make the PCMCIA core stop using class_interface to hide socket attribute
    registration.  This removes the associated section mismatch warnings, and
    helps get to the point where that mechanism can finally be removed.
    
    Simplify that attribute registration by using an attribute_group.
    This is a net shrink in object size.
    
    Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  4. @kumargala @gregkh

    devres: support addresses greater than an unsigned long via dev_ioremap

    kumargala committed with gregkh Apr 29, 2008
    Use a resource_size_t instead of unsigned long since some arch's are
    capable of having ioremap deal with addresses greater than the size of a
    unsigned long.
    
    Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
    Cc: Tejun Heo <htejun@gmail.com>
    Cc: Jeff Garzik <jgarzik@pobox.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  5. @kaysievers @gregkh

    kobject: do not copy vargs, just pass them around

    kaysievers committed with gregkh Apr 30, 2008
    This prevents a few unneeded copies.
    
    Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  6. @gregkh

    sysfs: sysfs_update_group stub for CONFIG_SYSFS=n

    Randy Dunlap committed with gregkh Apr 30, 2008
    scsi_transport_spi uses sysfs_update_group() when CONFIG_SYSFS=n,
    so provide a stub for it.
    
    next-20080423/drivers/scsi/scsi_transport_spi.c:1467: error: implicit declaration of function 'sysfs_update_group'
    make[3]: *** [drivers/scsi/scsi_transport_spi.o] Error 1
    
    Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
    Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  7. @rpjday @gregkh

    DEBUGFS: Correct location of debugfs API documentation.

    rpjday committed with gregkh Apr 25, 2008
    Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  8. @gregkh

    driver core: warn about duplicate driver names on the same bus

    Stas Sergeev committed with gregkh Apr 26, 2008
    Currently an attempt to register multiple
    drivers with the same name causes the
    stack trace with some cryptic error message.
    The attached patch adds the necessary check
    and the clear error message.
    
    Signed-off-by: Stas Sergeev <stsp@aknet.ru>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  9. @htejun @gregkh

    klist: implement klist_add_{after|before}()

    htejun committed with gregkh Apr 22, 2008
    Add klist_add_after() and klist_add_before() which puts a new node
    after and before an existing node, respectively.  This is useful for
    callers which need to keep klist ordered.  Note that synchronizing
    between simultaneous additions for ordering is the caller's
    responsibility.
    
    Signed-off-by: Tejun Heo <htejun@gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  10. @htejun @gregkh

    klist: implement KLIST_INIT() and DEFINE_KLIST()

    htejun committed with gregkh Apr 26, 2008
    klist is missing static initializers and definition helper.  Add them.
    
    Signed-off-by: Tejun Heo <htejun@gmail.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  11. @gregkh

    sysfs: Disallow truncation of files in sysfs

    Ben Hutchings committed with gregkh Apr 28, 2008
    sysfs allows attribute files to be truncated, e.g. using ftruncate(), with the
    expected effect on their inode.   For most attributes, this doesn't change the
    "real" size of the file i.e. how much can be read from it.  However, the
    parameter validation for reading and writing binary attribute files is based
    on the inode size and not the size specified in the file's bin_attribute, so it
    can be broken by this. For example, if we try using dd to write to such a file:
    
    # pwd
    /sys/bus/pci/devices/0000:08:00.0
    # ls -l config
    -rw-r--r--  1 root root 4096 Feb  1 17:35 config
    # dd if=/dev/zero of=config bs=4 count=1
    1+0 records in
    1+0 records out
    # ls -l config
    -rw-r--r--  1 root root 0 Feb  1 17:50 config
    # dd if=/dev/zero of=config bs=4 count=1 seek=128
    dd: writing `config': No space left on device
    1+0 records in
    0+0 records out
    
    Also, after truncation to 0, parameter validation for read and write is
    disabled.  Most bin_attribute read and write methods also validate the size and
    offset, but for some this will allow out-of-range access.  This may be a
    security issue, though access to such files is often limited to root.  In any
    case, the validation should remain for safety's sake!)
    
    This was previously reported in Bugzilla as bug 9867.
    
    sysfs should ignore size changes or else refuse them (by returning -EINVAL).
    This patch makes it ignore them.
    
    Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  12. @torvalds

    Fix ACPI vs proc_create_data() mismerge

    Alexey Dobriyan committed with torvalds May 1, 2008
    acpi_device_dir() is NULL until all files are createst, so everyting is
    created in straight in /proc/ and creation code warns.
    
    Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  13. @xemul @davem330

    ipv6: Compilation fix for compat MCAST_MSFILTER sockopts.

    xemul committed with davem330 Apr 30, 2008
    The last hunk from the commit dae5029 (ipv4/ipv6 compat: Fix SSM
    applications on 64bit kernels.) escaped from the compat_ipv6_setsockopt
    to the ipv6_getsockopt (I guess due to patch smartness wrt searching
    for context) thus breaking 32-bit and 64-bit-without-compat compilation.
    
    Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
    Acked-by: David L Stevens <dlstevens@us.ibm.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
  14. x86: numaq fix

    Ingo Molnar committed Apr 30, 2008
    do not override the existing pci-y rule when adding visws or
    numaq rules.
    
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
  15. x86: 8K stacks by default

    Ingo Molnar committed Apr 30, 2008
    Switch back to 8K stacks as the safer default. Out-of-memory
    situations are less problematic than silent and hard to debug
    stack corruption.
    
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
  16. @dilinger

    x86: ioremap ram check fix

    dilinger committed with Ingo Molnar Apr 30, 2008
    bdd3cee (x86: ioremap(), extend check
    to all RAM pages) breaks OLPC's ioremap call.  The ioremap that OLPC uses is:
    
            romsig = ioremap(0xffffffc0, 16);
    
    The commit that breaks it is basically:
    
    -       for (pfn = phys_addr >> PAGE_SHIFT; pfn < max_pfn_mapped &&
    -            (pfn << PAGE_SHIFT) < last_addr; pfn++) {
    +       for (pfn = phys_addr >> PAGE_SHIFT;
    +                               (pfn << PAGE_SHIFT) < last_addr; pfn++) {
    +
    
    Previously, the 'pfn < max_pfn_mapped' check would've caused us to not
    enter the loop.  Removing that check means we loop infinitely.  The
    reason for that is because pfn is 0xfffff, and last_addr is 0xffffffcf.
    The remaining check that is used to exit the loop is not sufficient;
    when pfn<<PAGE_SHIFT is 0xfffff000, that is less than 0xffffffcf; when
    we increment pfn and it overflows (pfn == 0x100000), pfn<<PAGE_SHIFT
    ends up being 0.  That, of course, is less than last_addr.  In effect,
    pfn<<PAGE_SHIFT is never lower than last_addr.
    
    The simple fix for this is to limit the last_addr check to the PAGE_MASK;
    a patch is below.
    
    Signed-off-by: Andres Salomon <dilinger@debian.org>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
  17. x86: fix HT cpu booting on 32-bit

    Hugh Dickins committed with Ingo Molnar Apr 30, 2008
    Since recent smpboot 32/64-bit merge, my dual Xeon with HT has been
    booting only 2 of its 4 cpus (when running an i386 kernel; but x86_64
    is okay).  J.A. Magallón reports the same.
    
     native_cpu_up: bad cpu 2
     native_cpu_up: bad cpu 3
    
    The mach-default cpu_present_to_apicid() was just returning cpu number
    (2, 3) instead of apicid (6, 7): looks like we now need the x86_64 code
    even for the i386 case.
    
    Comparing with other versions of cpu_present_to_apicid(), it seems a
    good idea to include an NR_CPUS test too, since cpu_present() doesn't
    include that; but that wasn't a problem here, and may no problem at all.
    
    Prior to that smpboot merge, my Xeon booted the two HT siblings on one
    physical first, then the two siblings on the other physical after - when
    i386, but alternated them when x86_64.  Since the merge, the x86_64
    sequence is unchanged, but the i386 sequence is now like x86_64.
    
    I prefer this consistency, and I prefer the new sequence: booting with
    maxcpus=2 then uses the independent physicals without HT sharing.
    
    Signed-off-by: Hugh Dickins <hugh@veritas.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
  18. x86: optimize inlining off

    Ingo Molnar committed Apr 30, 2008
    default to inline optimizing off.
    
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
  19. x86: CONFIG_X86_ELAN fix

    Ingo Molnar committed Apr 30, 2008
    move the X86_CPU section out of the !X86_ELAN branch.
    
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
  20. x86: Kconfig fix

    Ingo Molnar committed Apr 30, 2008
    Andrew noticed that OPTIMIZE_INLINING appeared in the toplevel
    menu - fix it.
    
    Reported-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
  21. x86 PAT: fix performance drop for glx, use UC minus for ioremap(), io…

    Suresh Siddha committed with Ingo Molnar Apr 25, 2008
    …remap_nocache() and pci_mmap_page_range()
    
    Use UC_MINUS for ioremap(), ioremap_nocache() instead of strong UC.
    Once all the X drivers move to ioremap_wc(), we can go back to strong
    UC semantics for ioremap() and ioremap_nocache().
    
    To avoid attribute aliasing issues, pci_mmap_page_range() will also
    use UC_MINUS for default non write-combining mapping request.
    
    Next steps:
    	a) change all the video drivers using ioremap() or ioremap_nocache()
    	   and adding WC MTTR using mttr_add() to ioremap_wc()
    
    	b) for strict usage, we can go back to strong uc semantics
    	   for ioremap() and ioremap_nocache() after some grace period for
    	   completing step-a.
    
    	c) user level X server needs to use the appropriate method for setting
    	   up WC mapping (like using resourceX_wc sysfs file instead of
    	   adding MTRR for WC and using /dev/mem or resourceX under /sys)
    
    Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
    Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
  22. x86: use defconfigs from x86/configs/*

    Sam Ravnborg committed with Ingo Molnar Apr 29, 2008
    Daniel Drake <dsd@gentoo.org> reported:
    
    In 2.6.23, if you unpacked a kernel source tarball and then
    ran "make menuconfig" you'd be presented with this message:
        # using defaults found in arch/i386/defconfig
    
    and the default options would be set.
    
    The same thing in 2.6.24 does not give you any "using defaults" message, and
    the default config options within menuconfig are rather blank (e.g. no PCI
    support). You can work around this by explicitly running "make defconfig"
    before menuconfig, but it would be nice to have the behaviour the way it was
    for 2.6.23 (and the way it still is for other archs).
    
    Fixed by adding a x86 specific defconfig list to Kconfig.
    
    Fixes: http://bugzilla.kernel.org/show_bug.cgi?id=10470
    Tested-by: dsd@gentoo.org
    Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
  23. @Alan-Cox

    toshiba: use ioremap_cached

    Alan-Cox committed with Ingo Molnar Apr 29, 2008
    The switch of ioremap to default to uncached doesn't break this driver
    but it does needlessly slow it down as BIOS space is cachable and this
    driver is quite happy scanning cached ROM space.
    
    Signed-off-by: Alan Cox <alan@redhat.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
  24. revert: "x86: ioremap(), extend check to all RAM pages"

    Ingo Molnar committed Apr 29, 2008
    Vegard Nossum reported a large (150 seconds) boot delay during bootup,
    and bisected it to "x86: ioremap(), extend check to all RAM pages"
    (commit bdd3cee). Revert this commit for now.
    
    Bisected-by: Vegard Nossum <vegard.nossum@gmail.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
  25. @jsgf

    x86: don't bother printing compat vdso address

    jsgf committed with Ingo Molnar Apr 28, 2008
    The kernel prints the compat vdso address regardless of whether compat
    vdso mode is enabled or not, which is confusing.  Given that this
    isn't very interesting information anyway, just remove the printk.
    
    Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
    Cc: Gerhard Mack <gmack@innerfire.net>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
  26. fix: x86: support for new UV apic

    Andi Kleen committed with Ingo Molnar Apr 25, 2008
    Don't warn in read_apic_id() when preemptible but only one CPU online.
    
    Signed-off-by: Andi Kleen <andi@firstfloor.org>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
  27. @vegard

    x86: fix early-BUG message

    vegard committed with Ingo Molnar Apr 25, 2008
    The .asciz directive takes any number of strings, but each one is zero-
    terminated, and string pasting is not done as in C. That results in only the
    first line being output.
    
    Replace .asciz with multiple .ascii directives and terminate with .asciz.
    
    Signed-off-by: Vegard Nossum <vegard.nossum@gmail.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
  28. @dmvo

    x86: iommu_sac_force can become static

    dmvo committed with Ingo Molnar Apr 28, 2008
    The iommu_sac_force variable is needlessly defined global,
    and this patch makes it static. Additionally, this variable
    needs not be explicitly initialized.
    
    Signed-off-by: Dmitri Vorobiev <dmitri.vorobiev@gmail.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
  29. @dmvo

    x86: add proper header for reboot_force

    dmvo committed with Ingo Molnar Apr 28, 2008
    This patch fixes one sparse warning by including the appropriate
    header for the reboot_force symbol.
    
    Signed-off-by: Dmitri Vorobiev <dmitri.vorobiev@gmail.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Something went wrong with that request. Please try again.