1. 30 9月, 2016 1 次提交
    • D
      Merge tag 'drm/panel/for-4.9-rc1' of git://anongit.freedesktop.org/tegra/linux into drm-next · 011a9b9d
      Dave Airlie 提交于
      drm/panel: Changes for v4.9-rc1
      
      Adds support for one more panel to the simple-panel driver, fixes up a
      couple of delays and flags for existing panels and finally adds a new
      driver for the DSI panel found on Nexus 7 devices.
      
      * tag 'drm/panel/for-4.9-rc1' of git://anongit.freedesktop.org/tegra/linux:
        drm/panel: Add JDI LT070ME05000 WUXGA DSI Panel
        dt-bindings: Add JDI LT070ME05000 panel bindings
        drm/panel: simple: Fix bus_format for the Olimex LCD-OLinuXino-4.3TS
        drm/panel: simple-panel: Add delay timings for Starry KR122EA0SRA
        drm/panel: simple: Fix bus flags for Ortustech com43h4m85ulc
        drm/panel: simple: Add Innolux G101ICE-L01 panel
        drm/panel: simple: Add delay timing for Sharp LQ123P1JX31
        drm/dsi: Implement DCS set/get display brightness
        drm/dsi: Order DCS helpers by command code
      011a9b9d
  2. 28 9月, 2016 11 次提交
    • D
      Merge tag 'drm-qemu-20160921' of git://git.kraxel.org/linux into drm-next · c0d5fb4d
      Dave Airlie 提交于
      bugfixes for qemu (bochs, qxl and virtio-gpu) drm drivers
      
      * tag 'drm-qemu-20160921' of git://git.kraxel.org/linux:
        drm/virtio: add real fence context and seqno
        drm/virtio: drop virtio_gpu_execbuffer_ioctl() wrapping
        virtio-gpu: avoid possible NULL pointer dereference
        drm/qxl: reapply cursor after SetCrtc calls
        bochs: ignore device if there isn't enougth memory
      c0d5fb4d
    • D
      Merge tag 'v4.8-rc8' into drm-next · ca09fb9f
      Dave Airlie 提交于
      Linux 4.8-rc8
      
      There was a lot of fallout in the imx/amdgpu/i915 drivers, so backmerge
      it now to avoid troubles.
      
      * tag 'v4.8-rc8': (1442 commits)
        Linux 4.8-rc8
        fault_in_multipages_readable() throws set-but-unused error
        mm: check VMA flags to avoid invalid PROT_NONE NUMA balancing
        radix tree: fix sibling entry handling in radix_tree_descend()
        radix tree test suite: Test radix_tree_replace_slot() for multiorder entries
        fix memory leaks in tracing_buffers_splice_read()
        tracing: Move mutex to protect against resetting of seq data
        MIPS: Fix delay slot emulation count in debugfs
        MIPS: SMP: Fix possibility of deadlock when bringing CPUs online
        mm: delete unnecessary and unsafe init_tlb_ubc()
        huge tmpfs: fix Committed_AS leak
        shmem: fix tmpfs to handle the huge= option properly
        blk-mq: skip unmapped queues in blk_mq_alloc_request_hctx
        MIPS: Fix pre-r6 emulation FPU initialisation
        arm64: kgdb: handle read-only text / modules
        arm64: Call numa_store_cpu_info() earlier.
        locking/hung_task: Fix typo in CONFIG_DETECT_HUNG_TASK help text
        nvme-rdma: only clear queue flags after successful connect
        i2c: qup: skip qup_i2c_suspend if the device is already runtime suspended
        perf/core: Limit matching exclusive events to one PMU
        ...
      ca09fb9f
    • D
      Merge branch 'drm-next-4.9' of git://people.freedesktop.org/~agd5f/linux into drm-next · 9f4ef05b
      Dave Airlie 提交于
      Last set of radeon and amdgpu changes for 4.9.  This is
      mostly just the powerplay cleanup for dGPUs.  Beyond that,
      just misc code cleanups and bug fixes.
      
      * 'drm-next-4.9' of git://people.freedesktop.org/~agd5f/linux: (49 commits)
        drm/amd/amdgpu: Clean up afmt allocation in DCEv6. (v2)
        drm/amd/amdgpu: Remove division from vblank_wait
        drm/radeon/atif: Send a hotplug event when we get dgpu display request
        drm/radeon/atpx: check for ATIF dGPU wake for display events support
        drm/amdgpu/atif: Send a hotplug event when we get dgpu display request
        drm/amdgpu/atpx: check for ATIF dGPU wake for display events support
        drm/amdgpu: bump version for new vce packet support
        drm/amdgpu/vce: allow the clock table packet
        drm/amdgpu:cleanup virt related define
        drm/amdgpu: use powerplay module for dgpu in Vi.
        drm/amdgpu: set gfx clock gating for tonga/polaris.
        drm/amdgpu: set system clock gating for tonga/polaris.
        drm/amd/powerplay: export function to help to set cg by smu.
        drm/amdgpu: avoid out of bounds access on array interrupt_status_offsets
        drm/amdgpu: mark symbols static where possible
        drm/amdgpu: remove unused functions
        drm/amd/powerplay:  Replace per-asic print_performance with generic
        drm/radeon: narrow asic_init for virtualization
        drm/amdgpu:add fw version entry to info
        drm/amdgpu:determine if vPost is needed indeed
        ...
      9f4ef05b
    • D
      Merge branch 'drm-etnaviv-next' of git://git.pengutronix.de/git/lst/linux into drm-next · 81c5d6aa
      Dave Airlie 提交于
      Notable changes:
      
      - Cleanups from Fabio to some error paths and proper error propagation.
      
      - Lots of refactoring and new code to support the new MMU version 2,
      still relatively unoptimized and doesn't yet provide better process
      isolation than MMUv1, but enough to get newer cores up and running.
      
      - New hardware support: GC3000, as found on the NXP i.MX6 QuadPlus SoC.
      
      * 'drm-etnaviv-next' of git://git.pengutronix.de/git/lst/linux: (25 commits)
        drm/etnaviv: mark whole context as lost in recover worker
        drm/etnaviv: record correct cmdbuf IOVA in dump
        drm/etnaviv: space out IOVA layout for cmdbufs on MMUv2
        drm/etnaviv: fix up model and revision for GC2000+
        drm/etnaviv: implement IOMMUv2 translation
        drm/etnaviv: handle MMU exception in IRQ handler
        drm/etnaviv: add flushing logic for MMUv2
        drm/etnaviv: add function to construct MMUv2 init buffer
        drm/etnaviv: map cmdbuf through MMU on version 2
        drm/etnaviv: split out iova search and MMU reaping logic
        drm/etnaviv: split out FE start
        drm/etnaviv: split out wait for gpu idle
        drm/etnaviv: move gpu_va() to etnaviv mmu
        drm/etnaviv: remove unused iommu_v2 header
        drm/etnaviv: move IOMMU domain allocation into etnaviv MMU
        drm/etnaviv: indirect IOMMU restore through etnaviv MMU
        drm/etnaviv: move linear window setup into etnaviv_iommuv1_restore
        drm/etnaviv: rename etnaviv_iommu_domain_restore to etnaviv_iommuv1_restore
        drm/etnaviv: only check if the cmdbuf is inside the linear window on MMUv1
        drm/etnaviv: only try to use the linear window on MMUv1
        ...
      81c5d6aa
    • D
      Merge tag 'sunxi-drm-fixes-for-4.9' of... · a4a7fbb4
      Dave Airlie 提交于
      Merge tag 'sunxi-drm-fixes-for-4.9' of https://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux into drm-next
      
      Allwinner sun4i DRM fixes for 4.9
      
      A few fixes for the sun4i drm driver that range, including some fixes that
      might prevent multiple planes from working depending on the sequence where
      they are enabled.
      
      * tag 'sunxi-drm-fixes-for-4.9' of https://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux:
        drm/sun4i: Fix the high buffer address mask
        drm/sun4i: tv: Check mode pointer
        drm/sun4i: Fix formats usable by the primary plane
        drm/sun4i: dotclock: Round to closest clock rate
        drm/sun4i: Fix sparse warnings
        drm/sun4i: dotclock: Allow divider = 127
        drm/sun4i: dotclock: Fix clock rate read back calcation
        drm/sun4i: backend: remove redundant dev_err call in sun4i_backend_bind()
      a4a7fbb4
    • D
      Merge branch 'for-next' of ssh://people.freedesktop.org/~seanpaul/dogwood into drm-next · 378db830
      Dave Airlie 提交于
      I've included some improvements to PSR from myself, as well as a great
      series from Tomasz to clean up and tighten up vblank/flip handling.
      
      The last patch is one from Tomeu that has been floating around for a
      while, and since rockchip is one of the beneficiaries, I figured this
      would be a good place to pick it up.
      
      * 'for-next' of ssh://people.freedesktop.org/~seanpaul/dogwood:
        drm/rockchip: Balance irq refcount on failure
        drm/rockchip: Kill vop_plane_state
        drm/rockchip: Always signal event in next vblank after cfg_done
        drm/rockchip: Do not enable vblank without event
        drm/rockchip: Replace custom wait_for_vblanks with helper
        drm/rockchip: Unreference framebuffers from flip work
        drm/rockchip: Avoid race with vblank count increment
        drm/rockchip: Get rid of some unnecessary code
        drm/rockchip: Clear interrupt status bits before enabling
        drm/rockchip: Fix up bug in psr state machine
        drm/bridge: analogix_dp: Remove duplicated code
        drm/rockchip: Reduce psr flush time to 100ms
        drm/rockchip: Don't key off vblank for psr
      378db830
    • D
      Merge tag 'tilcdc-4.9-3.1' of https://github.com/jsarha/linux into drm-next · 662d5c95
      Dave Airlie 提交于
      Second attempt for 3rd drm/tilcdc pull request for v4.9.
      
      * tag 'tilcdc-4.9-3.1' of https://github.com/jsarha/linux:
        drm/tilcdc: fix wrong error handling
        drm/tilcdc: Return directly after a failed kfree_table_init() in tilcdc_convert_slave_node()
        drm/tilcdc: Remove "default" from blue-and-red-wiring property binding
        drm/tilcdc: Fix non static symbol warning
        drm/tilcdc: mark symbols static where possible
        drm/tilcdc: add missing header dependencies
        drm/tilcdc: WARN if CRTC is touched without CRTC lock
        drm/tilcdc: Take CRTC lock when calling tilcdc_crtc_disable()
        drm/tilcdc: Remove unnecessary tilcdc_crtc_disable() from tilcdc_unload()
        drm/tilcdc: Flush flip-work workqueue before drm_flip_work_cleanup()
        drm/tilcdc: Clean up LCDC functional clock rate setting code
        drm/tilcdc: Take crtc modeset lock while updating the crtc clock rate
      662d5c95
    • D
      Merge branch 'sti-drm-next-2016-09-20' of https://github.com/vinceab/linux into drm-next · f01ebbdb
      Dave Airlie 提交于
      Here are some patches for drm-next.
      It contains:
      - minor fixes for typo and warning.
      - sparse and coccicheck warning fixes
      - bunch of patches fixing issues found while testing drm/sti with an
      atomic version of weston
      - the removal of the support of stih415-416 sti platform
      
      * 'sti-drm-next-2016-09-20' of https://github.com/vinceab/linux:
        drm/sti: remove stih415-416 platform support
        drm/sti: fix compositor debugfs creation
        drm/sti: use valid video mode
        drm/sti: in crtc_atomic_flush, enable only planes of this crtc
        drm/sti: use vtg array instead of vtg_main/aux
        drm/sti: use different notifier_block for each pipe
        drm/sti: fix atomic_disable check
        drm/sti: run gdp init sequence only once
        drm/sti: run hqvdp init sequence only once
        drm/sti: fix debug logs
        drm/sti: dpms function missing for HDMI connector
        drm/sti: Fix sparse warnings
        drm: sti: fix coccicheck warnings
        drm: sti: Replace drm_fb_get_bpp_depth() with drm_format_plane_cpp()
      f01ebbdb
    • D
      Merge branch 'msm-next' of git://people.freedesktop.org/~robclark/linux into drm-next · f8049dd8
      Dave Airlie 提交于
      A bit smaller pull-req this time around.  Some continued DT binding
      cleanup to get the corresponding dts bits merged upstream (through
      other trees).  And explicit fence-fd support for submit ioctl.
      
      * 'msm-next' of git://people.freedesktop.org/~robclark/linux:
        drm/msm: bump kernel api version for explicit fencing
        drm/msm: submit support for out-fences
        drm/msm: move fence allocation out of msm_gpu_submit()
        drm/msm: submit support for in-fences
        drm/msm: extend the submit ioctl to pass in flags
        drm/msm/mdp5: Set rotation property initial value to DRM_ROTATE_0 insted of 0
        drm/msm/hdmi: don't print error when adding i2c adapter fails
        drm/msm/mdp4: mark symbols static where possible
        drm/msm: Remove call to reservation_object_test_signaled_rcu before wait
        drm/msm/hdmi: Clean up HDMI gpio DT bindings
        drm/msm/mdp4: Fix issue with LCDC/LVDS port parsing
      f8049dd8
    • D
      Merge tag 'topic/drm-misc-2016-09-25' of git://anongit.freedesktop.org/drm-intel into drm-next · 3f346d5d
      Dave Airlie 提交于
      - more core cleanup patches to prep drm_file to be used for
        kernel-internal contexts (David Herrmann)
      - more split-up+docs for drm_crtc.c
      - lots of small fixes and polish all over
      
      * tag 'topic/drm-misc-2016-09-25' of git://anongit.freedesktop.org/drm-intel: (37 commits)
        drm: bridge: analogix/dp: mark symbols static where possible
        drm/bochs: mark bochs_connector_get_modes() static
        drm/bridge: analogix_dp: Improve panel on time
        drm/bridge: analogix_dp: Don't read EDID if panel present
        drm/bridge: analogix_dp: Remove duplicated code
        Revert "drm/i2c: tda998x: don't register the connector"
        drm: Fix plane type uabi breakage
        dma-buf/sync_file: free fences array in num_fences is 1
        drm/i2c: tda998x: don't register the connector
        drm: Don't swallow error codes in drm_dev_alloc()
        drm: Distinguish no name from ENOMEM in set_unique()
        drm: Remove dirty property from docs
        drm/doc: Document color space handling
        drm: Extract drm_color_mgmt.[hc]
        drm/doc: Polish plane composition property docs
        drm: Conslidate blending properties in drm_blend.[hc]
        drm/doc: Polish for drm_plane.[hc]
        drm: Extract drm_plane.[hc]
        drm/tilcdc: Add atomic and crtc headers to crtc.c
        drm: Fix typo in encoder docs
        ...
      3f346d5d
    • D
      Merge tag 'drm-amdkfd-next-2016-09-19' of git://people.freedesktop.org/~gabbayo/linux into drm-next · 196ebdcc
      Dave Airlie 提交于
      This is amdkfd's pull request for kernel 4.9. It contains a fix to a possible
      infinite loop bug and a couple of other minor "cleaning" patches.
      
      * tag 'drm-amdkfd-next-2016-09-19' of git://people.freedesktop.org/~gabbayo/linux:
        drm/amdkfd: Pass 'struct queue_propertices' by reference
        drm/amdkfd: Unify multiple calls to pr_debug() into one
        drm/amdkfd: Fix possible infinite loop
        drm/amdkfd: Reuse function to find a process through pasid
        drm/amdkfd: Add some missing memset zero'ing in queue init func
        drm/amdkfd: Tidy up kfd_generate_gpu_id() uint64_t bitshift unpack
      196ebdcc
  3. 26 9月, 2016 11 次提交
    • L
      Linux 4.8-rc8 · 08895a8b
      Linus Torvalds 提交于
      08895a8b
    • L
      Merge tag 'trace-v4.8-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · 4c04b4b5
      Linus Torvalds 提交于
      Pull tracefs fixes from Steven Rostedt:
       "Al Viro has been looking at the tracefs code, and has pointed out some
        issues.  This contains one fix by me and one by Al.  I'm sure that
        he'll come up with more but for now I tested these patches and they
        don't appear to have any negative impact on tracing"
      
      * tag 'trace-v4.8-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        fix memory leaks in tracing_buffers_splice_read()
        tracing: Move mutex to protect against resetting of seq data
      4c04b4b5
    • D
      fault_in_multipages_readable() throws set-but-unused error · 90b75db6
      Dave Chinner 提交于
      When building XFS with -Werror, it now fails with:
      
        include/linux/pagemap.h: In function 'fault_in_multipages_readable':
        include/linux/pagemap.h:602:16: error: variable 'c' set but not used [-Werror=unused-but-set-variable]
          volatile char c;
                        ^
      
      This is a regression caused by commit e23d4159 ("fix
      fault_in_multipages_...() on architectures with no-op access_ok()").
      Fix it by re-adding the "(void)c" trick taht was previously used to make
      the compiler think the variable is used.
      Signed-off-by: NDave Chinner <dchinner@redhat.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      90b75db6
    • L
      mm: check VMA flags to avoid invalid PROT_NONE NUMA balancing · 38e08854
      Lorenzo Stoakes 提交于
      The NUMA balancing logic uses an arch-specific PROT_NONE page table flag
      defined by pte_protnone() or pmd_protnone() to mark PTEs or huge page
      PMDs respectively as requiring balancing upon a subsequent page fault.
      User-defined PROT_NONE memory regions which also have this flag set will
      not normally invoke the NUMA balancing code as do_page_fault() will send
      a segfault to the process before handle_mm_fault() is even called.
      
      However if access_remote_vm() is invoked to access a PROT_NONE region of
      memory, handle_mm_fault() is called via faultin_page() and
      __get_user_pages() without any access checks being performed, meaning
      the NUMA balancing logic is incorrectly invoked on a non-NUMA memory
      region.
      
      A simple means of triggering this problem is to access PROT_NONE mmap'd
      memory using /proc/self/mem which reliably results in the NUMA handling
      functions being invoked when CONFIG_NUMA_BALANCING is set.
      
      This issue was reported in bugzilla (issue 99101) which includes some
      simple repro code.
      
      There are BUG_ON() checks in do_numa_page() and do_huge_pmd_numa_page()
      added at commit c0e7cad9 to avoid accidentally provoking strange
      behaviour by attempting to apply NUMA balancing to pages that are in
      fact PROT_NONE.  The BUG_ON()'s are consistently triggered by the repro.
      
      This patch moves the PROT_NONE check into mm/memory.c rather than
      invoking BUG_ON() as faulting in these pages via faultin_page() is a
      valid reason for reaching the NUMA check with the PROT_NONE page table
      flag set and is therefore not always a bug.
      
      Link: https://bugzilla.kernel.org/show_bug.cgi?id=99101Reported-by: NTrevor Saunders <tbsaunde@tbsaunde.org>
      Signed-off-by: NLorenzo Stoakes <lstoakes@gmail.com>
      Acked-by: NRik van Riel <riel@redhat.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Mel Gorman <mgorman@techsingularity.net>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      38e08854
    • L
      Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus · 831e45d8
      Linus Torvalds 提交于
      Pull MIPS fixes from Ralf Baechle:
       "A round of 4.8 fixes:
      
        MIPS generic code:
         - Add a missing ".set pop" in an early commit
         - Fix memory regions reaching top of physical
         - MAAR: Fix address alignment
         - vDSO: Fix Malta EVA mapping to vDSO page structs
         - uprobes: fix incorrect uprobe brk handling
         - uprobes: select HAVE_REGS_AND_STACK_ACCESS_API
         - Avoid a BUG warning during PR_SET_FP_MODE prctl
         - SMP: Fix possibility of deadlock when bringing CPUs online
         - R6: Remove compact branch policy Kconfig entries
         - Fix size calc when avoiding IPIs for small icache flushes
         - Fix pre-r6 emulation FPU initialisation
         - Fix delay slot emulation count in debugfs
      
        ATH79:
         - Fix test for error return of clk_register_fixed_factor.
      
        Octeon:
         - Fix kernel header to work for VDSO build.
         - Fix initialization of platform device probing.
      
        paravirt:
         - Fix undefined reference to smp_bootstrap"
      
      * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus:
        MIPS: Fix delay slot emulation count in debugfs
        MIPS: SMP: Fix possibility of deadlock when bringing CPUs online
        MIPS: Fix pre-r6 emulation FPU initialisation
        MIPS: vDSO: Fix Malta EVA mapping to vDSO page structs
        MIPS: Select HAVE_REGS_AND_STACK_ACCESS_API
        MIPS: Octeon: Fix platform bus probing
        MIPS: Octeon: mangle-port: fix build failure with VDSO code
        MIPS: Avoid a BUG warning during prctl(PR_SET_FP_MODE, ...)
        MIPS: c-r4k: Fix size calc when avoiding IPIs for small icache flushes
        MIPS: Add a missing ".set pop" in an early commit
        MIPS: paravirt: Fix undefined reference to smp_bootstrap
        MIPS: Remove compact branch policy Kconfig entries
        MIPS: MAAR: Fix address alignment
        MIPS: Fix memory regions reaching top of physical
        MIPS: uprobes: fix incorrect uprobe brk handling
        MIPS: ath79: Fix test for error return of clk_register_fixed_factor().
      831e45d8
    • B
      drm: bridge: analogix/dp: mark symbols static where possible · 089cfdd9
      Baoyou Xie 提交于
      We get 2 warnings when building kernel with W=1:
      drivers/gpu/drm/bridge/analogix/analogix_dp_core.c:1053:5: warning: no previous prototype for 'analogix_dp_get_modes' [-Wmissing-prototypes]
      drivers/gpu/drm/bridge/analogix/analogix_dp_core.c:1097:1: warning: no previous prototype for 'analogix_dp_detect' [-Wmissing-prototypes]
      
      In fact, both functions are only used in the file in which they are
      declared and don't need a declaration, but can be made static.
      So this patch marks both functions with 'static'.
      Signed-off-by: NBaoyou Xie <baoyou.xie@linaro.org>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      Link: http://patchwork.freedesktop.org/patch/msgid/1474788764-6069-1-git-send-email-baoyou.xie@linaro.org
      089cfdd9
    • B
      drm/bochs: mark bochs_connector_get_modes() static · 41bb156e
      Baoyou Xie 提交于
      We get 1 warning when building kernel with W=1:
      drivers/gpu/drm/bochs/bochs_kms.c:181:5: warning: no previous prototype for 'bochs_connector_get_modes' [-Wmissing-prototypes]
      
      In fact, this function is only used in the file in which it is
      declared and don't need a declaration, but can be made static.
      So this patch marks it 'static'.
      Signed-off-by: NBaoyou Xie <baoyou.xie@linaro.org>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      Link: http://patchwork.freedesktop.org/patch/msgid/1474788334-11007-1-git-send-email-baoyou.xie@linaro.org
      41bb156e
    • L
      Merge tag 'powerpc-4.8-7' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · 751b9a5d
      Linus Torvalds 提交于
      Pull one more powerpc fix from Michael Ellerman:
       "powernv/pci: Fix m64 checks for SR-IOV and window alignment from
        Russell Currey"
      
      * tag 'powerpc-4.8-7' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc/powernv/pci: Fix m64 checks for SR-IOV and window alignment
      751b9a5d
    • L
      radix tree: fix sibling entry handling in radix_tree_descend() · 8d2c0d36
      Linus Torvalds 提交于
      The fixes to the radix tree test suite show that the multi-order case is
      broken.  The basic reason is that the radix tree code uses tagged
      pointers with the "internal" bit in the low bits, and calculating the
      pointer indices was supposed to mask off those bits.  But gcc will
      notice that we then use the index to re-create the pointer, and will
      avoid doing the arithmetic and use the tagged pointer directly.
      
      This cleans the code up, using the existing is_sibling_entry() helper to
      validate the sibling pointer range (instead of open-coding it), and
      using entry_to_node() to mask off the low tag bit from the pointer.  And
      once you do that, you might as well just use the now cleaned-up pointer
      directly.
      
      [ Side note: the multi-order code isn't actually ever used in the kernel
        right now, and the only reason I didn't just delete all that code is
        that Kirill Shutemov piped up and said:
      
          "Well, my ext4-with-huge-pages patchset[1] uses multi-order entries.
           It also converts shmem-with-huge-pages and hugetlb to them.
      
           I'm okay with converting it to other mechanism, but I need
           something.  (I looked into Konstantin's RFC patchset[2].  It looks
           okay, but I don't feel myself qualified to review it as I don't
           know much about radix-tree internals.)"
      
        [1] http://lkml.kernel.org/r/20160915115523.29737-1-kirill.shutemov@linux.intel.com
        [2] http://lkml.kernel.org/r/147230727479.9957.1087787722571077339.stgit@zurg ]
      Reported-by: NMatthew Wilcox <mawilcox@microsoft.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Ross Zwisler <ross.zwisler@linux.intel.com>
      Cc: Johannes Weiner <hannes@cmpxchg.org>
      Cc: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Cc: Konstantin Khlebnikov <koct9i@gmail.com>
      Cc: Cedric Blancher <cedric.blancher@gmail.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      8d2c0d36
    • M
      radix tree test suite: Test radix_tree_replace_slot() for multiorder entries · 62fd5258
      Matthew Wilcox 提交于
      When we replace a multiorder entry, check that all indices reflect the
      new value.
      
      Also, compile the test suite with -O2, which shows other problems with
      the code due to some dodgy pointer operations in the radix tree code.
      Signed-off-by: NMatthew Wilcox <mawilcox@microsoft.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      62fd5258
    • A
      fix memory leaks in tracing_buffers_splice_read() · 1ae2293d
      Al Viro 提交于
      Cc: stable@vger.kernel.org
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      1ae2293d
  4. 25 9月, 2016 11 次提交
  5. 24 9月, 2016 6 次提交