1. 01 3月, 2017 1 次提交
  2. 28 2月, 2017 7 次提交
  3. 27 2月, 2017 4 次提交
  4. 24 2月, 2017 1 次提交
  5. 21 2月, 2017 1 次提交
  6. 19 2月, 2017 4 次提交
  7. 17 2月, 2017 1 次提交
    • N
      drm/ttm: make TTM_MAX_BO_PRIORITY unsigned · 5187b6cd
      Nicolai Hähnle 提交于
      Fix a warning about different types in min() macro in amdgpu:
      
      In file included from ./include/linux/list.h:8:0,
                       from drivers/gpu/drm/amd/amdgpu/amdgpu_object.c:32:
      drivers/gpu/drm/amd/amdgpu/amdgpu_object.c: In function ‘amdgpu_bo_create_restricted’:
      ./include/linux/kernel.h:739:16: warning: comparison of distinct pointer types lacks a cast
        (void) (&min1 == &min2);   \
                      ^
      ./include/linux/kernel.h:742:2: note: in expansion of macro ‘__min’
        __min(typeof(x), typeof(y),   \
        ^~~~~
      drivers/gpu/drm/amd/amdgpu/amdgpu_object.c:434:21: note: in expansion of macro ‘min’
        bo->tbo.priority = min(bo->tbo.priority, TTM_MAX_BO_PRIORITY - 1);
                           ^~~
      Signed-off-by: NNicolai Hähnle <nicolai.haehnle@amd.com>
      Reviewed-by: NChristian König <christian.koenig@amd.com>
      Signed-off-by: NAlex Deucher <alexander.deucher@amd.com>
      5187b6cd
  8. 15 2月, 2017 2 次提交
  9. 12 2月, 2017 1 次提交
  10. 09 2月, 2017 6 次提交
    • T
      cpumask: use nr_cpumask_bits for parsing functions · 4d59b6cc
      Tejun Heo 提交于
      Commit 513e3d2d ("cpumask: always use nr_cpu_ids in formatting and
      parsing functions") converted both cpumask printing and parsing
      functions to use nr_cpu_ids instead of nr_cpumask_bits.  While this was
      okay for the printing functions as it just picked one of the two output
      formats that we were alternating between depending on a kernel config,
      doing the same for parsing wasn't okay.
      
      nr_cpumask_bits can be either nr_cpu_ids or NR_CPUS.  We can always use
      nr_cpu_ids but that is a variable while NR_CPUS is a constant, so it can
      be more efficient to use NR_CPUS when we can get away with it.
      Converting the printing functions to nr_cpu_ids makes sense because it
      affects how the masks get presented to userspace and doesn't break
      anything; however, using nr_cpu_ids for parsing functions can
      incorrectly leave the higher bits uninitialized while reading in these
      masks from userland.  As all testing and comparison functions use
      nr_cpumask_bits which can be larger than nr_cpu_ids, the parsed cpumasks
      can erroneously yield false negative results.
      
      This made the taskstats interface incorrectly return -EINVAL even when
      the inputs were correct.
      
      Fix it by restoring the parse functions to use nr_cpumask_bits instead
      of nr_cpu_ids.
      
      Link: http://lkml.kernel.org/r/20170206182442.GB31078@htj.duckdns.org
      Fixes: 513e3d2d ("cpumask: always use nr_cpu_ids in formatting and parsing functions")
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Reported-by: NMartin Steigerwald <martin.steigerwald@teamix.de>
      Debugged-by: NBen Hutchings <ben.hutchings@codethink.co.uk>
      Cc: <stable@vger.kernel.org>	[4.0+]
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      4d59b6cc
    • J
      mm: avoid returning VM_FAULT_RETRY from ->page_mkwrite handlers · 0911d004
      Jan Kara 提交于
      Some ->page_mkwrite handlers may return VM_FAULT_RETRY as its return
      code (GFS2 or Lustre can definitely do this).  However VM_FAULT_RETRY
      from ->page_mkwrite is completely unhandled by the mm code and results
      in locking and writeably mapping the page which definitely is not what
      the caller wanted.
      
      Fix Lustre and block_page_mkwrite_ret() used by other filesystems
      (notably GFS2) to return VM_FAULT_NOPAGE instead which results in
      bailing out from the fault code, the CPU then retries the access, and we
      fault again effectively doing what the handler wanted.
      
      Link: http://lkml.kernel.org/r/20170203150729.15863-1-jack@suse.czSigned-off-by: NJan Kara <jack@suse.cz>
      Reported-by: NAl Viro <viro@ZenIV.linux.org.uk>
      Reviewed-by: NJinshan Xiong <jinshan.xiong@intel.com>
      Cc: Matthew Wilcox <willy@infradead.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      0911d004
    • W
      net: introduce device min_header_len · 217e6fa2
      Willem de Bruijn 提交于
      The stack must not pass packets to device drivers that are shorter
      than the minimum link layer header length.
      
      Previously, packet sockets would drop packets smaller than or equal
      to dev->hard_header_len, but this has false positives. Zero length
      payload is used over Ethernet. Other link layer protocols support
      variable length headers. Support for validation of these protocols
      removed the min length check for all protocols.
      
      Introduce an explicit dev->min_header_len parameter and drop all
      packets below this value. Initially, set it to non-zero only for
      Ethernet and loopback. Other protocols can follow in a patch to
      net-next.
      
      Fixes: 9ed988cd ("packet: validate variable length ll headers")
      Reported-by: NSowmini Varadhan <sowmini.varadhan@oracle.com>
      Signed-off-by: NWillem de Bruijn <willemb@google.com>
      Acked-by: NEric Dumazet <edumazet@google.com>
      Acked-by: NSowmini Varadhan <sowmini.varadhan@oracle.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      217e6fa2
    • D
      lwtunnel: valid encap attr check should return 0 when lwtunnel is disabled · 2bd137de
      David Ahern 提交于
      An error was reported upgrading to 4.9.8:
          root@Typhoon:~# ip route add default table 210 nexthop dev eth0 via 10.68.64.1
          weight 1 nexthop dev eth0 via 10.68.64.2 weight 1
          RTNETLINK answers: Operation not supported
      
      The problem occurs when CONFIG_LWTUNNEL is not enabled and a multipath
      route is submitted.
      
      The point of lwtunnel_valid_encap_type_attr is catch modules that
      need to be loaded before any references are taken with rntl held. With
      CONFIG_LWTUNNEL disabled, there will be no modules to load so the
      lwtunnel_valid_encap_type_attr stub should just return 0.
      
      Fixes: 9ed59592 ("lwtunnel: fix autoload of lwt modules")
      Reported-by: pupilla@libero.it
      Signed-off-by: NDavid Ahern <dsa@cumulusnetworks.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2bd137de
    • L
      RDMA: Don't reference kernel private header from UAPI header · 646ebd41
      Leon Romanovsky 提交于
      Remove references to private kernel header and defines from exported
      ib_user_verb.h file.
      
      The code snippet below is used to reproduce the issue:
      
       #include <stdio.h>
       #include <rdma/ib_user_verb.h>
      
       int main(void)
       {
      	printf("IB_USER_VERBS_ABI_VERSION = %d\n", IB_USER_VERBS_ABI_VERSION);
      	return 0;
       }
      
      It fails during compilation phase with an error:
      ➜  /tmp gcc main.c
      main.c:2:31: fatal error: rdma/ib_user_verb.h: No such file or directory
       #include <rdma/ib_user_verb.h>
                                     ^
      compilation terminated.
      
      Fixes: 189aba99 ("IB/uverbs: Extend modify_qp and support packet pacing")
      CC: Bodong Wang <bodong@mellanox.com>
      CC: Matan Barak <matanb@mellanox.com>
      CC: Christoph Hellwig <hch@infradead.org>
      Tested-by: NSlava Shwartsman <slavash@mellanox.com>
      Signed-off-by: NLeon Romanovsky <leon@kernel.org>
      Signed-off-by: NDoug Ledford <dledford@redhat.com>
      646ebd41
    • N
      target: Fix multi-session dynamic se_node_acl double free OOPs · 01d4d673
      Nicholas Bellinger 提交于
      This patch addresses a long-standing bug with multi-session
      (eg: iscsi-target + iser-target) se_node_acl dynamic free
      withini transport_deregister_session().
      
      This bug is caused when a storage endpoint is configured with
      demo-mode (generate_node_acls = 1 + cache_dynamic_acls = 1)
      initiators, and initiator login creates a new dynamic node acl
      and attaches two sessions to it.
      
      After that, demo-mode for the storage instance is disabled via
      configfs (generate_node_acls = 0 + cache_dynamic_acls = 0) and
      the existing dynamic acl is never converted to an explicit ACL.
      
      The end result is dynamic acl resources are released twice when
      the sessions are shutdown in transport_deregister_session().
      
      If the storage instance is not changed to disable demo-mode,
      or the dynamic acl is converted to an explict ACL, or there
      is only a single session associated with the dynamic ACL,
      the bug is not triggered.
      
      To address this big, move the release of dynamic se_node_acl
      memory into target_complete_nacl() so it's only freed once
      when se_node_acl->acl_kref reaches zero.
      
      (Drop unnecessary list_del_init usage - HCH)
      Reported-by: NRob Millner <rlm@daterainc.com>
      Tested-by: NRob Millner <rlm@daterainc.com>
      Cc: Rob Millner <rlm@daterainc.com>
      Cc: stable@vger.kernel.org # 4.1+
      Signed-off-by: NNicholas Bellinger <nab@linux-iscsi.org>
      01d4d673
  11. 08 2月, 2017 4 次提交
  12. 07 2月, 2017 2 次提交
  13. 06 2月, 2017 1 次提交
  14. 05 2月, 2017 1 次提交
  15. 04 2月, 2017 4 次提交