01 Apr, 2009

18 commits


31 Mar, 2009

22 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
    wireless: remove duplicated .ndo_set_mac_address
    netfilter: xtables: fix IPv6 dependency in the cluster match
    tg3: Add GRO support.
    niu: Add GRO support.
    ucc_geth: Fix use-after-of_node_put() in ucc_geth_probe().
    gianfar: Fix use-after-of_node_put() in gfar_of_init().
    kernel: remove HIPQUAD()
    netpoll: store local and remote ip in net-endian
    netfilter: fix endian bug in conntrack printks
    dmascc: fix incomplete conversion to network_device_ops
    gso: Fix support for linear packets
    skbuff.h: fix missing kernel-doc
    ni5010: convert to net_device_ops

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
    sparc64: Fix reset hangs on Niagara systems.
    cpumask: use mm_cpumask() wrapper: sparc
    cpumask: remove dangerous CPU_MASK_ALL_PTR, &CPU_MASK_ALL.: sparc
    cpumask: remove the now-obsoleted pcibus_to_cpumask(): sparc
    cpumask: remove cpu_coregroup_map: sparc
    cpumask: prepare for iterators to only go to nr_cpu_ids/nr_cpumask_bits.: sparc
    cpumask: prepare for iterators to only go to nr_cpu_ids/nr_cpumask_bits.: sparc64
    cpumask: Use accessors code.: sparc64
    cpumask: Use accessors code: sparc
    cpumask: arch_send_call_function_ipi_mask: sparc
    cpumask: Use smp_call_function_many(): sparc64

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-cpumask:
    oprofile: Thou shalt not call __exit functions from __init functions
    cpumask: remove the now-obsoleted pcibus_to_cpumask(): generic
    cpumask: remove cpumask_t from core
    cpumask: convert rcutorture.c
    cpumask: use new cpumask_ functions in core code.
    cpumask: remove references to struct irqaction's mask field.
    cpumask: use mm_cpumask() wrapper: kernel/fork.c
    cpumask: use set_cpu_active in init/main.c
    cpumask: remove node_to_first_cpu
    cpumask: fix seq_bitmap_*() functions.
    cpumask: remove dangerous CPU_MASK_ALL_PTR, &CPU_MASK_ALL

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-lguest-and-virtio:
    lguest: barrier me harder
    lguest: use bool instead of int
    lguest: use KVM hypercalls
    lguest: wire up pte_update/pte_update_defer
    lguest: fix spurious BUG_ON() on invalid guest stack.
    virtio: more neatening of virtio_ring macros.
    virtio: fix BAD_RING, START_US and END_USE macros

    Linus Torvalds
     
  • * 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6:
    hwmon: (fschmd) Add support for the FSC Hades IC
    hwmon: (fschmd) Add support for the FSC Syleus IC
    i2c-i801: Instantiate FSC hardware montioring chips
    dmi: Let dmi_walk() users pass private data
    hwmon: Define a standard interface for chassis intrusion detection
    Move the pcf8591 driver to hwmon
    hwmon: (w83627ehf) Only expose in6 or temp3 on the W83667HG
    hwmon: (w83627ehf) Add support for W83667HG
    hwmon: (w83627ehf) Invert fan pin variables logic
    hwmon: (hdaps) Fix Thinkpad X41 axis inversion
    hwmon: (hdaps) Allow inversion of separate axis
    hwmon: (ds1621) Clean up documentation
    hwmon: (ds1621) Avoid unneeded register access
    hwmon: (ds1621) Clean up register access
    hwmon: (ds1621) Reorder code statements

    Linus Torvalds
     
  • * 'locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (33 commits)
    lockdep: fix deadlock in lockdep_trace_alloc
    lockdep: annotate reclaim context (__GFP_NOFS), fix SLOB
    lockdep: annotate reclaim context (__GFP_NOFS), fix
    lockdep: build fix for !PROVE_LOCKING
    lockstat: warn about disabled lock debugging
    lockdep: use stringify.h
    lockdep: simplify check_prev_add_irq()
    lockdep: get_user_chars() redo
    lockdep: simplify get_user_chars()
    lockdep: add comments to mark_lock_irq()
    lockdep: remove macro usage from mark_held_locks()
    lockdep: fully reduce mark_lock_irq()
    lockdep: merge the !_READ mark_lock_irq() helpers
    lockdep: merge the _READ mark_lock_irq() helpers
    lockdep: simplify mark_lock_irq() helpers #3
    lockdep: further simplify mark_lock_irq() helpers
    lockdep: simplify the mark_lock_irq() helpers
    lockdep: split up mark_lock_irq()
    lockdep: generate usage strings
    lockdep: generate the state bit definitions
    ...

    Linus Torvalds
     
  • * 'proc-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/adobriyan/proc:
    Revert "proc: revert /proc/uptime to ->read_proc hook"
    proc 2/2: remove struct proc_dir_entry::owner
    proc 1/2: do PDE usecounting even for ->read_proc, ->write_proc
    proc: fix sparse warnings in pagemap_read()
    proc: move fs/proc/inode-alloc.txt comment into a source file

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6:
    PCI PM: Make pci_prepare_to_sleep() disable wake-up if needed
    radeonfb: Use __pci_complete_power_transition()
    PCI PM: Introduce __pci_[start|complete]_power_transition() (rev. 2)
    PCI PM: Restore config spaces of all devices during early resume
    PCI PM: Make pci_set_power_state() handle devices with no PM support
    PCI PM: Put devices into low power states during late suspend (rev. 2)
    PCI PM: Move pci_restore_standard_config to pci-driver.c
    PCI PM: Use pci_set_power_state during early resume
    PCI PM: Consistently use variable name "error" for pm call return values
    kexec: Change kexec jump code ordering
    PM: Change hibernation code ordering
    PM: Change suspend code ordering
    PM: Rework handling of interrupts during suspend-resume
    PM: Introduce functions for suspending and resuming device interrupts

    Linus Torvalds
     
  • Fix printk format warnings in dma-debug:

    lib/dma-debug.c:645: warning: format '%016llx' expects type 'long long unsigned int', but argument 6 has type 'dma_addr_t'
    lib/dma-debug.c:662: warning: format '%016llx' expects type 'long long unsigned int', but argument 6 has type 'dma_addr_t'
    lib/dma-debug.c:676: warning: format '%016llx' expects type 'long long unsigned int', but argument 6 has type 'dma_addr_t'
    lib/dma-debug.c:686: warning: format '%016llx' expects type 'long long unsigned int', but argument 6 has type 'dma_addr_t'

    Signed-off-by: Randy Dunlap
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • This patch ifdefs xattr_create when xattrs aren't enabled.

    Signed-off-by: Jeff Mahoney
    Signed-off-by: Linus Torvalds

    Jeff Mahoney
     
  • Fix this build error when REISERFS_FS_POSIX_ACL is not set:

    fs/reiserfs/inode.c: In function 'reiserfs_new_inode':
    fs/reiserfs/inode.c:1919: warning: passing argument 1 of 'reiserfs_inherit_default_acl' from incompatible pointer type
    fs/reiserfs/inode.c:1919: warning: passing argument 2 of 'reiserfs_inherit_default_acl' from incompatible pointer type
    fs/reiserfs/inode.c:1919: warning: passing argument 3 of 'reiserfs_inherit_default_acl' from incompatible pointer type
    fs/reiserfs/inode.c:1919: error: too many arguments to function 'reiserfs_inherit_default_acl'

    due to a missing transaction-handle argument in the non-acl
    compatibility function.

    Signed-off-by: Alexander Beregalov
    Acked-by: Jeff Mahoney
    Signed-off-by: Linus Torvalds

    Alexander Beregalov
     
  • Heiko reported that we grab the graph lock with irqs enabled.

    Fix this by providng the same wrapper as all other lockdep entry
    functions have.

    Reported-by: Heiko Carstens
    Signed-off-by: Peter Zijlstra
    Cc: Nick Piggin
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Peter Zijlstra
     
  • This reverts commit 6c87df37dcb9c6c33923707fa5191e0a65874d60.

    proc files implemented through seq_file do pread(2) now.

    Signed-off-by: Alexey Dobriyan

    Alexey Dobriyan
     
  • Setting ->owner as done currently (pde->owner = THIS_MODULE) is racy
    as correctly noted at bug #12454. Someone can lookup entry with NULL
    ->owner, thus not pinning enything, and release it later resulting
    in module refcount underflow.

    We can keep ->owner and supply it at registration time like ->proc_fops
    and ->data.

    But this leaves ->owner as easy-manipulative field (just one C assignment)
    and somebody will forget to unpin previous/pin current module when
    switching ->owner. ->proc_fops is declared as "const" which should give
    some thoughts.

    ->read_proc/->write_proc were just fixed to not require ->owner for
    protection.

    rmmod'ed directories will be empty and return "." and ".." -- no harm.
    And directories with tricky enough readdir and lookup shouldn't be modular.
    We definitely don't want such modular code.

    Removing ->owner will also make PDE smaller.

    So, let's nuke it.

    Kudos to Jeff Layton for reminding about this, let's say, oversight.

    http://bugzilla.kernel.org/show_bug.cgi?id=12454

    Signed-off-by: Alexey Dobriyan

    Alexey Dobriyan
     
  • struct proc_dir_entry::owner is going to be removed. Now it's only necessary
    to protect PDEs which are using ->read_proc, ->write_proc hooks.

    However, ->owner assignments are racy and make it very easy for someone to switch
    ->owner on live PDE (as some subsystems do) without fixing refcounts and so on.

    http://bugzilla.kernel.org/show_bug.cgi?id=12454

    So, ->owner is on death row.

    Proxy file operations exist already (proc_file_operations), just bump usecount
    when necessary.

    Signed-off-by: Alexey Dobriyan

    Alexey Dobriyan
     
  • fs/proc/task_mmu.c:696:12: warning: cast removes address space of expression
    fs/proc/task_mmu.c:696:9: warning: incorrect type in assignment (different address spaces)
    fs/proc/task_mmu.c:696:9: expected unsigned long long [noderef] [usertype] *out
    fs/proc/task_mmu.c:696:9: got unsigned long long [usertype] *
    fs/proc/task_mmu.c:697:12: warning: cast removes address space of expression
    fs/proc/task_mmu.c:697:9: warning: incorrect type in assignment (different address spaces)
    fs/proc/task_mmu.c:697:9: expected unsigned long long [noderef] [usertype] *end
    fs/proc/task_mmu.c:697:9: got unsigned long long [usertype] *
    fs/proc/task_mmu.c:723:12: warning: cast removes address space of expression
    fs/proc/task_mmu.c:723:26: error: subtraction of different types can't work (different address spaces)
    fs/proc/task_mmu.c:725:24: error: subtraction of different types can't work (different address spaces)

    Signed-off-by: Milind Arun Choudhary
    Signed-off-by: Andrew Morton
    Signed-off-by: Alexey Dobriyan

    Milind Arun Choudhary
     
  • so that people will realize that it exists and can update it as needed.

    Signed-off-by: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Alexey Dobriyan

    Randy Dunlap
     
  • Impact: build fix

    fix typo in mm/slob.c:

    mm/slob.c:469: error: ‘flags’ undeclared (first use in this function)
    mm/slob.c:469: error: (Each undeclared identifier is reported only once
    mm/slob.c:469: error: for each function it appears in.)

    Cc: Nick Piggin
    Cc: Peter Zijlstra
    LKML-Reference:
    Signed-off-by: Ingo Molnar

    Ingo Molnar
     
  • * 'drm-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (53 commits)
    drm: detect hdmi monitor by hdmi identifier (v3)
    drm: drm_fops.c unlock missing on error path
    drm: reorder struct drm_ioctl_desc to save space on 64 bit builds
    radeon: add some new pci ids
    drm: read EDID extensions from monitor
    drm: Use a little stash on the stack to avoid kmalloc in most DRM ioctls.
    drm/radeon: add regs required for occlusion queries support
    drm/i915: check the return value from the copy from user
    drm/radeon: fix logic in r600_page_table_init() to match ati_gart
    drm/radeon: r600 ptes are 64-bit, cleanup cleanup function.
    drm/radeon: don't call irq changes on r600 suspend/resume
    drm/radeon: fix r600 writeback across suspend/resume
    drm/radeon: fix r600 writeback setup.
    drm: fix warnings about new mappings in info code.
    drm/radeon: NULL noise: drivers/gpu/drm/radeon/radeon_*.c
    drm/radeon: fix r600 pci mapping calls.
    drm/radeon: r6xx/r7xx: fix possible oops in r600_page_table_cleanup()
    radeon: call the correct idle function, logic got inverted.
    drm/radeon: RS600: fix interrupt handling
    drm/r600: fix rptr address along lines of previous fixes to radeon.
    ...

    Linus Torvalds
     
  • * 'iommu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (60 commits)
    dma-debug: make memory range checks more consistent
    dma-debug: warn of unmapping an invalid dma address
    dma-debug: fix dma_debug_add_bus() definition for !CONFIG_DMA_API_DEBUG
    dma-debug/x86: register pci bus for dma-debug leak detection
    dma-debug: add a check dma memory leaks
    dma-debug: add checks for kernel text and rodata
    dma-debug: print stacktrace of mapping path on unmap error
    dma-debug: Documentation update
    dma-debug: x86 architecture bindings
    dma-debug: add function to dump dma mappings
    dma-debug: add checks for sync_single_sg_*
    dma-debug: add checks for sync_single_range_*
    dma-debug: add checks for sync_single_*
    dma-debug: add checking for [alloc|free]_coherent
    dma-debug: add add checking for map/unmap_sg
    dma-debug: add checking for map/unmap_page/single
    dma-debug: add core checking functions
    dma-debug: add debugfs interface
    dma-debug: add kernel command line parameters
    dma-debug: add initialization code
    ...

    Fix trivial conflicts due to whitespace changes in arch/x86/kernel/pci-nommu.c

    Linus Torvalds
     
  • If the device is not supposed to wake up the system, ie. when
    device_may_wakeup(&dev->dev) returns 'false', pci_prepare_to_sleep()
    should pass 'false' to pci_enable_wake() so that it calls the
    platform to disable the wake-up capability of the device.

    Signed-off-by: Rafael J. Wysocki
    Acked-by: Jesse Barnes

    Rafael J. Wysocki
     
  • Use __pci_complete_power_transition() to finalize the transition into
    D2 after programming the PMCSR of the device directly.

    Signed-off-by: Rafael J. Wysocki
    Acked-by: Jesse Barnes

    Rafael J. Wysocki