23 Mar, 2011

12 commits

  • Older version of protocol don't support tsyncfs operation.
    So for them force a O_SYNC flag on the server

    Signed-off-by: Aneesh Kumar K.V
    Signed-off-by: Venkateswararao Jujjuri
    Signed-off-by: Eric Van Hensbergen

    Aneesh Kumar K.V
     
  • convert vmtruncate usage to truncate_setsize. We also writeback
    all dirty pages before doing 9p operations and on success call truncate_setsize.
    This ensure that we continue sanely on failed truncate on the server. The
    disadvantage is that we are now going to write back the content that get
    thrown away later as a part of truncate.

    Signed-off-by: Aneesh Kumar K.V
    Signed-off-by: Venkateswararao Jujjuri
    Signed-off-by: Eric Van Hensbergen

    Aneesh Kumar K.V
     
  • Signed-off-by: Aneesh Kumar K.V
    Signed-off-by: Venkateswararao Jujjuri
    Signed-off-by: Eric Van Hensbergen

    Aneesh Kumar K.V
     
  • Without this we can cause reclaim allocation in writepage.

    [ 3433.448430] =================================
    [ 3433.449117] [ INFO: inconsistent lock state ]
    [ 3433.449117] 2.6.38-rc5+ #84
    [ 3433.449117] ---------------------------------
    [ 3433.449117] inconsistent {RECLAIM_FS-ON-W} -> {IN-RECLAIM_FS-R} usage.
    [ 3433.449117] kswapd0/505 [HC0[0]:SC0[0]:HE1:SE1] takes:
    [ 3433.449117] (iprune_sem){+++++-}, at: [] shrink_icache_memory+0x45/0x2b1
    [ 3433.449117] {RECLAIM_FS-ON-W} state was registered at:
    [ 3433.449117] [] mark_held_locks+0x52/0x70
    [ 3433.449117] [] lockdep_trace_alloc+0x85/0x9f
    [ 3433.449117] [] slab_pre_alloc_hook+0x18/0x3c
    [ 3433.449117] [] kmem_cache_alloc+0x23/0xa2
    [ 3433.449117] [] idr_pre_get+0x2d/0x6f
    [ 3433.449117] [] p9_idpool_get+0x30/0xae
    [ 3433.449117] [] p9_client_rpc+0xd7/0x9b0
    [ 3433.449117] [] p9_client_clunk+0x88/0xdb
    [ 3433.449117] [] v9fs_evict_inode+0x3c/0x48
    [ 3433.449117] [] evict+0x1f/0x87
    [ 3433.449117] [] dispose_list+0x47/0xe3
    [ 3433.449117] [] evict_inodes+0x138/0x14f
    [ 3433.449117] [] generic_shutdown_super+0x57/0xe8
    [ 3433.449117] [] kill_anon_super+0x11/0x50
    [ 3433.449117] [] v9fs_kill_super+0x49/0xab
    [ 3433.449117] [] deactivate_locked_super+0x21/0x46
    [ 3433.449117] [] deactivate_super+0x40/0x44
    [ 3433.449117] [] mntput_no_expire+0x100/0x109
    [ 3433.449117] [] sys_umount+0x2f1/0x31c
    [ 3433.449117] [] system_call_fastpath+0x16/0x1b
    [ 3433.449117] irq event stamp: 192941
    [ 3433.449117] hardirqs last enabled at (192941): [] _raw_spin_unlock_irq+0x2b/0x30
    [ 3433.449117] hardirqs last disabled at (192940): [] shrink_inactive_list+0x290/0x2f5
    [ 3433.449117] softirqs last enabled at (188470): [] __do_softirq+0x133/0x152
    [ 3433.449117] softirqs last disabled at (188455): [] call_softirq+0x1c/0x28
    [ 3433.449117]
    [ 3433.449117] other info that might help us debug this:
    [ 3433.449117] 1 lock held by kswapd0/505:
    [ 3433.449117] #0: (shrinker_rwsem){++++..}, at: [] shrink_slab+0x38/0x15f
    [ 3433.449117]
    [ 3433.449117] stack backtrace:
    [ 3433.449117] Pid: 505, comm: kswapd0 Not tainted 2.6.38-rc5+ #84
    [ 3433.449117] Call Trace:
    [ 3433.449117] [] ? valid_state+0x17e/0x191
    [ 3433.449117] [] ? save_stack_trace+0x28/0x45
    [ 3433.449117] [] ? check_usage_forwards+0x0/0x87
    [ 3433.449117] [] ? mark_lock+0x113/0x22c
    [ 3433.449117] [] ? __lock_acquire+0x37a/0xcf7
    [ 3433.449117] [] ? mark_lock+0x2d/0x22c
    [ 3433.449117] [] ? __lock_acquire+0x392/0xcf7
    [ 3433.449117] [] ? determine_dirtyable_memory+0x15/0x28
    [ 3433.449117] [] ? lock_acquire+0x57/0x6d
    [ 3433.449117] [] ? shrink_icache_memory+0x45/0x2b1
    [ 3433.449117] [] ? down_read+0x47/0x5c
    [ 3433.449117] [] ? shrink_icache_memory+0x45/0x2b1
    [ 3433.449117] [] ? shrink_icache_memory+0x45/0x2b1
    [ 3433.449117] [] ? shrink_slab+0xdb/0x15f
    [ 3433.449117] [] ? kswapd+0x574/0x96a
    [ 3433.449117] [] ? kswapd+0x0/0x96a
    [ 3433.449117] [] ? kthread+0x7d/0x85
    [ 3433.449117] [] ? kernel_thread_helper+0x4/0x10
    [ 3433.449117] [] ? restore_args+0x0/0x30
    [ 3433.449117] [] ? kthread+0x0/0x85
    [ 3433.449117] [] ? kernel_thread_helper+0x0/0x10

    Signed-off-by: Aneesh Kumar K.V
    Signed-off-by: Venkateswararao Jujjuri
    Signed-off-by: Eric Van Hensbergen

    Aneesh Kumar K.V
     
  • When two process open the same file we can end up with both of them
    allocating the writeback_fid. Add a new mutex which can be used
    for synchronizing v9fs_inode member values.

    Signed-off-by: Aneesh Kumar K.V
    Signed-off-by: Venkateswararao Jujjuri
    Signed-off-by: Eric Van Hensbergen

    Aneesh Kumar K.V
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse:
    fuse: make fuse_dentry_revalidate() RCU aware
    fuse: make fuse_permission() RCU aware
    fuse: wakeup pollers on connection release/abort
    fuse: reduce size of struct fuse_request

    Linus Torvalds
     
  • …git/tip/linux-2.6-tip

    * 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    xen: update mask_rw_pte after kernel page tables init changes
    xen: set max_pfn_mapped to the last pfn mapped
    x86: Cleanup highmap after brk is concluded

    Fix up trivial onflict (added header file includes) in
    arch/x86/mm/init_64.c

    Linus Torvalds
     
  • * 'next-samsung' of git://git.fluff.org/bjdooks/linux:
    ARM: H1940/RX1950: Change default LED triggers
    ARM: S3C2442: RX1950: Add support for LED blinking
    ARM: S3C2442: RX1950: Retain LEDs state in suspend
    ARM: S3C2410: H1940: Fix lcd_power_set function
    ARM: S3C2410: H1940: Add battery support
    ARM: S3C2410: H1940: Use leds-gpio driver for LEDs managing
    ARM: S3C2410: H1940: Make h1940-bluetooth.c compile again
    ARM: S3C2410: H1940: Add keys device

    Linus Torvalds
     
  • * 'for-linus/2639/i2c-2' of git://git.fluff.org/bjdooks/linux:
    i2c-pxa2xx: Don't clear isr bits too early
    i2c-pxa2xx: Fix register offsets
    i2c-pxa2xx: pass of_node from platform driver to adapter and publish
    i2c-pxa2xx: check timeout correctly
    i2c-pxa2xx: add support for shared IRQ handler
    i2c-pxa2xx: Add PCI support for PXA I2C controller
    ARM: pxa2xx: reorganize I2C files
    i2c-pxa2xx: use dynamic register layout
    i2c-mxs: set controller to pio queue mode after reset
    i2c-eg20t: support new device OKI SEMICONDUCTOR ML7213 IOH
    i2c/busses: Add support for Diolan U2C-12 USB-I2C adapter

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6:
    slub: Dont define useless label in the !CONFIG_CMPXCHG_LOCAL case
    slab,rcu: don't assume the size of struct rcu_head
    slub,rcu: don't assume the size of struct rcu_head
    slub: automatically reserve bytes at the end of slab
    Lockless (and preemptless) fastpaths for slub
    slub: Get rid of slab_free_hook_irq()
    slub: min_partial needs to be in first cacheline
    slub: fix ksize() build error
    slub: fix kmemcheck calls to match ksize() hints
    Revert "slab: Fix missing DEBUG_SLAB last user"
    mm: Remove support for kmem_cache_name()

    Linus Torvalds
     
  • Ensure that we kill discard requests after logical block provisioning
    has been disabled in sysfs.

    Signed-off-by: Martin K. Petersen
    Reported-by: Geert Uytterhoeven
    Reviewed-by: Jeff Moyer
    Signed-off-by: Linus Torvalds

    Martin K. Petersen
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (33 commits)
    IPVS: Use global mutex in ip_vs_app.c
    ipvs: fix a typo in __ip_vs_control_init()
    veth: Fix the byte counters
    net ipv6: Fix duplicate /proc/sys/net/ipv6/neigh directory entries.
    macvlan: Fix use after free of struct macvlan_port.
    net: fix incorrect spelling in drop monitor protocol
    can: c_can: Do basic c_can configuration _before_ enabling the interrupts
    net/appletalk: fix atalk_release use after free
    ipx: fix ipx_release()
    snmp: SNMP_UPD_PO_STATS_BH() always called from softirq
    l2tp: fix possible oops on l2tp_eth module unload
    xfrm: Fix initialize repl field of struct xfrm_state
    netfilter: ipt_CLUSTERIP: fix buffer overflow
    netfilter: xtables: fix reentrancy
    netfilter: ipset: fix checking the type revision at create command
    netfilter: ipset: fix address ranges at hash:*port* types
    niu: Rename NIU parent platform device name to fix conflict.
    r8169: fix a bug in rtl8169_init_phy()
    bonding: fix a typo in a comment
    ftmac100: use resource_size()
    ...

    Linus Torvalds
     

