1. 15 Jan, 2016 15 commits
    • Nikolay Aleksandrov's avatar
      bridge: fix lockdep addr_list_lock false positive splat · c6894dec
      Nikolay Aleksandrov authored
      After promisc mode management was introduced a bridge device could do
      dev_set_promiscuity from its ndo_change_rx_flags() callback which in
      turn can be called after the bridge's addr_list_lock has been taken
      (e.g. by dev_uc_add). This causes a false positive lockdep splat because
      the port interfaces' addr_list_lock is taken when br_manage_promisc()
      runs after the bridge's addr list lock was already taken.
      To remove the false positive introduce a custom bridge addr_list_lock
      class and set it on bridge init.
      A simple way to reproduce this is with the following:
      $ brctl addbr br0
      $ ip l add l br0 br0.100 type vlan id 100
      $ ip l set br0 up
      $ ip l set br0.100 up
      $ echo 1 > /sys/class/net/br0/bridge/vlan_filtering
      $ brctl addif br0 eth0
      Splat:
      [   43.684325] =============================================
      [   43.684485] [ INFO: possible recursive locking detected ]
      [   43.684636] 4.4.0-rc8+ #54 Not tainted
      [   43.684755] ---------------------------------------------
      [   43.684906] brctl/1187 is trying to acquire lock:
      [   43.685047]  (_xmit_ETHER){+.....}, at: [<ffffffff8150169e>] dev_set_rx_mode+0x1e/0x40
      [   43.685460]  but task is already holding lock:
      [   43.685618]  (_xmit_ETHER){+.....}, at: [<ffffffff815072a7>] dev_uc_add+0x27/0x80
      [   43.686015]  other info that might help us debug this:
      [   43.686316]  Possible unsafe locking scenario:
      
      [   43.686743]        CPU0
      [   43.686967]        ----
      [   43.687197]   lock(_xmit_ETHER);
      [   43.687544]   lock(_xmit_ETHER);
      [   43.687886] *** DEADLOCK ***
      
      [   43.688438]  May be due to missing lock nesting notation
      
      [   43.688882] 2 locks held by brctl/1187:
      [   43.689134]  #0:  (rtnl_mutex){+.+.+.}, at: [<ffffffff81510317>] rtnl_lock+0x17/0x20
      [   43.689852]  #1:  (_xmit_ETHER){+.....}, at: [<ffffffff815072a7>] dev_uc_add+0x27/0x80
      [   43.690575] stack backtrace:
      [   43.690970] CPU: 0 PID: 1187 Comm: brctl Not tainted 4.4.0-rc8+ #54
      [   43.691270] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.8.1-20150318_183358- 04/01/2014
      [   43.691770]  ffffffff826a25c0 ffff8800369fb8e0 ffffffff81360ceb ffffffff826a25c0
      [   43.692425]  ffff8800369fb9b8 ffffffff810d0466 ffff8800369fb968 ffffffff81537139
      [   43.693071]  ffff88003a08c880 0000000000000000 00000000ffffffff 0000000002080020
      [   43.693709] Call Trace:
      [   43.693931]  [<ffffffff81360ceb>] dump_stack+0x4b/0x70
      [   43.694199]  [<ffffffff810d0466>] __lock_acquire+0x1e46/0x1e90
      [   43.694483]  [<ffffffff81537139>] ? netlink_broadcast_filtered+0x139/0x3e0
      [   43.694789]  [<ffffffff8153b5da>] ? nlmsg_notify+0x5a/0xc0
      [   43.695064]  [<ffffffff810d10f5>] lock_acquire+0xe5/0x1f0
      [   43.695340]  [<ffffffff8150169e>] ? dev_set_rx_mode+0x1e/0x40
      [   43.695623]  [<ffffffff815edea5>] _raw_spin_lock_bh+0x45/0x80
      [   43.695901]  [<ffffffff8150169e>] ? dev_set_rx_mode+0x1e/0x40
      [   43.696180]  [<ffffffff8150169e>] dev_set_rx_mode+0x1e/0x40
      [   43.696460]  [<ffffffff8150189c>] dev_set_promiscuity+0x3c/0x50
      [   43.696750]  [<ffffffffa0586845>] br_port_set_promisc+0x25/0x50 [bridge]
      [   43.697052]  [<ffffffffa05869aa>] br_manage_promisc+0x8a/0xe0 [bridge]
      [   43.697348]  [<ffffffffa05826ee>] br_dev_change_rx_flags+0x1e/0x20 [bridge]
      [   43.697655]  [<ffffffff81501532>] __dev_set_promiscuity+0x132/0x1f0
      [   43.697943]  [<ffffffff81501672>] __dev_set_rx_mode+0x82/0x90
      [   43.698223]  [<ffffffff815072de>] dev_uc_add+0x5e/0x80
      [   43.698498]  [<ffffffffa05b3c62>] vlan_device_event+0x542/0x650 [8021q]
      [   43.698798]  [<ffffffff8109886d>] notifier_call_chain+0x5d/0x80
      [   43.699083]  [<ffffffff810988b6>] raw_notifier_call_chain+0x16/0x20
      [   43.699374]  [<ffffffff814f456e>] call_netdevice_notifiers_info+0x6e/0x80
      [   43.699678]  [<ffffffff814f4596>] call_netdevice_notifiers+0x16/0x20
      [   43.699973]  [<ffffffffa05872be>] br_add_if+0x47e/0x4c0 [bridge]
      [   43.700259]  [<ffffffffa058801e>] add_del_if+0x6e/0x80 [bridge]
      [   43.700548]  [<ffffffffa0588b5f>] br_dev_ioctl+0xaf/0xc0 [bridge]
      [   43.700836]  [<ffffffff8151a7ac>] dev_ifsioc+0x30c/0x3c0
      [   43.701106]  [<ffffffff8151aac9>] dev_ioctl+0xf9/0x6f0
      [   43.701379]  [<ffffffff81254345>] ? mntput_no_expire+0x5/0x450
      [   43.701665]  [<ffffffff812543ee>] ? mntput_no_expire+0xae/0x450
      [   43.701947]  [<ffffffff814d7b02>] sock_do_ioctl+0x42/0x50
      [   43.702219]  [<ffffffff814d8175>] sock_ioctl+0x1e5/0x290
      [   43.702500]  [<ffffffff81242d0b>] do_vfs_ioctl+0x2cb/0x5c0
      [   43.702771]  [<ffffffff81243079>] SyS_ioctl+0x79/0x90
      [   43.703033]  [<ffffffff815eebb6>] entry_SYSCALL_64_fastpath+0x16/0x7a
      
      CC: Vlad Yasevich <vyasevic@redhat.com>
      CC: Stephen Hemminger <stephen@networkplumber.org>
      CC: Bridge list <bridge@lists.linux-foundation.org>
      CC: Andy Gospodarek <gospo@cumulusnetworks.com>
      CC: Roopa Prabhu <roopa@cumulusnetworks.com>
      Fixes: 2796d0c6 ("bridge: Automatically manage port promiscuous mode.")
      Reported-by: default avatarAndy Gospodarek <gospo@cumulusnetworks.com>
      Signed-off-by: default avatarNikolay Aleksandrov <nikolay@cumulusnetworks.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      c6894dec
    • Yoshinori Sato's avatar
      net: smsc: Add support h8300 · f147d0b3
      Yoshinori Sato authored
      Add H8/300 platform support for smc91x
      Signed-off-by: default avatarYoshinori Sato <ysato@users.sourceforge.jp>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f147d0b3
    • David S. Miller's avatar
      Merge branch 'xen-netback-fixes' · 973365dc
      David S. Miller authored
      David Vrabel says:
      
      ====================
      xen-netback: use skb to determine number of required (etc.)
      
      "xen-netback: use skb to determine number of required" plus two other
      minor fixes I found down the back of the sofa.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      973365dc
    • David Vrabel's avatar
      xen-netback: free queues after freeing the net device · 9c6f3ffe
      David Vrabel authored
      If a queue still has a NAPI instance added to the net device, freeing
      the queues early results in a use-after-free.
      
      The shouldn't ever happen because we disconnect and tear down all queues
      before freeing the net device, but doing this makes it obviously safe.
      Signed-off-by: default avatarDavid Vrabel <david.vrabel@citrix.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      9c6f3ffe
    • David Vrabel's avatar
      xen-netback: delete NAPI instance when queue fails to initialize · 4a658527
      David Vrabel authored
      When xenvif_connect() fails it may leave a stale NAPI instance added to
      the device.  Make sure we delete it in the error path.
      Signed-off-by: default avatarDavid Vrabel <david.vrabel@citrix.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      4a658527
    • David Vrabel's avatar
      xen-netback: use skb to determine number of required guest Rx requests · 99a2dea5
      David Vrabel authored
      Using the MTU or GSO size to determine the number of required guest Rx
      requests for an skb was subtly broken since these value may change at
      runtime.
      
      After 1650d545 (xen-netback: always
      fully coalesce guest Rx packets) we always fully pack a packet into
      its guest Rx slots.  Calculating the number of required slots from the
      packet length is then easy.
      Signed-off-by: default avatarDavid Vrabel <david.vrabel@citrix.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      99a2dea5
    • Geert Uytterhoeven's avatar
      net: sctp: Move sequence start handling into sctp_transport_get_idx() · fb331185
      Geert Uytterhoeven authored
      net/sctp/proc.c: In function ‘sctp_transport_get_idx’:
      net/sctp/proc.c:313: warning: ‘obj’ may be used uninitialized in this function
      
      This is currently a false positive, as all callers check for a zero
      offset first, and handle this case in the exact same way.
      
      Move the check and handling into sctp_transport_get_idx() to kill the
      compiler warning, and avoid future bugs.
      Signed-off-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
      Acked-by: default avatarMarcelo Ricardo Leitner <marcelo.leitner@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      fb331185
    • Eric Dumazet's avatar
      ipv6: update skb->csum when CE mark is propagated · 34ae6a1a
      Eric Dumazet authored
      When a tunnel decapsulates the outer header, it has to comply
      with RFC 6080 and eventually propagate CE mark into inner header.
      
      It turns out IP6_ECN_set_ce() does not correctly update skb->csum
      for CHECKSUM_COMPLETE packets, triggering infamous "hw csum failure"
      messages and stack traces.
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Acked-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      34ae6a1a
    • Sjoerd Simons's avatar
      net: phy: turn carrier off on phy attach · 113c74d8
      Sjoerd Simons authored
      The operstate of a networking device initially IF_OPER_UNKNOWN aka
      "unknown", updated on carrier state changes (with carrier state being on
      by default). This means it will stay unknown unless the carrier state
      goes to off at some point, which is not the case if the phy is already
      up/connected at startup.
      
      Explicitly turn off the carrier on phy attach, leaving the phy state
      machine to turn the carrier on when it has done the initial negotiation.
      Signed-off-by: default avatarSjoerd Simons <sjoerd.simons@collabora.co.uk>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      113c74d8
    • Nathan Sullivan's avatar
      net: macb: clear interrupts when disabling them · 24468374
      Nathan Sullivan authored
      Disabling interrupts with the IDR register does not stop the macb hardware
      from asserting its interrupt line if there are interrupts pending.  Always
      clear the interrupts using ISR, and be sure to write it on hardware that
      is not read-to-clear, like Zynq.  Not doing so will cause interrupts when
      the driver doesn't expect them.
      Signed-off-by: default avatarNathan Sullivan <nathan.sullivan@ni.com>
      Acked-by: default avatarNicolas Ferre <nicolas.ferre@atmel.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      24468374
    • Xin Long's avatar
      sctp: support to lookup with ep+paddr in transport rhashtable · 65a5124a
      Xin Long authored
      Now, when we sendmsg, we translate the ep to laddr by selecting the
      first element of the list, and then do a lookup for a transport.
      
      But sctp_hash_cmp() will compare it against asoc addr_list, which may
      be a subset of ep addr_list, meaning that this chosen laddr may not be
      there, and thus making it impossible to find the transport.
      
      So we fix it by using ep + paddr to lookup transports in hashtable. In
      sctp_hash_cmp, if .ep is set, we will check if this ep == asoc->ep,
      or we will do the laddr check.
      
      Fixes: d6c0256a ("sctp: add the rhashtable apis for sctp global transport hashtable")
      Signed-off-by: default avatarXin Long <lucien.xin@gmail.com>
      Acked-by: default avatarMarcelo Ricardo Leitner <marcelo.leitner@gmail.com>
      Reported-by: default avatarVlad Yasevich <vyasevich@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      65a5124a
    • David S. Miller's avatar
      Merge branch 'hisi-fixes' · 628a96e7
      David S. Miller authored
      Kejian Yan says:
      
      ====================
      dts: hisi: fixes no syscon fault when init mdio
      
      This patchset fixes the bug that eth can't initial successful on hip05-D02
      because the dts files doesn't match the source code.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      628a96e7
    • yankejian's avatar
      net: hns: fixes no syscon error when init mdio · 28052e75
      yankejian authored
      As dtsi files use the normal naming conventions using '-' instead of '_'
      inside of property names, the driver needs to update the phandle name
      strings of the of_parse_phandle func.
      Signed-off-by: default avatarKejian Yan <yankejian@huawei.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      28052e75
    • yankejian's avatar
      dts: hisi: fixes no syscon fault when init mdio · b70ce2ab
      yankejian authored
      When linux start up, we get the log below:
      "Hi-HNS_MDIO 803c0000.mdio: no syscon hisilicon,peri-c-subctrl
      mdio_bus mdio@803c0000: mdio sys ctl reg has not maped"
      
      The source code about the subctrl is dealt syscon, but dts doesn't.
      It cause such fault, so this patch adds the syscon info on dts files to
      fixes it.
      Signed-off-by: default avatarKejian Yan <yankejian@huawei.com>
      Acked-by: default avatarRob Herring <robh@kernel.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b70ce2ab
    • Konstantin Khlebnikov's avatar
      net: preserve IP control block during GSO segmentation · 9207f9d4
      Konstantin Khlebnikov authored
      Skb_gso_segment() uses skb control block during segmentation.
      This patch adds 32-bytes room for previous control block which
      will be copied into all resulting segments.
      
      This patch fixes kernel crash during fragmenting forwarded packets.
      Fragmentation requires valid IP CB in skb for clearing ip options.
      Also patch removes custom save/restore in ovs code, now it's redundant.
      Signed-off-by: default avatarKonstantin Khlebnikov <koct9i@gmail.com>
      Link: http://lkml.kernel.org/r/CALYGNiP-0MZ-FExV2HutTvE9U-QQtkKSoE--KN=JQE5STYsjAA@mail.gmail.comSigned-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      9207f9d4
  2. 14 Jan, 2016 1 commit
  3. 13 Jan, 2016 23 commits
    • wangweidong's avatar
      hip04_eth: fix missing error handle for build_skb failed · 701a0fd5
      wangweidong authored
      when build_skb failed, we should goto refill the buffer.
      Signed-off-by: default avatarWeidong Wang <wangweidong1@huawei.com>
      Acked-by: default avatarDing Tainhong <dingtianhong@huawei.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      701a0fd5
    • David S. Miller's avatar
      Merge tag 'batman-adv-fix-for-davem' of git://git.open-mesh.org/linux-merge · 1adbfc43
      David S. Miller authored
      Antonio Quartulli says:
      
      ====================
      net: batman-adv 20160114
      
      Included bugfixes:
      - avoid freeing batadv_hardif_neigh_node when still in use in other contexts
      - prevent lockdep splat in mcast_free during shutdown
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      1adbfc43
    • David S. Miller's avatar
      Merge branch '3c59x-dma-fixes' · e752991a
      David S. Miller authored
      Neil Horman says:
      
      ====================
      3c59x: Fix dma map/unmap imbalances
      
      	recent enhancements to libdma revealed a few minor bugs in 3c59x, in
      which dma ranges were mapped as singles and unmaped as pages, or vice versa.
      These patches fix those up.  Tested by myself with success
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      e752991a
    • Neil Horman's avatar
      3c59x: fix another page map/single unmap imbalance · 6e144419
      Neil Horman authored
      libdma debug found another page map/unmap imbalance in 3c59x.  Multi fragment
      frames are mapped such that the lead fragment was mapped as a single entry,
      while all other fragments were mapped as pages.  However, on unmapping they were
      all unmapped as pages.  Fix is pretty easy, just unmap the lead frag as a single
      entry, and bump the for loop initalization up by one so that all subsequent
      frags get unmapped as pages
      Signed-off-by: default avatarNeil Horman <nhorman@tuxdriver.com>
      CC: "David S. Miller" <davem@davemloft.net>
      CC: Steffen Klassert <klassert@mathematik.tu-chemnitz.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      6e144419
    • Neil Horman's avatar
      3c59x: balance page maps and unmaps · 7356f4e4
      Neil Horman authored
      debug kernel noticed a screw up in 3c59x.  skbs being mapped as page were being
      unmapped as singles.  Easy fix.  Tested by myself
      
      Signed-off-by: Neil Horman <nhorman@tuxdriver.com
      CC: "David S. Miller" <davem@davemloft.net>
      CC: Steffen Klassert <klassert@mathematik.tu-chemnitz.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      7356f4e4
    • David S. Miller's avatar
      x25_asy: Free x25_asy on x25_asy_open() failure. · 3b780bed
      David S. Miller authored
      Based upon a report by Dmitry Vyukov.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      3b780bed
    • Dan Carpenter's avatar
      mlxsw: fix SWITCHDEV_OBJ_ID_PORT_MDB · 00ae40e7
      Dan Carpenter authored
      There is a missing break statement so we always return -EOPNOTSUPP.
      
      Fixes: 3a49b4fd ('mlxsw: Adding layer 2 multicast support')
      Signed-off-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
      Acked-by: default avatarJiri Pirko <jiri@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      00ae40e7
    • David S. Miller's avatar
      genetlink: Fix off-by-one in genl_allocate_reserve_groups() · b8e429a2
      David S. Miller authored
      The bug fix for adding n_groups to the computation forgot
      to adjust ">=" to ">" to keep the condition correct.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b8e429a2
    • Sven Eckelmann's avatar
      batman-adv: Fix list removal of batadv_hardif_neigh_node · bab7c6c3
      Sven Eckelmann authored
      The neigh_list with batadv_hardif_neigh_node objects is accessed with only
      rcu_read_lock in batadv_hardif_neigh_get and batadv_iv_neigh_print. Thus it
      is not allowed to kfree the object before the rcu grace period ends (which
      may still protects context accessing this object). Therefore the object has
      first to be removed from the neigh_list and then it has either wait with
      synchronize_rcu or call_rcu till the grace period ends before it can be
      freed.
      
      Fixes: cef63419 ("batman-adv: add list of unique single hop neighbors per hard-interface")
      Signed-off-by: default avatarSven Eckelmann <sven@narfation.org>
      Signed-off-by: default avatarMarek Lindner <mareklindner@neomailbox.ch>
      Signed-off-by: default avatarAntonio Quartulli <a@unstable.cc>
      bab7c6c3
    • Simon Wunderlich's avatar
      batman-adv: fix lockdep splat when doing mcast_free · af63cf51
      Simon Wunderlich authored
      While testing, we got something like this:
      
      WARNING: CPU: 0 PID: 238 at net/batman-adv/multicast.c:142 batadv_mcast_mla_tt_retract+0x94/0x205 [batman_adv]()
      [...]
      Call Trace:
      [<ffffffff815fc597>] dump_stack+0x4b/0x64
      [<ffffffff810b34dc>] warn_slowpath_common+0xbc/0x120
      [<ffffffffa0024ec5>] ? batadv_mcast_mla_tt_retract+0x94/0x205 [batman_adv]
      [<ffffffff810b3705>] warn_slowpath_null+0x15/0x20
      [<ffffffffa0024ec5>] batadv_mcast_mla_tt_retract+0x94/0x205 [batman_adv]
      [<ffffffffa00273fe>] batadv_mcast_free+0x36/0x39 [batman_adv]
      [<ffffffffa0020c77>] batadv_mesh_free+0x7d/0x13f [batman_adv]
      [<ffffffffa0036a6b>] batadv_softif_free+0x15/0x25 [batman_adv]
      [...]
      Signed-off-by: default avatarSimon Wunderlich <simon@open-mesh.com>
      Signed-off-by: default avatarMarek Lindner <mareklindner@neomailbox.ch>
      Signed-off-by: default avatarAntonio Quartulli <a@unstable.cc>
      af63cf51
    • wangweidong's avatar
      bgmac: fix a missing check for build_skb · f1640c3d
      wangweidong authored
      when build_skb failed, it may occure a NULL pointer.
      So add a 'NULL check' for it.
      Signed-off-by: default avatarWeidong Wang <wangweidong1@huawei.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f1640c3d
    • David S. Miller's avatar
    • Linus Torvalds's avatar
      Merge tag 'pm+acpi-4.5-rc1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 67990608
      Linus Torvalds authored
      Pull oower management and ACPI updates from Rafael Wysocki:
       "As far as the number of commits goes, ACPICA takes the lead this time,
        followed by cpufreq and the device properties framework changes.
      
        The most significant new feature is the debugfs-based interface to the
        ACPICA's AML debugger added in the previous cycle and a new user space
        tool for accessing it.
      
        On the cpufreq front, the core is updated to handle governors more
        efficiently, particularly on systems where a single cpufreq policy
        object is shared between multiple CPUs, and there are quite a few
        changes in drivers (intel_pstate, cpufreq-dt etc).
      
        The device properties framework is updated to handle built-in (ie
        included in the kernel itself) device properties better, among other
        things by adding a fallback mechanism that will allow drivers to
        provide default properties to be used in case the plaform firmware
        doesn't provide the properties expected by them.
      
        The Operating Performance Points (OPP) framework gets new DT bindings
        and debugfs support.
      
        A new cpufreq driver for ST platforms is added and the ACPI driver for
        AMD SoCs will now support the APM X-Gene ACPI I2C device.
      
        The rest is mostly fixes and cleanups all over.
      
        Specifics:
      
         - Add a debugfs-based interface for interacting with the ACPICA's AML
           debugger introduced in the previous cycle and a new user space tool
           for that, fix some bugs related to the AML debugger and clean up
           the code in question (Lv Zheng, Dan Carpenter, Colin Ian King,
           Markus Elfring).
      
         - Update ACPICA to upstream revision 20151218 including a number of
           fixes and cleanups in the ACPICA core (Bob Moore, Lv Zheng, Labbe
           Corentin, Prarit Bhargava, Colin Ian King, David E Box, Rafael
           Wysocki).
      
           In particular, the previously added erroneous support for the _SUB
           object is dropped, the concatenate operator will support all ACPI
           objects now, the Debug Object handling is improved, the SuperName
           handling of parameters being control methods is fixed, the
           ObjectType operator handling is updated to follow ACPI 5.0A and the
           handling of CondRefOf and RefOf is updated accordingly, module-
           level code will be executed after loading each ACPI table now
           (instead of being run once after all tables containing AML have
           been loaded), the Operation Region handlers management is updated
           to fix some reported problems and a the ACPICA code in the kernel
           is more in line with the upstream now.
      
         - Update the ACPI backlight driver to provide information on whether
           or not it will generate key-presses for brightness change hotkeys
           and update some platform drivers (dell-wmi, thinkpad_acpi) to use
           that information to avoid sending double key-events to users pace
           for these, add new ACPI backlight quirks (Hans de Goede, Aaron Lu,
           Adrien Schildknecht).
      
         - Improve the ACPI handling of interrupt GPIOs (Christophe Ricard).
      
         - Fix the handling of the list of device IDs of device objects found
           in the ACPI namespace and add a helper for checking if there is a
           device object for a given device ID (Lukas Wunner).
      
         - Change the logic in the ACPI namespace scanning code to create
           struct acpi_device objects for all ACPI device objects found in the
           namespace even if _STA fails for them which helps to avoid device
           enumeration problems on Microsoft Surface 3 (Aaron Lu).
      
         - Add support for the APM X-Gene ACPI I2C device to the ACPI driver
           for AMD SoCs (Loc Ho).
      
         - Fix the long-standing issue with the DMA controller on Intel SoCs
           where ACPI tables have no power management support for the DMA
           controller itself, but it can be powered off automatically when the
           last (other) device on the SoC is powered off via ACPI and clean up
           the ACPI driver for Intel SoCs (acpi-lpss) after previous attempts
           to fix that problem (Andy Shevchenko).
      
         - Assorted ACPI fixes and cleanups (Andy Lutomirski, Colin Ian King,
           Javier Martinez Canillas, Ken Xue, Mathias Krause, Rafael Wysocki,
           Sinan Kaya).
      
         - Update the device properties framework for better handling of
           built-in properties, add support for built-in properties to the
           platform bus type, update the MFD subsystem's handling of device
           properties and add support for passing default configuration data
           as device properties to the intel-lpss MFD drivers, convert the
           designware I2C driver to use the unified device properties API and
           add a fallback mechanism for using default built-in properties if
           the platform firmware fails to provide the properties as expected
           by drivers (Andy Shevchenko, Mika Westerberg, Heikki Krogerus,
           Andrew Morton).
      
         - Add new Device Tree bindings to the Operating Performance Points
           (OPP) framework and update the exynos4412 DT binding accordingly,
           introduce debugfs support for the OPP framework (Viresh Kumar,
           Bartlomiej Zolnierkiewicz).
      
         - Migrate the mt8173 cpufreq driver to the new OPP bindings (Pi-Cheng
           Chen).
      
         - Update the cpufreq core to make the handling of governors more
           efficient, especially on systems where policy objects are shared
           between multiple CPUs (Viresh Kumar, Rafael Wysocki).
      
         - Fix cpufreq governor handling on configurations with
           CONFIG_HZ_PERIODIC set (Chen Yu).
      
         - Clean up the cpufreq core code related to the boost sysfs knob
           support and update the ACPI cpufreq driver accordingly (Rafael
           Wysocki).
      
         - Add a new cpufreq driver for ST platforms and corresponding Device
           Tree bindings (Lee Jones).
      
         - Update the intel_pstate driver to allow the P-state selection
           algorithm used by it to depend on the CPU ID of the processor it is
           running on, make it use a special P-state selection algorithm (with
           an IO wait time compensation tweak) on Atom CPUs based on the
           Airmont and Silvermont cores so as to reduce their energy
           consumption and improve intel_pstate documentation (Philippe
           Longepe, Srinivas Pandruvada).
      
         - Update the cpufreq-dt driver to support registering cooling devices
           that use the (P * V^2 * f) dynamic power draw formula where V is
           the voltage, f is the frequency and P is a constant coefficient
           provided by Device Tree and update the arm_big_little cpufreq
           driver to use that support (Punit Agrawal).
      
         - Assorted cpufreq driver (cpufreq-dt, qoriq, pcc-cpufreq,
           blackfin-cpufreq) updates (Andrzej Hajda, Hongtao Jia, Jacob
           Tanenbaum, Markus Elfring).
      
         - cpuidle core tweaks related to polling and measured_us calculation
           (Rik van Riel).
      
         - Removal of modularity from a few cpuidle drivers (clps711x, ux500,
           exynos) that cannot be built as modules in practice (Paul
           Gortmaker).
      
         - PM core update to prevent devices from being probed during system
           suspend/resume which is generally problematic and may lead to
           inconsistent behavior (Grygorii Strashko).
      
         - Assorted updates of the PM core and related code (Julia Lawall,
           Manuel Pégourié-Gonnard, Maruthi Bayyavarapu, Rafael Wysocki, Ulf
           Hansson).
      
         - PNP bus type updates (Christophe Le Roy, Heiner Kallweit).
      
         - PCI PM code cleanups (Jarkko Nikula, Julia Lawall).
      
         - cpupower tool updates (Jacob Tanenbaum, Thomas Renninger)"
      
      * tag 'pm+acpi-4.5-rc1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (177 commits)
        PM / clk: don't leave clocks enabled when driver not bound
        i2c: dw: Add APM X-Gene ACPI I2C device support
        ACPI / APD: Add APM X-Gene ACPI I2C device support
        ACPI / LPSS: change 'does not have' to 'has' in comment
        Revert "dmaengine: dw: platform: provide platform data for Intel"
        dmaengine: dw: return immediately from IRQ when DMA isn't in use
        dmaengine: dw: platform: power on device on shutdown
        ACPI / LPSS: override power state for LPSS DMA device
        PM / OPP: Use snprintf() instead of sprintf()
        Documentation: cpufreq: intel_pstate: enhance documentation
        ACPI, PCI, irq: remove redundant check for null string pointer
        ACPI / video: driver must be registered before checking for keypresses
        cpufreq-dt: fix handling regulator_get_voltage() result
        cpufreq: governor: Fix negative idle_time when configured with CONFIG_HZ_PERIODIC
        PM / sleep: Add support for read-only sysfs attributes
        ACPI: Fix white space in a structure definition
        ACPI / SBS: fix inconsistent indenting inside if statement
        PNP: respect PNP_DRIVER_RES_DO_NOT_CHANGE when detaching
        ACPI / PNP: constify device IDs
        ACPI / PCI: Simplify acpi_penalize_isa_irq()
        ...
      67990608
    • Linus Torvalds's avatar
      Merge tag 'trace-v4.5' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · c17488d0
      Linus Torvalds authored
      Pull tracing updates from Steven Rostedt:
       "Not much new with tracing for this release.  Mostly just clean ups and
        minor fixes.
      
        Here's what else is new:
      
         - A new TRACE_EVENT_FN_COND macro, combining both _FN and _COND for
           those that want both.
      
         - New selftest to test the instance create and delete
      
         - Better debug output when ftrace fails"
      
      * tag 'trace-v4.5' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (24 commits)
        ftrace: Fix the race between ftrace and insmod
        ftrace: Add infrastructure for delayed enabling of module functions
        x86: ftrace: Fix the comments for ftrace_modify_code_direct()
        tracing: Fix comment to use tracing_on over tracing_enable
        metag: ftrace: Fix the comments for ftrace_modify_code
        sh: ftrace: Fix the comments for ftrace_modify_code()
        ia64: ftrace: Fix the comments for ftrace_modify_code()
        ftrace: Clean up ftrace_module_init() code
        ftrace: Join functions ftrace_module_init() and ftrace_init_module()
        tracing: Introduce TRACE_EVENT_FN_COND macro
        tracing: Use seq_buf_used() in seq_buf_to_user() instead of len
        bpf: Constify bpf_verifier_ops structure
        ftrace: Have ftrace_ops_get_func() handle RCU and PER_CPU flags too
        ftrace: Remove use of control list and ops
        ftrace: Fix output of enabled_functions for showing tramp
        ftrace: Fix a typo in comment
        ftrace: Show all tramps registered to a record on ftrace_bug()
        ftrace: Add variable ftrace_expected for archs to show expected code
        ftrace: Add new type to distinguish what kind of ftrace_bug()
        tracing: Update cond flag when enabling or disabling a trigger
        ...
      c17488d0
    • Linus Torvalds's avatar
      Merge branch 'for-4.5' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · 34a9304a
      Linus Torvalds authored
      Pull cgroup updates from Tejun Heo:
      
       - cgroup v2 interface is now official.  It's no longer hidden behind a
         devel flag and can be mounted using the new cgroup2 fs type.
      
         Unfortunately, cpu v2 interface hasn't made it yet due to the
         discussion around in-process hierarchical resource distribution and
         only memory and io controllers can be used on the v2 interface at the
         moment.
      
       - The existing documentation which has always been a bit of mess is
         relocated under Documentation/cgroup-v1/. Documentation/cgroup-v2.txt
         is added as the authoritative documentation for the v2 interface.
      
       - Some features are added through for-4.5-ancestor-test branch to
         enable netfilter xt_cgroup match to use cgroup v2 paths.  The actual
         netfilter changes will be merged through the net tree which pulled in
         the said branch.
      
       - Various cleanups
      
      * 'for-4.5' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        cgroup: rename cgroup documentations
        cgroup: fix a typo.
        cgroup: Remove resource_counter.txt in Documentation/cgroup-legacy/00-INDEX.
        cgroup: demote subsystem init messages to KERN_DEBUG
        cgroup: Fix uninitialized variable warning
        cgroup: put controller Kconfig options in meaningful order
        cgroup: clean up the kernel configuration menu nomenclature
        cgroup_pids: fix a typo.
        Subject: cgroup: Fix incomplete dd command in blkio documentation
        cgroup: kill cgrp_ss_priv[CGROUP_CANFORK_COUNT] and friends
        cpuset: Replace all instances of time_t with time64_t
        cgroup: replace unified-hierarchy.txt with a proper cgroup v2 documentation
        cgroup: rename Documentation/cgroups/ to Documentation/cgroup-legacy/
        cgroup: replace __DEVEL__sane_behavior with cgroup2 fs type
      34a9304a
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next · aee3bfa3
      Linus Torvalds authored
      Pull networking updates from Davic Miller:
      
       1) Support busy polling generically, for all NAPI drivers.  From Eric
          Dumazet.
      
       2) Add byte/packet counter support to nft_ct, from Floriani Westphal.
      
       3) Add RSS/XPS support to mvneta driver, from Gregory Clement.
      
       4) Implement IPV6_HDRINCL socket option for raw sockets, from Hannes
          Frederic Sowa.
      
       5) Add support for T6 adapter to cxgb4 driver, from Hariprasad Shenai.
      
       6) Add support for VLAN device bridging to mlxsw switch driver, from
          Ido Schimmel.
      
       7) Add driver for Netronome NFP4000/NFP6000, from Jakub Kicinski.
      
       8) Provide hwmon interface to mlxsw switch driver, from Jiri Pirko.
      
       9) Reorganize wireless drivers into per-vendor directories just like we
          do for ethernet drivers.  From Kalle Valo.
      
      10) Provide a way for administrators "destroy" connected sockets via the
          SOCK_DESTROY socket netlink diag operation.  From Lorenzo Colitti.
      
      11) Add support to add/remove multicast routes via netlink, from Nikolay
          Aleksandrov.
      
      12) Make TCP keepalive settings per-namespace, from Nikolay Borisov.
      
      13) Add forwarding and packet duplication facilities to nf_tables, from
          Pablo Neira Ayuso.
      
      14) Dead route support in MPLS, from Roopa Prabhu.
      
      15) TSO support for thunderx chips, from Sunil Goutham.
      
      16) Add driver for IBM's System i/p VNIC protocol, from Thomas Falcon.
      
      17) Rationalize, consolidate, and more completely document the checksum
          offloading facilities in the networking stack.  From Tom Herbert.
      
      18) Support aborting an ongoing scan in mac80211/cfg80211, from
          Vidyullatha Kanchanapally.
      
      19) Use per-bucket spinlock for bpf hash facility, from Tom Leiming.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1375 commits)
        net: bnxt: always return values from _bnxt_get_max_rings
        net: bpf: reject invalid shifts
        phonet: properly unshare skbs in phonet_rcv()
        dwc_eth_qos: Fix dma address for multi-fragment skbs
        phy: remove an unneeded condition
        mdio: remove an unneed condition
        mdio_bus: NULL dereference on allocation error
        net: Fix typo in netdev_intersect_features
        net: freescale: mac-fec: Fix build error from phy_device API change
        net: freescale: ucc_geth: Fix build error from phy_device API change
        bonding: Prevent IPv6 link local address on enslaved devices
        IB/mlx5: Add flow steering support
        net/mlx5_core: Export flow steering API
        net/mlx5_core: Make ipv4/ipv6 location more clear
        net/mlx5_core: Enable flow steering support for the IB driver
        net/mlx5_core: Initialize namespaces only when supported by device
        net/mlx5_core: Set priority attributes
        net/mlx5_core: Connect flow tables
        net/mlx5_core: Introduce modify flow table command
        net/mlx5_core: Managing root flow table
        ...
      aee3bfa3
    • Linus Torvalds's avatar
      Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · c597b6bc
      Linus Torvalds authored
      Pull crypto update from Herbert Xu:
       "Algorithms:
         - Add RSA padding algorithm
      
        Drivers:
         - Add GCM mode support to atmel
         - Add atmel support for SAMA5D2 devices
         - Add cipher modes to talitos
         - Add rockchip driver for rk3288
         - Add qat support for C3XXX and C62X"
      
      * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (103 commits)
        crypto: hifn_795x, picoxcell - use ablkcipher_request_cast
        crypto: qat - fix SKU definiftion for c3xxx dev
        crypto: qat - Fix random config build issue
        crypto: ccp - use to_pci_dev and to_platform_device
        crypto: qat - Rename dh895xcc mmp firmware
        crypto: 842 - remove WARN inside printk
        crypto: atmel-aes - add debug facilities to monitor register accesses.
        crypto: atmel-aes - add support to GCM mode
        crypto: atmel-aes - change the DMA threshold
        crypto: atmel-aes - fix the counter overflow in CTR mode
        crypto: atmel-aes - fix atmel-ctr-aes driver for RFC 3686
        crypto: atmel-aes - create sections to regroup functions by usage
        crypto: atmel-aes - fix typo and indentation
        crypto: atmel-aes - use SIZE_IN_WORDS() helper macro
        crypto: atmel-aes - improve performances of data transfer
        crypto: atmel-aes - fix atmel_aes_remove()
        crypto: atmel-aes - remove useless AES_FLAGS_DMA flag
        crypto: atmel-aes - reduce latency of DMA completion
        crypto: atmel-aes - remove unused 'err' member of struct atmel_aes_dev
        crypto: atmel-aes - rework crypto request completion
        ...
      c597b6bc
    • Linus Torvalds's avatar
      Merge tag 'upstream-4.5-rc1' of git://git.infradead.org/linux-ubifs · 60b7eca1
      Linus Torvalds authored
      Pull UBI/UBIFS updates from Richard Weinberger:
       "This contains three changes - two cleanups and one UBI wear leveling
        improvement by Sebastian Siewior"
      
      * tag 'upstream-4.5-rc1' of git://git.infradead.org/linux-ubifs:
        ubifs: Use XATTR_*_PREFIX_LEN
        UBIFS: add a comment in key.h for unused parameter
        mtd: ubi: wl: avoid erasing a PEB which is empty
      60b7eca1
    • Linus Torvalds's avatar
      Merge tag 'configfs-for-linus' of git://git.infradead.org/users/hch/configfs · 420d12d6
      Linus Torvalds authored
      Pull configfs updates from Christoph Hellwig:
       "I'm assisting Joel as co-maintainer and patch monkey now, and you will
        see pull reuquests from me for a while.
      
        Besides the MAINTAINERS update there is just a single change, which
        adds support for binary attributes to configfs, which are very similar
        to the sysfs binary attributes.  Thanks to Pantelis Antoniou!
      
        You will see another actually bigger set of configfs changes in the
        SCSI target pull from Nic - those were merged before this new tree
        even existed"
      
      * tag 'configfs-for-linus' of git://git.infradead.org/users/hch/configfs:
        configfs: add myself as co-maintainer, updated git tree
        configfs: implement binary attributes
      420d12d6
    • Linus Torvalds's avatar
      Merge tag 'gfs2-merge-window' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2 · 4d589677
      Linus Torvalds authored
      Pull GFS2 updates from Bob Peterson:
       "Here is a list of patches we've accumulated for GFS2 for the current
        upstream merge window.  Last window's set was short, but I warned that
        this one would be bigger, and so it is.  We've got 19 patches:
      
         - A patch from Abhi Das to propagate the GFS2_DIF_SYSTEM bit so that
           newly added journals don't get flagged, deleted, and recreated by
           fsck.gfs2.
      
         - Two patches from Andreas Gruenbacher to improve GFS2 performance
           where extended attributes are involved.
      
         - A patch from Andy Price to fix a suspicious rcu dereference error.
      
         - Two patches from Ben Marzinski that rework how GFS2's NFS cookies
           are managed.  This fixes readdir problems with nfs-over-gfs2.
      
         - A patch from Ben Marzinski that fixes a race in unmounting GFS2.
      
         - A set of four patches from me to move the resource group
           reservations inside the gfs2 inode to improve performance and fix a
           bug whereby get_write_access improperly prevented some operations
           like chown.
      
         - A patch from me to spinlock-protect the setting of system statfs
           file data.  This was causing small discrepancies between df and du.
      
         - A patch from me to reintroduce a timeout while clearing glocks
           which was accidentally dropped some time ago.
      
         - A patch from me to wait for iopen glock dequeues in order to
           improve deleting of files that were unlinked from a different
           cluster node.
      
         - A patch from me to ensure metadata address spaces get truncated
           when an inode is evicted.
      
         - A patch from me to fix a bug in which a memory leak could occur in
           some error cases when inodes were trying to be created.
      
         - A patch to consistently use iopen glocks to transition from the
           unlinked state to the deleted state.
      
         - A patch to fix a glock reference count error when inode creation
           fails.
      
         - A patch from Junxiao Bi to fix an flock panic.
      
         - A patch from Markus Elfring that removes an unnecessary if"
      
      * tag 'gfs2-merge-window' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2:
        gfs2: fix flock panic issue
        GFS2: Don't do glock put on when inode creation fails
        GFS2: Always use iopen glock for gl_deletes
        GFS2: Release iopen glock in gfs2_create_inode error cases
        GFS2: Truncate address space mapping when deleting an inode
        GFS2: Wait for iopen glock dequeues
        gfs2: clear journal live bit in	gfs2_log_flush
        gfs2: change gfs2 readdir cookie
        gfs2: keep offset when splitting dir leaf blocks
        GFS2: Reintroduce a timeout in function gfs2_gl_hash_clear
        GFS2: Update master statfs buffer with sd_statfs_spin locked
        GFS2: Reduce size of incore inode
        GFS2: Make rgrp reservations part of the gfs2_inode structure
        GFS2: Extract quota data from reservations structure (revert 5407e242)
        gfs2: Extended attribute readahead optimization
        gfs2: Extended attribute readahead
        GFS2: Use rht_for_each_entry_rcu in glock_hash_walk
        GFS2: Delete an unnecessary check before the function call "iput"
        gfs2: Automatically set GFS2_DIF_SYSTEM flag on system files
      4d589677
    • Linus Torvalds's avatar
      Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 33caf82a
      Linus Torvalds authored
      Pull misc vfs updates from Al Viro:
       "All kinds of stuff.  That probably should've been 5 or 6 separate
        branches, but by the time I'd realized how large and mixed that bag
        had become it had been too close to -final to play with rebasing.
      
        Some fs/namei.c cleanups there, memdup_user_nul() introduction and
        switching open-coded instances, burying long-dead code, whack-a-mole
        of various kinds, several new helpers for ->llseek(), assorted
        cleanups and fixes from various people, etc.
      
        One piece probably deserves special mention - Neil's
        lookup_one_len_unlocked().  Similar to lookup_one_len(), but gets
        called without ->i_mutex and tries to avoid ever taking it.  That, of
        course, means that it's not useful for any directory modifications,
        but things like getting inode attributes in nfds readdirplus are fine
        with that.  I really should've asked for moratorium on lookup-related
        changes this cycle, but since I hadn't done that early enough...  I
        *am* asking for that for the coming cycle, though - I'm going to try
        and get conversion of i_mutex to rwsem with ->lookup() done under lock
        taken shared.
      
        There will be a patch closer to the end of the window, along the lines
        of the one Linus had posted last May - mechanical conversion of
        ->i_mutex accesses to inode_lock()/inode_unlock()/inode_trylock()/
        inode_is_locked()/inode_lock_nested().  To quote Linus back then:
      
          -----
          |    This is an automated patch using
          |
          |        sed 's/mutex_lock(&\(.*\)->i_mutex)/inode_lock(\1)/'
          |        sed 's/mutex_unlock(&\(.*\)->i_mutex)/inode_unlock(\1)/'
          |        sed 's/mutex_lock_nested(&\(.*\)->i_mutex,[     ]*I_MUTEX_\([A-Z0-9_]*\))/inode_lock_nested(\1, I_MUTEX_\2)/'
          |        sed 's/mutex_is_locked(&\(.*\)->i_mutex)/inode_is_locked(\1)/'
          |        sed 's/mutex_trylock(&\(.*\)->i_mutex)/inode_trylock(\1)/'
          |
          |    with a very few manual fixups
          -----
      
        I'm going to send that once the ->i_mutex-affecting stuff in -next
        gets mostly merged (or when Linus says he's about to stop taking
        merges)"
      
      * 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (63 commits)
        nfsd: don't hold i_mutex over userspace upcalls
        fs:affs:Replace time_t with time64_t
        fs/9p: use fscache mutex rather than spinlock
        proc: add a reschedule point in proc_readfd_common()
        logfs: constify logfs_block_ops structures
        fcntl: allow to set O_DIRECT flag on pipe
        fs: __generic_file_splice_read retry lookup on AOP_TRUNCATED_PAGE
        fs: xattr: Use kvfree()
        [s390] page_to_phys() always returns a multiple of PAGE_SIZE
        nbd: use ->compat_ioctl()
        fs: use block_device name vsprintf helper
        lib/vsprintf: add %*pg format specifier
        fs: use gendisk->disk_name where possible
        poll: plug an unused argument to do_poll
        amdkfd: don't open-code memdup_user()
        cdrom: don't open-code memdup_user()
        rsxx: don't open-code memdup_user()
        mtip32xx: don't open-code memdup_user()
        [um] mconsole: don't open-code memdup_user_nul()
        [um] hostaudio: don't open-code memdup_user()
        ...
      33caf82a
    • Linus Torvalds's avatar
      Merge branch 'work.iov_iter' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · ca9706a2
      Linus Torvalds authored
      Pull iov_iter infrastructure updates from Al Viro:
       "A couple of iov_iter updates"
      
      * 'work.iov_iter' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        iov_iter: export import_single_range()
        iov_iter: constify {csum_and_,}copy_to_iter()
      ca9706a2
    • Linus Torvalds's avatar
      Merge branch 'work.copy_file_range' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · fce205e9
      Linus Torvalds authored
      Pull vfs copy_file_range updates from Al Viro:
       "Several series around copy_file_range/CLONE"
      
      * 'work.copy_file_range' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        btrfs: use new dedupe data function pointer
        vfs: hoist the btrfs deduplication ioctl to the vfs
        vfs: wire up compat ioctl for CLONE/CLONE_RANGE
        cifs: avoid unused variable and label
        nfsd: implement the NFSv4.2 CLONE operation
        nfsd: Pass filehandle to nfs4_preprocess_stateid_op()
        vfs: pull btrfs clone API to vfs layer
        locks: new locks_mandatory_area calling convention
        vfs: Add vfs_copy_file_range() support for pagecache copies
        btrfs: add .copy_file_range file operation
        x86: add sys_copy_file_range to syscall tables
        vfs: add copy_file_range syscall and vfs helper
      fce205e9
  4. 12 Jan, 2016 1 commit
    • Linus Torvalds's avatar
      Merge tag 'locks-v4.5-1' of git://git.samba.org/jlayton/linux · 065019a3
      Linus Torvalds authored
      Pull file locking updates from Jeff Layton:
       "File locking related changes for v4.5 (pile #1)
      
        Highlights:
         - new Kconfig option to allow disabling mandatory locking (which is
           racy anyway)
         - new tracepoints for setlk and close codepaths
         - fix for a long-standing bug in code that handles races between
           setting a POSIX lock and close()"
      
      * tag 'locks-v4.5-1' of git://git.samba.org/jlayton/linux:
        locks: rename __posix_lock_file to posix_lock_inode
        locks: prink more detail when there are leaked locks
        locks: pass inode pointer to locks_free_lock_context
        locks: sprinkle some tracepoints around the file locking code
        locks: don't check for race with close when setting OFD lock
        locks: fix unlock when fcntl_setlk races with a close
        fs: make locks.c explicitly non-modular
        locks: use list_first_entry_or_null()
        locks: Don't allow mounts in user namespaces to enable mandatory locking
        locks: Allow disabling mandatory locking at compile time
      065019a3