1. 06 Feb, 2014 1 commit
    • Zoltan Kiss's avatar
      xen-netback: Fix Rx stall due to race condition · 9ab9831b
      Zoltan Kiss authored
      The recent patch to fix receive side flow control
      (11b57f90: xen-netback: stop vif thread
      spinning if frontend is unresponsive) solved the spinning thread problem,
      however caused an another one. The receive side can stall, if:
      - [THREAD] xenvif_rx_action sets rx_queue_stopped to true
      - [INTERRUPT] interrupt happens, and sets rx_event to true
      - [THREAD] then xenvif_kthread sets rx_event to false
      - [THREAD] rx_work_todo doesn't return true anymore
      
      Also, if interrupt sent but there is still no room in the ring, it take quite a
      long time until xenvif_rx_action realize it. This patch ditch that two variable,
      and rework rx_work_todo. If the thread finds it can't fit more skb's into the
      ring, it saves the last slot estimation into rx_last_skb_slots, otherwise it's
      kept as 0. Then rx_work_todo will check if:
      - there is something to send to the ring (like before)
      - there is space for the topmost packet in the queue
      
      I think that's more natural and optimal thing to test than two bool which are
      set somewhere else.
      Signed-off-by: default avatarZoltan Kiss <zoltan.kiss@citrix.com>
      Reviewed-by: default avatarPaul Durrant <paul.durrant@citrix.com>
      Acked-by: default avatarWei Liu <wei.liu2@citrix.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      9ab9831b
  2. 05 Feb, 2014 15 commits
    • David Vrabel's avatar
      xen-netfront: handle backend CLOSED without CLOSING · bce3ea81
      David Vrabel authored
      Backend drivers shouldn't transistion to CLOSED unless the frontend is
      CLOSED.  If a backend does transition to CLOSED too soon then the
      frontend may not see the CLOSING state and will not properly shutdown.
      
      So, treat an unexpected backend CLOSED state the same as CLOSING.
      Signed-off-by: default avatarDavid Vrabel <david.vrabel@citrix.com>
      Acked-by: default avatarKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      bce3ea81
    • Dmitry Kravkov's avatar
      bnx2x: fix L2-GRE TCP issues · e8c37aff
      Dmitry Kravkov authored
      When configuring GRE tunnel using OVS, tcp stream is distributed over
      all RSS queues which may cause TCP reordering. It happens since OVS
      uses L2GRE protocol when kernel gre uses IPGRE.
      Patch defaults gre tunnel to L2GRE which allows proper RSS for L2GRE
      packets and (implicitly) disables RSS for IPGRE traffic.
      Signed-off-by: default avatarDmitry Kravkov <dmitry@broadcom.com>
      Signed-off-by: default avatarAriel Elior <ariele@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      e8c37aff
    • Bjørn Mork's avatar
      net: qmi_wwan: add Netgear Aircard 340U · fbd3a77d
      Bjørn Mork authored
      This device was mentioned in an OpenWRT forum.  Seems to have a "standard"
      Sierra Wireless ifnumber to function layout:
       0: qcdm
       2: nmea
       3: modem
       8: qmi
       9: storage
      Signed-off-by: default avatarBjørn Mork <bjorn@mork.no>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      fbd3a77d
    • Fernando Luis Vazquez Cao's avatar
      rtnetlink: fix oops in rtnl_link_get_slave_info_data_size · 6049f253
      Fernando Luis Vazquez Cao authored
      We should check whether rtnetlink link operations
      are defined before calling get_slave_size().
      
      Without this, the following oops can occur when
      adding a tap device to OVS.
      
      [   87.839553] BUG: unable to handle kernel NULL pointer dereference at 00000000000000a8
      [   87.839595] IP: [<ffffffff813d47c0>] if_nlmsg_size+0xf0/0x220
      [...]
      [   87.840651] Call Trace:
      [   87.840664]  [<ffffffff813d694b>] ? rtmsg_ifinfo+0x2b/0x100
      [   87.840688]  [<ffffffff813c8340>] ? __netdev_adjacent_dev_insert+0x150/0x1a0
      [   87.840718]  [<ffffffff813d6a50>] ? rtnetlink_event+0x30/0x40
      [   87.840742]  [<ffffffff814b4144>] ? notifier_call_chain+0x44/0x70
      [   87.840768]  [<ffffffff813c8946>] ? __netdev_upper_dev_link+0x3c6/0x3f0
      [   87.840798]  [<ffffffffa0678d6c>] ? netdev_create+0xcc/0x160 [openvswitch]
      [   87.840828]  [<ffffffffa06781ea>] ? ovs_vport_add+0x4a/0xd0 [openvswitch]
      [   87.840857]  [<ffffffffa0670139>] ? new_vport+0x9/0x50 [openvswitch]
      [   87.840884]  [<ffffffffa067279e>] ? ovs_vport_cmd_new+0x11e/0x210 [openvswitch]
      [   87.840915]  [<ffffffff813f3efa>] ? genl_family_rcv_msg+0x19a/0x360
      [   87.840941]  [<ffffffff813f40c0>] ? genl_family_rcv_msg+0x360/0x360
      [   87.840967]  [<ffffffff813f4139>] ? genl_rcv_msg+0x79/0xc0
      [   87.840991]  [<ffffffff813b6cf9>] ? __kmalloc_reserve.isra.25+0x29/0x80
      [   87.841018]  [<ffffffff813f2389>] ? netlink_rcv_skb+0xa9/0xc0
      [   87.841042]  [<ffffffff813f27cf>] ? genl_rcv+0x1f/0x30
      [   87.841064]  [<ffffffff813f1988>] ? netlink_unicast+0xe8/0x1e0
      [   87.841088]  [<ffffffff813f1d9a>] ? netlink_sendmsg+0x31a/0x750
      [   87.841113]  [<ffffffff813aee96>] ? sock_sendmsg+0x86/0xc0
      [   87.841136]  [<ffffffff813c960d>] ? __netdev_update_features+0x4d/0x200
      [   87.841163]  [<ffffffff813ca94e>] ? ethtool_get_value+0x2e/0x50
      [   87.841188]  [<ffffffff813af269>] ? ___sys_sendmsg+0x359/0x370
      [   87.841212]  [<ffffffff813da686>] ? dev_ioctl+0x1a6/0x5c0
      [   87.841236]  [<ffffffff8109c210>] ? autoremove_wake_function+0x30/0x30
      [   87.841264]  [<ffffffff813ac59d>] ? sock_do_ioctl+0x3d/0x50
      [   87.841288]  [<ffffffff813aca68>] ? sock_ioctl+0x1e8/0x2c0
      [   87.841312]  [<ffffffff811934bf>] ? do_vfs_ioctl+0x2cf/0x4b0
      [   87.841335]  [<ffffffff813afeb9>] ? __sys_sendmsg+0x39/0x70
      [   87.841362]  [<ffffffff814b86f9>] ? system_call_fastpath+0x16/0x1b
      [   87.841386] Code: c0 74 10 48 89 ef ff d0 83 c0 07 83 e0 fc 48 98 49 01 c7 48 89 ef e8 d0 d6 fe ff 48 85 c0 0f 84 df 00 00 00 48 8b 90 08 07 00 00 <48> 8b 8a a8 00 00 00 31 d2 48 85 c9 74 0c 48 89 ee 48 89 c7 ff
      [   87.841529] RIP  [<ffffffff813d47c0>] if_nlmsg_size+0xf0/0x220
      [   87.841555]  RSP <ffff880221aa5950>
      [   87.841569] CR2: 00000000000000a8
      [   87.851442] ---[ end trace e42ab217691b4fc2 ]---
      Signed-off-by: default avatarFernando Luis Vazquez Cao <fernando@oss.ntt.co.jp>
      Acked-by: default avatarJiri Pirko <jiri@resnulli.us>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      6049f253
    • Stefan Sørensen's avatar
      ptp: Allow selecting trigger/event index in testptp · 61950e82
      Stefan Sørensen authored
      Currently the trigger/event is hardcoded to 0, this patch adds
      a new command line argument -i to select an arbitrary trigger/
      event.
      Signed-off-by: default avatarStefan Sørensen <stefan.sorensen@spectralink.com>
      Acked-by: default avatarRichard Cochran <richardcochran@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      61950e82
    • Max Filippov's avatar
      net: ethoc: set up MII management bus clock · a13aff06
      Max Filippov authored
      MII management bus clock is derived from the MAC clock by dividing it by
      MIIMODER register CLKDIV field value. This value may need to be set up
      in case it is undefined or its default value is too high (and
      communication with PHY is too slow) or too low (and communication with
      PHY is impossible). The value of CLKDIV is not specified directly, but
      is derived from the MAC clock for the default MII management bus frequency
      of 2.5MHz. The MAC clock may be specified in the platform data, or in
      the 'clocks' device tree attribute.
      Signed-off-by: default avatarMax Filippov <jcmvbkbc@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      a13aff06
    • Max Filippov's avatar
      net: ethoc: don't advertise gigabit speed on attached PHY · 445a48cc
      Max Filippov authored
      OpenCores 10/100 Mbps MAC does not support speeds above 100 Mbps, but does
      not disable advertisement when PHY supports them. This results in
      non-functioning network when the MAC is connected to a gigabit PHY connected
      to a gigabit switch.
      
      The fix is to disable gigabit speed advertisement on attached PHY
      unconditionally.
      Signed-off-by: default avatarMax Filippov <jcmvbkbc@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      445a48cc
    • Florian Fainelli's avatar
      net: phy: ensure Gigabit features are masked off if requested · 5273e3a5
      Florian Fainelli authored
      When a Gigabit PHY device is connected to a 10/100Mbits capable Ethernet
      MAC, the driver will restrict the phydev->supported modes to mask off
      Gigabit. If the Gigabit PHY comes out of reset with the Gigabit features
      set by default in MII_CTRL1000, it will keep advertising these feature,
      so by the time we call genphy_config_advert(), the condition on
      phydev->supported having the Gigabit features on is false, and we do not
      update MII_CTRL1000 with updated values, and we keep advertising Gigabit
      features, eventually configuring the PHY for Gigabit whilst the Ethernet
      MAC does not support that.
      
      This patches fixes the problem by ensuring that the Gigabit feature bits
      are always cleared in MII_CTRL1000, if the PHY happens to be a Gigabit
      PHY, and then, if Gigabit features are supported, setting those and
      updating MII_CTRL1000 accordingly.
      Reported-by: default avatarMax Filippov <jcmvbkbc@gmail.com>
      Signed-off-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
      Tested-by: default avatarMax Filippov <jcmvbkbc@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      5273e3a5
    • Stefan Sørensen's avatar
      net:phy:dp83640: Initialize PTP clocks at device init. · 62ad9684
      Stefan Sørensen authored
      The trigger and events functionality can be useful even if packet
      timestamping is not used, but the required PTP clock is only enabled
      when packet timestamping is started. This patch moves the clock enable
      to when the interface is configured.
      Signed-off-by: default avatarStefan Sørensen <stefan.sorensen@spectralink.com>
      Acked-by: default avatarRichard Cochran <richardcochran@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      62ad9684
    • Stefan Sørensen's avatar
      net:phy:dp83640: Do not hardcode timestamping event edge · 80671bd2
      Stefan Sørensen authored
      Currently the external timestamping code is hardcoded to use the
      rising edge even though the hardware has configurable event edge
      detection. This patch changes the code to use falling edge detection
      if PTP_FALLING_EDGE is set in the user supplied flags.
      Signed-off-by: default avatarStefan Sørensen <stefan.sorensen@spectralink.com>
      Acked-by: default avatarRichard Cochran <richardcochran@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      80671bd2
    • Stefan Sørensen's avatar
      net:phy:dp83640: Declare that TX timestamping possible · e2e2f51d
      Stefan Sørensen authored
      Set the SKBTX_IN_PROGRESS bit in tx_flags dp83640_txtstamp when doing
      tx timestamps as per Documentation/networking/timestamping.txt.
      Signed-off-by: default avatarStefan Sørensen <stefan.sorensen@spectralink.com>
      Acked-by: default avatarRichard Cochran <richardcochran@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      e2e2f51d
    • Shlomo Pongratz's avatar
      net/ipv4: Use proper RCU APIs for writer-side in udp_offload.c · a664a4f7
      Shlomo Pongratz authored
      RCU writer side should use rcu_dereference_protected() and not
      rcu_dereference(), fix that. This also removes the "suspicious RCU usage"
      warning seen when running with CONFIG_PROVE_RCU.
      
      Also, don't use rcu_assign_pointer/rcu_dereference for pointers
      which are invisible beyond the udp offload code.
      
      Fixes: b582ef09 ('net: Add GRO support for UDP encapsulating protocols')
      Reported-by: default avatarEric Dumazet <edumazet@google.com>
      Cc: Eric Dumazet <edumazet@google.com>
      Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarShlomo Pongratz <shlomop@mellanox.com>
      Acked-by: default avatarEric Dumazet <edumazet@google.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      a664a4f7
    • David S. Miller's avatar
      Merge branch 'bonding_fail_over_mac' · 9330ed16
      David S. Miller authored
      Ding Tianhong says:
      
      ====================
      bonding: Fix some issues for fail_over_mac
      
      The parameter fail_over_mac only affect active-backup mode, if it was
      set to active or follow and works with other modes, just like RR or XOR
      mode, the bonding could not set all slaves to the master's address, it
      will cause the slave could not work well with master.
      
      v1->v2: According Jay's suggestion, that we should permit setting an option
      	at any time, but only have it take effect in active-backup mode, so
      	I add mode checking together with fail_over_mac during enslavement and
      	rebuild the patches.
      
      v2->v3: The correct way to fix the problem is that we should not add restrictions when
          	setting options, just need to modify the bond enslave and removal processing
          	to check the mode in addition to fail_over_mac when setting a slave's MAC during
          	enslavement. The change active slave processing already only calls the fail_over_mac
          	function when in active-backup mode.
      
      	Remove the cleanup patch because the net-next is frozen now.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      Signed-off-by: default avatarJay Vosburgh <fubar@us.ibm.com>
      9330ed16
    • dingtianhong's avatar
      bonding: fail_over_mac should only affect AB mode in bond_set_mac_address() · cc689aaa
      dingtianhong authored
      The fail_over_mac could be set to active or follow in any time for all modes,
      so if the fail_over_mac is not none and the current mode is not active-backup,
      the bond_set_mac_address() could not change the master and slave's MAC address.
      
      In bond_set_mac_address(), the fail_over_mac should only affect AB mode, so modify
      to check the mode in addition to fail_over_mac when setting bond's MAC address.
      
      Cc: Jay Vosburgh <fubar@us.ibm.com>
      Cc: Veaceslav Falico <vfalico@redhat.com>
      Cc: Andy Gospodarek <andy@greyhouse.net>
      Signed-off-by: default avatarDing Tianhong <dingtianhong@huawei.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      cc689aaa
    • dingtianhong's avatar
      bonding: fail_over_mac should only affect AB mode at enslave and removal processing · 00503b6f
      dingtianhong authored
      According to bonding.txt, the fail_over_ma should only affect active-backup mode,
      but I found that the fail_over_mac could be set to active or follow in all
      modes, this will cause new slave could not be set to bond's MAC address at
      enslave processing and restore its own MAC address at removal processing.
      
      The correct way to fix the problem is that we should not add restrictions when
      setting options, just need to modify the bond enslave and removal processing
      to check the mode in addition to fail_over_mac when setting a slave's MAC during
      enslavement. The change active slave processing already only calls the fail_over_mac
      function when in active-backup mode.
      
      Thanks for Jay's suggestion.
      
      The patch also modify the pr_warning() to pr_warn().
      
      Cc: Jay Vosburgh <fubar@us.ibm.com>
      Cc: Veaceslav Falico <vfalico@redhat.com>
      Cc: Andy Gospodarek <andy@greyhouse.net>
      Signed-off-by: default avatarDing Tianhong <dingtianhong@huawei.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      00503b6f
  3. 03 Feb, 2014 1 commit
  4. 02 Feb, 2014 6 commits
  5. 31 Jan, 2014 7 commits
  6. 30 Jan, 2014 10 commits
    • Linus Torvalds's avatar
      Merge branch 'for-3.14/drivers' of git://git.kernel.dk/linux-block · 53d8ab29
      Linus Torvalds authored
      Pull block IO driver changes from Jens Axboe:
      
       - bcache update from Kent Overstreet.
      
       - two bcache fixes from Nicholas Swenson.
      
       - cciss pci init error fix from Andrew.
      
       - underflow fix in the parallel IDE pg_write code from Dan Carpenter.
         I'm sure the 1 (or 0) users of that are now happy.
      
       - two PCI related fixes for sx8 from Jingoo Han.
      
       - floppy init fix for first block read from Jiri Kosina.
      
       - pktcdvd error return miss fix from Julia Lawall.
      
       - removal of IRQF_SHARED from the SEGA Dreamcast CD-ROM code from
         Michael Opdenacker.
      
       - comment typo fix for the loop driver from Olaf Hering.
      
       - potential oops fix for null_blk from Raghavendra K T.
      
       - two fixes from Sam Bradshaw (Micron) for the mtip32xx driver, fixing
         an OOM problem and a problem with handling security locked conditions
      
      * 'for-3.14/drivers' of git://git.kernel.dk/linux-block: (47 commits)
        mg_disk: Spelling s/finised/finished/
        null_blk: Null pointer deference problem in alloc_page_buffers
        mtip32xx: Correctly handle security locked condition
        mtip32xx: Make SGL container per-command to eliminate high order dma allocation
        drivers/block/loop.c: fix comment typo in loop_config_discard
        drivers/block/cciss.c:cciss_init_one(): use proper errnos
        drivers/block/paride/pg.c: underflow bug in pg_write()
        drivers/block/sx8.c: remove unnecessary pci_set_drvdata()
        drivers/block/sx8.c: use module_pci_driver()
        floppy: bail out in open() if drive is not responding to block0 read
        bcache: Fix auxiliary search trees for key size > cacheline size
        bcache: Don't return -EINTR when insert finished
        bcache: Improve bucket_prio() calculation
        bcache: Add bch_bkey_equal_header()
        bcache: update bch_bkey_try_merge
        bcache: Move insert_fixup() to btree_keys_ops
        bcache: Convert sorting to btree_keys
        bcache: Convert debug code to btree_keys
        bcache: Convert btree_iter to struct btree_keys
        bcache: Refactor bset_tree sysfs stats
        ...
      53d8ab29
    • Linus Torvalds's avatar
      Merge branch 'for-3.14/core' of git://git.kernel.dk/linux-block · f568849e
      Linus Torvalds authored
      Pull core block IO changes from Jens Axboe:
       "The major piece in here is the immutable bio_ve series from Kent, the
        rest is fairly minor.  It was supposed to go in last round, but
        various issues pushed it to this release instead.  The pull request
        contains:
      
         - Various smaller blk-mq fixes from different folks.  Nothing major
           here, just minor fixes and cleanups.
      
         - Fix for a memory leak in the error path in the block ioctl code
           from Christian Engelmayer.
      
         - Header export fix from CaiZhiyong.
      
         - Finally the immutable biovec changes from Kent Overstreet.  This
           enables some nice future work on making arbitrarily sized bios
           possible, and splitting more efficient.  Related fixes to immutable
           bio_vecs:
      
              - dm-cache immutable fixup from Mike Snitzer.
              - btrfs immutable fixup from Muthu Kumar.
      
        - bio-integrity fix from Nic Bellinger, which is also going to stable"
      
      * 'for-3.14/core' of git://git.kernel.dk/linux-block: (44 commits)
        xtensa: fixup simdisk driver to work with immutable bio_vecs
        block/blk-mq-cpu.c: use hotcpu_notifier()
        blk-mq: for_each_* macro correctness
        block: Fix memory leak in rw_copy_check_uvector() handling
        bio-integrity: Fix bio_integrity_verify segment start bug
        block: remove unrelated header files and export symbol
        blk-mq: uses page->list incorrectly
        blk-mq: use __smp_call_function_single directly
        btrfs: fix missing increment of bi_remaining
        Revert "block: Warn and free bio if bi_end_io is not set"
        block: Warn and free bio if bi_end_io is not set
        blk-mq: fix initializing request's start time
        block: blk-mq: don't export blk_mq_free_queue()
        block: blk-mq: make blk_sync_queue support mq
        block: blk-mq: support draining mq queue
        dm cache: increment bi_remaining when bi_end_io is restored
        block: fixup for generic bio chaining
        block: Really silence spurious compiler warnings
        block: Silence spurious compiler warnings
        block: Kill bio_pair_split()
        ...
      f568849e
    • Linus Torvalds's avatar
      Merge branch 'for-3.14' of git://linux-nfs.org/~bfields/linux · d9894c22
      Linus Torvalds authored
      Pull nfsd updates from Bruce Fields:
       - Handle some loose ends from the vfs read delegation support.
         (For example nfsd can stop breaking leases on its own in a
          fewer places where it can now depend on the vfs to.)
       - Make life a little easier for NFSv4-only configurations
         (thanks to Kinglong Mee).
       - Fix some gss-proxy problems (thanks Jeff Layton).
       - miscellaneous bug fixes and cleanup
      
      * 'for-3.14' of git://linux-nfs.org/~bfields/linux: (38 commits)
        nfsd: consider CLAIM_FH when handing out delegation
        nfsd4: fix delegation-unlink/rename race
        nfsd4: delay setting current_fh in open
        nfsd4: minor nfs4_setlease cleanup
        gss_krb5: use lcm from kernel lib
        nfsd4: decrease nfsd4_encode_fattr stack usage
        nfsd: fix encode_entryplus_baggage stack usage
        nfsd4: simplify xdr encoding of nfsv4 names
        nfsd4: encode_rdattr_error cleanup
        nfsd4: nfsd4_encode_fattr cleanup
        minor svcauth_gss.c cleanup
        nfsd4: better VERIFY comment
        nfsd4: break only delegations when appropriate
        NFSD: Fix a memory leak in nfsd4_create_session
        sunrpc: get rid of use_gssp_lock
        sunrpc: fix potential race between setting use_gss_proxy and the upcall rpc_clnt
        sunrpc: don't wait for write before allowing reads from use-gss-proxy file
        nfsd: get rid of unused function definition
        Define op_iattr for nfsd4_open instead using macro
        NFSD: fix compile warning without CONFIG_NFSD_V3
        ...
      d9894c22
    • Geert Uytterhoeven's avatar
      ipmi: Add missing rv in ipmi_parisc_probe() · dfa19426
      Geert Uytterhoeven authored
      Fix
      
        drivers/char/ipmi/ipmi_si_intf.c: In function 'ipmi_parisc_probe':
        drivers/char/ipmi/ipmi_si_intf.c:2752:2: error: 'rv' undeclared (first use in this function)
        drivers/char/ipmi/ipmi_si_intf.c:2752:2: note: each undeclared identifier is reported only once for each function it appears in
      
      Introduced by commit d02b3709 ("ipmi: Cleanup error return")
      Signed-off-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
      Acked-by: default avatarCorey Minyard <cminyard@mvista.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      dfa19426
    • Christoph Hellwig's avatar
      nfs: fix xattr inode op pointers when disabled · 5f13ee9c
      Christoph Hellwig authored
      Chris Mason reported a NULL pointer derefernence in generic_getxattr()
      that was due to sb->s_xattr being NULL.
      
      The reason is that the nfs #ifdef's for ACL support were misplaced, and
      the nfs3 inode operations had the xattr operation pointers set up, even
      though xattrs were not actually supported.  As a result, the xattr code
      was being called without the infrastructure having been set up.
      
      Move the #ifdef's appropriately.
      Reported-and-tested-by: default avatarChris Mason <clm@fb.com>
      Acked-by: Al Viro viro@zeniv.linux.org.uk>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      5f13ee9c
    • Linus Torvalds's avatar
      Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux · 9b0cd304
      Linus Torvalds authored
      Pull drm updates from Dave Airlie:
       "Been a bit busy, first week of kids school, and waiting on other trees
        to go in before I could send this, so its a bit later than I'd
        normally like.
      
        Highlights:
         - core:
            timestamp fixes, lots of misc cleanups
         - new drivers:
            bochs virtual vga
         - vmwgfx:
            major overhaul for their nextgen virt gpu.
         - i915:
            runtime D3 on HSW, watermark fixes, power well work, fbc fixes,
            bdw is no longer prelim.
         - nouveau:
            gk110/208 acceleration, more pm groundwork, old overlay support
         - radeon:
            dpm rework and clockgating for CIK, pci config reset, big endian
            fixes
         - tegra:
            panel support and DSI support, build as module, prime.
         - armada, omap, gma500, rcar, exynos, mgag200, cirrus, ast:
            fixes
         - msm:
            hdmi support for mdp5"
      
      * 'drm-next' of git://people.freedesktop.org/~airlied/linux: (595 commits)
        drm/nouveau: resume display if any later suspend bits fail
        drm/nouveau: fix lock unbalance in nouveau_crtc_page_flip
        drm/nouveau: implement hooks for needed for drm vblank timestamping support
        drm/nouveau/disp: add a method to fetch info needed by drm vblank timestamping
        drm/nv50: fill in crtc mode struct members from crtc_mode_fixup
        drm/radeon/dce8: workaround for atom BlankCrtc table
        drm/radeon/DCE4+: clear bios scratch dpms bit (v2)
        drm/radeon: set si_notify_smc_display_change properly
        drm/radeon: fix DAC interrupt handling on DCE5+
        drm/radeon: clean up active vram sizing
        drm/radeon: skip async dma init on r6xx
        drm/radeon/runpm: don't runtime suspend non-PX cards
        drm/radeon: add ring to fence trace functions
        drm/radeon: add missing trace point
        drm/radeon: fix VMID use tracking
        drm: ast,cirrus,mgag200: use drm_can_sleep
        drm/gma500: Lock struct_mutex around cursor updates
        drm/i915: Fix the offset issue for the stolen GEM objects
        DRM: armada: fix missing DRM_KMS_FB_HELPER select
        drm/i915: Decouple GPU error reporting from ring initialisation
        ...
      9b0cd304
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma · ca2a650f
      Linus Torvalds authored
      Pull slave-dma updates from Vinod Koul:
       - new driver for BCM2835 used in R-pi
       - new driver for MOXA ART
       - dma_get_any_slave_channel API for DT based systems
       - minor fixes and updates spread acrooss driver
      
      [ The fsl-ssi dual fifo mode support addition clashed badly with the
        other changes to fsl-ssi that came in through the sound merge.  I did
        a very rough cut at fixing up the conflict, but Nicolin Chen (author
        of both sides) will need to verify and check things ]
      
      * 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma: (36 commits)
        dmaengine: mmp_pdma: fix mismerge
        dma: pl08x: Export pl08x_filter_id
        acpi-dma: align documentation with kernel-doc format
        dma: fix vchan_cookie_complete() debug print
        DMA: dmatest: extend the "device" module parameter to 32 characters
        drivers/dma: fix error return code
        dma: omap: Set debug level to debugging messages
        dmaengine: fix kernel-doc style typos for few comments
        dma: tegra: add support for Tegra148/124
        dma: dw: use %pad instead of casting dma_addr_t
        dma: dw: join split up messages
        dma: dw: fix style of multiline comment
        dmaengine: k3dma: fix sparse warnings
        dma: pl330: Use dma_get_slave_channel() in the of xlate callback
        dma: pl330: Differentiate between submitted and issued descriptors
        dmaengine: sirf: Add device_slave_caps interface
        DMA: Freescale: change BWC from 256 bytes to 1024 bytes
        dmaengine: Add MOXA ART DMA engine driver
        dmaengine: Add DMA_PRIVATE to BCM2835 driver
        dma: imx-sdma: Assign a default script number for ROM firmware cases
        ...
      ca2a650f
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/olof/chrome-platform · e9e352e9
      Linus Torvalds authored
      Pull chrome platform cleanups and improvements from Olof Johansson:
       - Use deferred probing on Chrome OS platforms for the i2c device
         registration.  This fixes a long-standing race of initialization of
         touchpad/screen on Chromebooks.
       - Added in platform device registration for pstore console on supported
         hardware
       - Misc smaller fixes (__initdata, module exit cleanup, etc)
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/olof/chrome-platform:
        platform/chrome: unregister platform driver/device when module exit
        platform/chrome: Make i2c_adapter_names static
        platform/chrome: chromeos_laptop - fix incorrect placement of __initdata tag
        platform/chrome: chromeos_laptop - Use deferred probing
        platform/chrome: chromeos_laptop - Restructure device associations
        platform/chrome: Add pstore platform_device
      e9e352e9
    • Linus Torvalds's avatar
      Merge tag 'iommu-updates-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · b3a4bcaa
      Linus Torvalds authored
      Pull IOMMU Updates from Joerg Roedel:
       "A few patches have been queued up for this merge window:
      
         - improvements for the ARM-SMMU driver (IOMMU_EXEC support, IOMMU
           group support)
         - updates and fixes for the shmobile IOMMU driver
         - various fixes to generic IOMMU code and the Intel IOMMU driver
         - some cleanups in IOMMU drivers (dev_is_pci() usage)"
      
      * tag 'iommu-updates-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (36 commits)
        iommu/vt-d: Fix signedness bug in alloc_irte()
        iommu/vt-d: free all resources if failed to initialize DMARs
        iommu/vt-d, trivial: clean sparse warnings
        iommu/vt-d: fix wrong return value of dmar_table_init()
        iommu/vt-d: release invalidation queue when destroying IOMMU unit
        iommu/vt-d: fix access after free issue in function free_dmar_iommu()
        iommu/vt-d: keep shared resources when failed to initialize iommu devices
        iommu/vt-d: fix invalid memory access when freeing DMAR irq
        iommu/vt-d, trivial: simplify code with existing macros
        iommu/vt-d, trivial: use defined macro instead of hardcoding
        iommu/vt-d: mark internal functions as static
        iommu/vt-d, trivial: clean up unused code
        iommu/vt-d, trivial: check suitable flag in function detect_intel_iommu()
        iommu/vt-d, trivial: print correct domain id of static identity domain
        iommu/vt-d, trivial: refine support of 64bit guest address
        iommu/vt-d: fix resource leakage on error recovery path in iommu_init_domains()
        iommu/vt-d: fix a race window in allocating domain ID for virtual machines
        iommu/vt-d: fix PCI device reference leakage on error recovery path
        drm/msm: Fix link error with !MSM_IOMMU
        iommu/vt-d: use dedicated bitmap to track remapping entry allocation status
        ...
      b3a4bcaa
    • Linus Torvalds's avatar
      Merge git://www.linux-watchdog.org/linux-watchdog · 17c7f854
      Linus Torvalds authored
      Pull watchdog updates from Wim Van Sebroeck:
       - new driver for bcm281xx watchdog device
       - new driver for gpio based watchdog devices
       - remove DEFINE_PCI_DEVICE_TABLE macro for watchdog device drivers
       - conversion of davinci_wdt and mpc8xxx_wdt to watchdog core
       - improvements on davinci_wdt, at91/dt, at91sam9_wdt and s3c2410_wdt
       - Auto-detect IO address and expand supported chips on w836* super-I/O
         chipsets
       - core: Make dt "timeout-sec" property work on drivers w/out min/max
       - fix Kconfig dependencies
       - sirf: Remove redundant of_match_ptr helper
       - mach-moxart: add restart handler
       - hpwdt patch to display better panic information
       - imx2_wdt: disable watchdog timer during low power mode
      
      * git://www.linux-watchdog.org/linux-watchdog: (31 commits)
        watchdog: w83627hf_wdt: Reset watchdog trigger during initialization
        watchdog: w83627hf: Add support for W83697HF and W83697UG
        watchdog: w83627hf: Auto-detect IO address and supported chips
        watchdog: at91sam9_wdt: increase security margin on watchdog counter reset
        watchdog: at91sam9_wdt: avoid spurious watchdog reset during init
        watchdog: at91sam9_wdt: fix secs_to_ticks
        ARM: at91/dt: add watchdog properties to kizbox board
        ARM: at91/dt: add sam9 watchdog default options to SoCs
        watchdog: at91sam9_wdt: update device tree doc
        watchdog: at91sam9_wdt: better watchdog support
        watchdog: sp805_wdt depends also on ARM64
        watchdog: mach-moxart: add restart handler
        watchdog: mpc8xxx_wdt convert to watchdog core
        watchdog: sirf: Remove redundant of_match_ptr helper
        watchdog: hpwdt patch to display informative string
        watchdog: dw_wdt: remove build dependencies
        watchdog: imx2_wdt: disable watchdog timer during low power mode
        watchdog: s3c2410_wdt: Report when the watchdog reset the system
        watchdog: s3c2410_wdt: use syscon regmap interface to configure pmu register
        watchdog: s3c2410_wdt: Handle rounding a little better for timeout
        ...
      17c7f854