22 Mar, 2011

28 commits

  • As part of the work to make IPVS network namespace aware
    __ip_vs_app_mutex was replaced by a per-namespace lock,
    ipvs->app_mutex. ipvs->app_key is also supplied for debugging purposes.

    Unfortunately this implementation results in ipvs->app_key residing
    in non-static storage which at the very least causes a lockdep warning.

    This patch takes the rather heavy-handed approach of reinstating
    __ip_vs_app_mutex which will cover access to the ipvs->list_head
    of all network namespaces.

    [ 12.610000] IPVS: Creating netns size=2456 id=0
    [ 12.630000] IPVS: Registered protocols (TCP, UDP, SCTP, AH, ESP)
    [ 12.640000] BUG: key ffff880003bbf1a0 not in .data!
    [ 12.640000] ------------[ cut here ]------------
    [ 12.640000] WARNING: at kernel/lockdep.c:2701 lockdep_init_map+0x37b/0x570()
    [ 12.640000] Hardware name: Bochs
    [ 12.640000] Pid: 1, comm: swapper Tainted: G W 2.6.38-kexec-06330-g69b7efe-dirty #122
    [ 12.650000] Call Trace:
    [ 12.650000] [] warn_slowpath_common+0x75/0xb0
    [ 12.650000] [] warn_slowpath_null+0x15/0x20
    [ 12.650000] [] lockdep_init_map+0x37b/0x570
    [ 12.650000] [] ? trace_hardirqs_on+0xd/0x10
    [ 12.650000] [] debug_mutex_init+0x38/0x50
    [ 12.650000] [] __mutex_init+0x5c/0x70
    [ 12.650000] [] __ip_vs_app_init+0x64/0x86
    [ 12.660000] [] ? ip_vs_init+0x0/0xff
    [ 12.660000] [] T.620+0x43/0x170
    [ 12.660000] [] ? register_pernet_subsys+0x1a/0x40
    [ 12.660000] [] ? ip_vs_init+0x0/0xff
    [ 12.660000] [] ? ip_vs_init+0x0/0xff
    [ 12.660000] [] register_pernet_operations+0x57/0xb0
    [ 12.660000] [] ? ip_vs_init+0x0/0xff
    [ 12.670000] [] register_pernet_subsys+0x29/0x40
    [ 12.670000] [] ip_vs_app_init+0x10/0x12
    [ 12.670000] [] ip_vs_init+0x4c/0xff
    [ 12.670000] [] do_one_initcall+0x7a/0x12e
    [ 12.670000] [] kernel_init+0x13e/0x1c2
    [ 12.670000] [] kernel_thread_helper+0x4/0x10
    [ 12.670000] [] ? restore_args+0x0/0x30
    [ 12.680000] [] ? kernel_init+0x0/0x1c2
    [ 12.680000] [] ? kernel_thread_helper+0x0/0x1global0

    Signed-off-by: Simon Horman
    Cc: Ingo Molnar
    Cc: Eric Dumazet
    Cc: Julian Anastasov
    Cc: Hans Schillstrom
    Signed-off-by: David S. Miller

    Simon Horman
     
  • Reported-by: Ingo Molnar
    Signed-off-by: Eric Dumazet
    Cc: Simon Horman
    Cc: Julian Anastasov
    Acked-by: Simon Horman
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • Commit 44540960 "veth: move loopback logic to common location" introduced
    a bug in the packet counters. I don't understand why that happened as it
    is not explained in the comments and the mut check in dev_forward_skb
    retains the assumption that skb->len is the total length of the packet.

    I just measured this emperically by setting up a veth pair between two
    noop network namespaces setting and attempting a telnet connection between
    the two. I saw three packets in each direction and the byte counters were
    exactly 14*3 = 42 bytes high in each direction. I got the actual
    packet lengths with tcpdump.

    So remove the extra ETH_HLEN from the veth byte count totals.

    Signed-off-by: Eric W. Biederman
    Signed-off-by: David S. Miller

    Eric W. Biederman
     
  • When I was fixing issues with unregisgtering tables under /proc/sys/net/ipv6/neigh
    by adding a mount point it appears I missed a critical ordering issue, in the
    ipv6 initialization. I had not realized that ipv6_sysctl_register is called
    at the very end of the ipv6 initialization and in particular after we call
    neigh_sysctl_register from ndisc_init.

    "neigh" needs to be initialized in ipv6_static_sysctl_register which is
    the first ipv6 table to initialized, and definitely before ndisc_init.
    This removes the weirdness of duplicate tables while still providing a
    "neigh" mount point which prevents races in sysctl unregistering.

    This was initially reported at https://bugzilla.kernel.org/show_bug.cgi?id=31232
    Reported-by: sunkan@zappa.cx
    Signed-off-by: Eric W. Biederman
    Signed-off-by: David S. Miller

    Eric W. Biederman
     
  • When the macvlan driver was extended to call unregisgter_netdevice_queue
    in 23289a37e2b127dfc4de1313fba15bb4c9f0cd5b, a use after free of struct
    macvlan_port was introduced. The code in dellink relied on unregister_netdevice
    actually unregistering the net device so it would be safe to free macvlan_port.

    Since unregister_netdevice_queue can just queue up the unregister instead of
    performing the unregiser immediately we free the macvlan_port too soon and
    then the code in macvlan_stop removes the macaddress for the set of macaddress
    to listen for and uses memory that has already been freed.

    To fix this add a reference count to track when it is safe to free the macvlan_port
    and move the call of macvlan_port_destroy into macvlan_uninit which is guaranteed
    to be called after the final macvlan_port_close.

    Signed-off-by: Eric W. Biederman
    Signed-off-by: David S. Miller

    Eric W. Biederman
     
  • It was pointed out to me recently that my spelling could be better :)

    Signed-off-by: Neil Horman
    Signed-off-by: David S. Miller

    Neil Horman
     
  • I ran into some trouble while testing the SocketCAN driver for the BOSCH
    C_CAN controller. The interface is not correctly initialized, if I put
    some CAN traffic on the line, _while_ the interface is being started
    (which means: the interface doesn't come up correcty, if there's some RX
    traffic while doing 'ifconfig can0 up').

    The current implementation enables the controller interrupts _before_
    doing the basic c_can configuration. I think, this should be done the
    other way round.

    The patch below fixes things for me.

    Signed-off-by: Jan Altenberg
    Acked-by: Kurt Van Dijck
    Acked-by: Wolfgang Grandegger
    Signed-off-by: David S. Miller

    Jan Altenberg
     
  • The BKL removal in appletalk introduced a use-after-free problem,
    where atalk_destroy_socket frees a sock, but we still release
    the socket lock on it.

    An easy fix is to take an extra reference on the sock and sock_put
    it when returning from atalk_release.

    Signed-off-by: Arnd Bergmann
    Signed-off-by: David S. Miller

    Arnd Bergmann
     
  • Commit b0d0d915d1d1a0 (remove the BKL) added a regression, because
    sock_put() can free memory while we are going to use it later.

    Fix is to delay sock_put() _after_ release_sock().

    Reported-by: Ingo Molnar
    Tested-by: Ingo Molnar
    Signed-off-by: Eric Dumazet
    Acked-by: Arnd Bergmann
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • We dont need to test if we run from softirq context, we definitely are.

    This saves few instructions in ip_rcv() & ip_rcv_finish()

    Signed-off-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • A struct used in the l2tp_eth driver for registering network namespace
    ops was incorrectly marked as __net_initdata, leading to oops when
    module unloaded.

    BUG: unable to handle kernel paging request at ffffffffa00ec098
    IP: [] ops_exit_list+0x7/0x4b
    PGD 142d067 PUD 1431063 PMD 195da8067 PTE 0
    Oops: 0000 [#1] SMP
    last sysfs file: /sys/module/l2tp_eth/refcnt
    Call Trace:
    [] ? unregister_pernet_operations+0x32/0x93
    [] ? unregister_pernet_device+0x2b/0x38
    [] ? sys_delete_module+0x1b8/0x222
    [] ? do_munmap+0x254/0x318
    [] ? page_fault+0x25/0x30
    [] ? system_call_fastpath+0x16/0x1b

    Signed-off-by: James Chapman
    Signed-off-by: David S. Miller

    James Chapman
     
  • Commit 'xfrm: Move IPsec replay detection functions to a separate file'
    (9fdc4883d92d20842c5acea77a4a21bb1574b495)
    introduce repl field to struct xfrm_state, and only initialize it
    under SA's netlink create path, the other path, such as pf_key,
    ipcomp/ipcomp6 etc, the repl field remaining uninitialize. So if
    the SA is created by pf_key, any input packet with SA's encryption
    algorithm will cause panic.

    int xfrm_input()
    {
    ...
    x->repl->advance(x, seq);
    ...
    }

    This patch fixed it by introduce new function __xfrm_init_state().

    Pid: 0, comm: swapper Not tainted 2.6.38-next+ #14 Bochs Bochs
    EIP: 0060:[] EFLAGS: 00010206 CPU: 0
    EIP is at xfrm_input+0x31c/0x4cc
    EAX: dd839c00 EBX: 00000084 ECX: 00000000 EDX: 01000000
    ESI: dd839c00 EDI: de3a0780 EBP: dec1de88 ESP: dec1de64
    DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
    Process swapper (pid: 0, ti=dec1c000 task=c09c0f20 task.ti=c0992000)
    Stack:
    00000000 00000000 00000002 c0ba27c0 00100000 01000000 de3a0798 c0ba27c0
    00000033 dec1de98 c0786848 00000000 de3a0780 dec1dea4 c0786868 00000000
    dec1debc c074ee56 e1da6b8c de3a0780 c074ed44 de3a07a8 dec1decc c074ef32
    Call Trace:
    [] xfrm4_rcv_encap+0x22/0x27
    [] xfrm4_rcv+0x1b/0x1d
    [] ip_local_deliver_finish+0x112/0x1b1
    [] ? ip_local_deliver_finish+0x0/0x1b1
    [] NF_HOOK.clone.1+0x3d/0x44
    [] ip_local_deliver+0x3e/0x44
    [] ? ip_local_deliver_finish+0x0/0x1b1
    [] ip_rcv_finish+0x30a/0x332
    [] ? ip_rcv_finish+0x0/0x332
    [] NF_HOOK.clone.1+0x3d/0x44
    [] ip_rcv+0x20b/0x247
    [] ? ip_rcv_finish+0x0/0x332
    [] __netif_receive_skb+0x373/0x399
    [] netif_receive_skb+0x4b/0x51
    [] cp_rx_poll+0x210/0x2c4 [8139cp]
    [] net_rx_action+0x9a/0x17d
    [] __do_softirq+0xa1/0x149
    [] ? __do_softirq+0x0/0x149

    Signed-off-by: Wei Yongjun
    Signed-off-by: David S. Miller

    Wei Yongjun
     
  • Change LED triggers to mimic WinMobile behavior:
    red blinking when battery is charging,
    orange solid when battery is charged.

    Signed-off-by: Vasily Khoruzhick
    Signed-off-by: Ben Dooks

    Vasily Khoruzhick
     
  • isr is passed later into i2c_pxa_irq_txempty and
    i2c_pxa_irq_rxfull and they may use some other bits
    than irq sources.

    Signed-off-by: Vasily Khoruzhick
    Signed-off-by: Ben Dooks

    Vasily Khoruzhick
     
  • …r-2639/i2c/i2c-imx' into for-linus/2639/i2c-2

    Ben Dooks
     
  • * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6:
    kbuild: Make DEBUG_SECTION_MISMATCH selectable, but not on by default
    genksyms: Regenerate lexer and parser
    genksyms: Track changes to enum constants
    genksyms: simplify usage of find_symbol()
    genksyms: Add helpers for building string lists
    genksyms: Simplify printing of symbol types
    genksyms: Simplify lexer
    genksyms: Do not paste the bison header file to lex.c
    modpost: fix trailing comma
    KBuild: silence "'scripts/unifdef' is up to date."
    kbuild: Add extra gcc checks
    kbuild: reenable section mismatch analysis
    unifdef: update to upstream version 2.5

    Linus Torvalds
     
  • This patch reduces the number of sequential pointer derefs in
    drivers/scsi/scsi_error.c

    This has been submitted a number of times over a couple of years. I
    believe this version adresses all comments it has gathered over time.
    Please apply or reject with a reason.

    The benefits are:

    - makes the code easier to read. Lots of sequential derefs of the same
    pointers is not easy on the eye.

    - theoretically at least, just dereferencing the pointers once can
    allow the compiler to generally slightly faster code, so in theory
    this could also be a micro speed optimization.

    - reduces size of object file (tiny effect: on x86-64, in at least one
    configuration, the text size decreased from 9439 bytes to 9400)

    - removes some pointless (mostly trailing) whitespace.

    Signed-off-by: Jesper Juhl
    Signed-off-by: Linus Torvalds

    Jesper Juhl
     
  • Remove incorrect Matrox G200eV support that was previously added by
    commit e3a1938805d2e81b27d3d348788644f3bad004f2

    A serious issue with the incorrect G200eV support that reproduces on the
    Matrox G200eV equipped IBM x3650 M2 is the total lack of text (login
    banner, login prompt, etc) on the console when X is not running and
    total lack of text on all of the virtual consoles after X is started.

    Any concerns that the incorrect code (upstream since October 2008) has
    been successfully used on non-IBM G200eV equipped system(s) appear to be
    unwarranted. In addition to the serious/non-intermittent nature of
    issues that have been spotted on IBM systems, complete removal of the
    incorrect code is clearly supported by the following Matrox (Yannick
    Heneault) provided input:
    "It impossible that this patch should have work on a system.
    The patch only declare the G200eV as a regular G200 which is
    not case. Many registers are different, including at least the
    PLL programming sequence. If the G200eV is programmed like a
    regular G200, it will not display anything."

    v1 - Initial patch that removed the incorrect code for _all_
    G200eV equipped systems.
    v2 - Darrick Wong provided patch that blacklisted the incorrect
    code on G200eV equipped IBM systems leaving it enabled on
    all G200eV equipped non-IBM systems.
    v3 - Same code changes included with v1 plus additional
    justification for complete removal of the incorrect code.

    Signed-off-by: Gary Hade
    Cc: Darrick J. Wong
    Cc: Krzysztof Helt
    Cc: Petr Vandrovec
    Cc: Andrew Morton
    Cc: Linus Torvalds
    Cc: Yannick Heneault
    Cc: Christian Toutant
    Signed-off-by: Linus Torvalds

    Gary Hade
     
  • * 'for-linus' of git://oss.sgi.com/xfs/xfs: (23 commits)
    xfs: don't name variables "panic"
    xfs: factor agf counter updates into a helper
    xfs: clean up the xfs_alloc_compute_aligned calling convention
    xfs: kill support/debug.[ch]
    xfs: Convert remaining cmn_err() callers to new API
    xfs: convert the quota debug prints to new API
    xfs: rename xfs_cmn_err_fsblock_zero()
    xfs: convert xfs_fs_cmn_err to new error logging API
    xfs: kill xfs_fs_mount_cmn_err() macro
    xfs: kill xfs_fs_repair_cmn_err() macro
    xfs: convert xfs_cmn_err to xfs_alert_tag
    xfs: Convert xlog_warn to new logging interface
    xfs: Convert linux-2.6/ files to new logging interface
    xfs: introduce new logging API.
    xfs: zero proper structure size for geometry calls
    xfs: enable delaylog by default
    xfs: more sensible inode refcounting for ialloc
    xfs: stop using xfs_trans_iget in the RT allocator
    xfs: check if device support discard in xfs_ioc_trim()
    xfs: prevent leaking uninitialized stack memory in FSGEOMETRY_V1
    ...

    Linus Torvalds
     
  • Userland should be able to trust the pid and uid of the sender of a
    signal if the si_code is SI_TKILL.

    Unfortunately, the kernel has historically allowed sigqueueinfo() to
    send any si_code at all (as long as it was negative - to distinguish it
    from kernel-generated signals like SIGILL etc), so it could spoof a
    SI_TKILL with incorrect siginfo values.

    Happily, it looks like glibc has always set si_code to the appropriate
    SI_QUEUE, so there are probably no actual user code that ever uses
    anything but the appropriate SI_QUEUE flag.

    So just tighten the check for si_code (we used to allow any negative
    value), and add a (one-time) warning in case there are binaries out
    there that might depend on using other si_code values.

    Signed-off-by: Julien Tinnes
    Acked-by: Oleg Nesterov
    Signed-off-by: Linus Torvalds

    Julien Tinnes
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-ktest:
    ktest: Add STOP_TEST_AFTER to stop the test after a period of time
    ktest: Monitor kernel while running of user tests
    ktest: Fix bug where the test would not end after failure
    ktest: Add BISECT_FILES to run git bisect on paths
    ktest: Add BISECT_SKIP
    ktest: Add manual bisect
    ktest: Handle kernels before make oldnoconfig
    ktest: Start failure timeout on panic too
    ktest: Print logfile name on failure

    Linus Torvalds
     
  • * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
    hwmon: (ads1015) Make gain and datarate configurable
    hwmon: (ads1015) Drop dynamic attribute group
    hwmon: Add support for Texas Instruments ADS1015
    hwmon: New driver for SMSC SCH5627
    hwmon: (abituguru*) Update my email address
    hwmon: (lm75) Speed up detection
    hwmon: (lm75) Add detection of the National Semiconductor LM75A
    hp_accel: Fix driver name
    Move lis3lv02d drivers to drivers/misc
    Move hp_accel to drivers/platform/x86
    Let Kconfig handle lis3lv02d dependencies
    hwmon: (sht15) Fix integer overflow in humidity calculation
    hwmon: (sht15) Spelling fix
    hwmon: (w83795) Document pin mapping

    Linus Torvalds
     
  • /sys/fs is a somewhat strange way to tweak what could more
    obviously be tuned with a mount option.

    Suggested-by: Christoph Hellwig
    Signed-off-by: Tony Luck
    Signed-off-by: Linus Torvalds

    Luck, Tony
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
    FS: lookup_mnt() is only used in the core fs routines now
    bfs: fix bitmap size argument to find_first_zero_bit()
    fs: Use BUG_ON(!mnt) at dentry_open().
    fs: devpts_pty_new() return -ENOMEM if dentry allocation failed
    nfs: lock() vs unlock() typo
    pstore: fix leaking ->i_private
    introduce sys_syncfs to sync a single file system
    Small typo fix...
    Filesystem: fifo: Fixed coding style issue.
    fs/inode: Fix kernel-doc format for inode_init_owner
    select: remove unused MAX_SELECT_SECONDS
    vfs: cleanup do_vfs_ioctl()

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:
    firewire: core: ignore link-active bit of new nodes, fix device recognition
    firewire: sbp2: revert obsolete 'fix stall with "Unsolicited response"'
    firewire: core: increase default SPLIT_TIMEOUT value
    firewire: ohci: Misleading kfree in ohci.c::pci_probe/remove
    firewire: ohci: omit IntEvent.busReset check rom AT queueing
    firewire: ohci: prevent starting of iso contexts with empty queue
    firewire: ohci: prevent iso completion callbacks after context stop
    firewire: core: rename some variables
    firewire: nosy: should work on Power Mac G4 PCI too
    firewire: core: fix card->reset_jiffies overflow
    firewire: cdev: remove unneeded reference
    firewire: cdev: always wait for outbound transactions to complete
    firewire: cdev: remove unneeded idr_find() from complete_transaction()
    firewire: ohci: log dead DMA contexts

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/parisc-2.6:
    [PARISC] Convert to new irq_chip functions
    [PARISC] fix per-cpu flag problem in the cpu affinity checkers
    [PARISC] fix vmap flush/invalidate
    eliminate special FLUSH flag from page table
    parisc: flush pages through tmpalias space

    Linus Torvalds
     
  • Configuration for ads1015 gain and datarate is possible via
    devicetree or platform data.

    This is a followup patch to previous ads1015 patches on Jean Delvares
    tree.

    Signed-off-by: Dirk Eibach
    Signed-off-by: Jean Delvare

    Dirk Eibach
     
  • It is cheaper to handle attributes individually.

    Signed-off-by: Jean Delvare
    Acked-by: Dirk Eibach

    Jean Delvare