1. 19 8月, 2016 2 次提交
    • L
      Merge tag 'pm-4.8-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 395c4342
      Linus Torvalds 提交于
      Pull power management fixes from Rafael Wysocki:
       "More hibernation-related material: one fix for a recent regression in
        the core, one small cleanup of the x86-64 resume code and a
        documentation update.
      
        Specifics:
      
         - Fix a hibernate core regression resulting from uncovering a latent
           bug in its implementation of memory bitmaps by a recent commit
           (James Morse).
      
         - Use __pa() to compute a physical address in the x86-64 code
           finalizing resume from hibernation (Rafael Wysocki).
      
         - Update power management documentation related to system sleep
           states to remove outdated information from it and to add a
           description of a recently introduced hibernation debug feature to
           it (Rafael Wysocki)"
      
      * tag 'pm-4.8-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        PM / hibernate: Fix rtree_next_node() to avoid walking off list ends
        x86/power/64: Use __pa() for physical address computation
        PM / sleep: Update some system sleep documentation
      395c4342
    • L
      Merge tag 'drm-fixes-for-4.8-rc3' of git://people.freedesktop.org/~airlied/linux · 76dcd939
      Linus Torvalds 提交于
      Pull drm fixes from Dave Airlie:
       "Pretty quiet so far:
      
         - a few amdgpu/radeon fixup for pcie pm changes
         - a couple of amdgpu fixes
         - some build fixes
         - printk fix"
      
      * tag 'drm-fixes-for-4.8-rc3' of git://people.freedesktop.org/~airlied/linux:
        drm/amdgpu: Change GART offset to 64-bit
        drm/mediatek: add ARM_SMCCC dependency
        drm/mediatek: add CONFIG_OF dependency
        drm/mediatek: add COMMON_CLK dependency
        drm/amdgpu: Fix memory trashing if UVD ring test fails
        drm/amdgpu: fix vm init error path
        drm/amdkfd: print doorbell offset as a hex value
        Revert "drm/radeon: work around lack of upstream ACPI support for D3cold"
        Revert "drm/amdgpu: work around lack of upstream ACPI support for D3cold"
      76dcd939
  2. 18 8月, 2016 24 次提交
  3. 17 8月, 2016 10 次提交
  4. 16 8月, 2016 4 次提交
    • F
      drm/amdgpu: Change GART offset to 64-bit · cab0b8d5
      Felix Kuehling 提交于
      The GART aperture size can be bigger than 4GB. Therefore the offset
      used in amdgpu_gart_bind and amdgpu_gart_unbind must be 64-bit.
      Reviewed-by: NChristian König <christian.koenig@amd.com>
      Signed-off-by: NFelix Kuehling <Felix.Kuehling@amd.com>
      Reviewed-by: NAlex Deucher <alexander.deucher@amd.com>
      Signed-off-by: NAlex Deucher <alexander.deucher@amd.com>
      Cc: stable@vger.kernel.org
      cab0b8d5
    • J
      PM / hibernate: Fix rtree_next_node() to avoid walking off list ends · 924d8696
      James Morse 提交于
      rtree_next_node() walks the linked list of leaf nodes to find the next
      block of pages in the struct memory_bitmap. If it walks off the end of
      the list of nodes, it walks the list of memory zones to find the next
      region of memory. If it walks off the end of the list of zones, it
      returns false.
      
      This leaves the struct bm_position's node and zone pointers pointing
      at their respective struct list_heads in struct mem_zone_bm_rtree.
      
      memory_bm_find_bit() uses struct bm_position's node and zone pointers
      to avoid walking lists and trees if the next bit appears in the same
      node/zone. It handles these values being stale.
      
      Swap rtree_next_node()s 'step then test' to 'test-next then step',
      this means if we reach the end of memory we return false and leave
      the node and zone pointers as they were.
      
      This fixes a panic on resume using AMD Seattle with 64K pages:
      [    6.868732] Freezing user space processes ... (elapsed 0.000 seconds) done.
      [    6.875753] Double checking all user space processes after OOM killer disable... (elapsed 0.000 seconds)
      [    6.896453] PM: Using 3 thread(s) for decompression.
      [    6.896453] PM: Loading and decompressing image data (5339 pages)...
      [    7.318890] PM: Image loading progress:   0%
      [    7.323395] Unable to handle kernel paging request at virtual address 00800040
      [    7.330611] pgd = ffff000008df0000
      [    7.334003] [00800040] *pgd=00000083fffe0003, *pud=00000083fffe0003, *pmd=00000083fffd0003, *pte=0000000000000000
      [    7.344266] Internal error: Oops: 96000005 [#1] PREEMPT SMP
      [    7.349825] Modules linked in:
      [    7.352871] CPU: 2 PID: 1 Comm: swapper/0 Tainted: G        W I     4.8.0-rc1 #4737
      [    7.360512] Hardware name: AMD Overdrive/Supercharger/Default string, BIOS ROD1002C 04/08/2016
      [    7.369109] task: ffff8003c0220000 task.stack: ffff8003c0280000
      [    7.375020] PC is at set_bit+0x18/0x30
      [    7.378758] LR is at memory_bm_set_bit+0x24/0x30
      [    7.383362] pc : [<ffff00000835bbc8>] lr : [<ffff0000080faf18>] pstate: 60000045
      [    7.390743] sp : ffff8003c0283b00
      [    7.473551]
      [    7.475031] Process swapper/0 (pid: 1, stack limit = 0xffff8003c0280020)
      [    7.481718] Stack: (0xffff8003c0283b00 to 0xffff8003c0284000)
      [    7.800075] Call trace:
      [    7.887097] [<ffff00000835bbc8>] set_bit+0x18/0x30
      [    7.891876] [<ffff0000080fb038>] duplicate_memory_bitmap.constprop.38+0x54/0x70
      [    7.899172] [<ffff0000080fcc40>] snapshot_write_next+0x22c/0x47c
      [    7.905166] [<ffff0000080fe1b4>] load_image_lzo+0x754/0xa88
      [    7.910725] [<ffff0000080ff0a8>] swsusp_read+0x144/0x230
      [    7.916025] [<ffff0000080fa338>] load_image_and_restore+0x58/0x90
      [    7.922105] [<ffff0000080fa660>] software_resume+0x2f0/0x338
      [    7.927752] [<ffff000008083350>] do_one_initcall+0x38/0x11c
      [    7.933314] [<ffff000008b40cc0>] kernel_init_freeable+0x14c/0x1ec
      [    7.939395] [<ffff0000087ce564>] kernel_init+0x10/0xfc
      [    7.944520] [<ffff000008082e90>] ret_from_fork+0x10/0x40
      [    7.949820] Code: d2800022 8b400c21 f9800031 9ac32043 (c85f7c22)
      [    7.955909] ---[ end trace 0024a5986e6ff323 ]---
      [    7.960529] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
      
      Here struct mem_zone_bm_rtree's start_pfn has been returned instead of
      struct rtree_node's addr as the node/zone pointers are corrupt after
      we walked off the end of the lists during mark_unsafe_pages().
      
      This behaviour was exposed by commit 6dbecfd3 ("PM / hibernate:
      Simplify mark_unsafe_pages()"), which caused mark_unsafe_pages() to call
      duplicate_memory_bitmap(), which uses memory_bm_find_bit() after walking
      off the end of the memory bitmap.
      
      Fixes: 3a20cb17 (PM / Hibernate: Implement position keeping in radix tree)
      Signed-off-by: NJames Morse <james.morse@arm.com>
      [ rjw: Subject ]
      Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
      924d8696
    • D
      Merge branch 'mediatek-fixes' · a1560dd7
      David S. Miller 提交于
      Sean Wang says:
      
      ====================
      mediatek: Fix warning and issue
      
      This patch set fixes the following warning and issues
      
      v1 -> v2: Fix message typos and add coverletter
      
      v2 -> v3: Split from the previous series for submitting bug fixes
      as a series targeting 'net'
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a1560dd7
    • S
      net: ethernet: mediatek: fix runtime warning raised by inconsistent struct... · 55a4e778
      sean.wang@mediatek.com 提交于
      net: ethernet: mediatek: fix runtime warning raised by inconsistent struct device pointers passed to DMA API
      
      Runtime warning occurs if DMA-API debug feature is enabled that would be
      raised by pointers passed to DMA API as arguments to inconsistent struct
      device objects, so that the patch makes them usage aligned between DMA
      operations such as dma_map_*() and dma_unmap_*() to eliminate the warning.
      Signed-off-by: NSean Wang <sean.wang@mediatek.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      55a4e778