1. 16 Oct, 2015 13 commits
    • Linus Torvalds's avatar
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · 8b7b56f3
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Nothing too crazy or exciting:
      
         - two MAINTAINERS entries that I didn't see the point in delaying.
         - one drm mst fix to stop sending uninitialised data to monitors
         - two amdgpu fixes
         - one radeon mst tiling fix
         - one vmwgfx regression fix
         - one virtio warning fix.
      
        I have found one locking problem that needs a bit of reorg to fix, but
        I'm not sure it's worth putting in -fixes as I don't think we've seen
        it hit in the real world ever, I just found it using the virtio-gpu
        driver when working on it.  I'll possibly send it next week once I've
        time to discuss with Daniel"
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
        drm/virtio: use %llu format string form atomic64_t
        MAINTAINERS: Add myself as maintainer for the gma500 driver
        MAINTAINERS: add a maintainer for the atmel-hlcdc DRM driver
        drm/amdgpu: Keep the pflip interrupts always enabled v7
        drm/amdgpu: adjust default dispclk (v2)
        drm/dp/mst: make mst i2c transfer code more robust.
        drm/radeon: attach tile property to mst connector
        drm/vmwgfx: Fix kernel NULL pointer dereference on older hardware
      8b7b56f3
    • Linus Torvalds's avatar
      Merge tag 'powerpc-4.3-4' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · ebb65c81
      Linus Torvalds authored
      Pull powerpc fixes from Michael Ellerman:
       - Re-enable CONFIG_SCSI_DH in our defconfigs
       - Remove unused os_area_db_id_video_mode
       - cxl: fix leak of IRQ names in cxl_free_afu_irqs() from Andrew
       - cxl: fix leak of ctx->irq_bitmap when releasing context via kernel API from Andrew
       - cxl: fix leak of ctx->mapping when releasing kernel API contexts from Andrew
       - cxl: Workaround malformed pcie packets on some cards from Philippe
       - cxl: Fix number of allocated pages in SPA from Christophe Lombard
       - Fix checkstop in native_hpte_clear() with lockdep from Cyril
       - Panic on unhandled Machine Check on powernv from Daniel
       - selftests/powerpc: Fix build failure of load_unaligned_zeropad test
      
      * tag 'powerpc-4.3-4' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        selftests/powerpc: Fix build failure of load_unaligned_zeropad test
        powerpc/powernv: Panic on unhandled Machine Check
        powerpc: Fix checkstop in native_hpte_clear() with lockdep
        cxl: Fix number of allocated pages in SPA
        cxl: Workaround malformed pcie packets on some cards
        cxl: fix leak of ctx->mapping when releasing kernel API contexts
        cxl: fix leak of ctx->irq_bitmap when releasing context via kernel API
        cxl: fix leak of IRQ names in cxl_free_afu_irqs()
        powerpc/ps3: Remove unused os_area_db_id_video_mode
        powerpc/configs: Re-enable CONFIG_SCSI_DH
      ebb65c81
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · 3d875182
      Linus Torvalds authored
      Merge misc fixes from Andrew Morton:
       "6 fixes"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
        sh: add copy_user_page() alias for __copy_user()
        lib/Kconfig: ZLIB_DEFLATE must select BITREVERSE
        mm, dax: fix DAX deadlocks
        memcg: convert threshold to bytes
        builddeb: remove debian/files before build
        mm, fs: obey gfp_mapping for add_to_page_cache()
      3d875182
    • Ross Zwisler's avatar
      sh: add copy_user_page() alias for __copy_user() · 934ed25e
      Ross Zwisler authored
      copy_user_page() is needed by DAX.  Without this we get a compile error
      for DAX on SH:
      
        fs/dax.c:280:2: error: implicit declaration of function `copy_user_page' [-Werror=implicit-function-declaration]
          copy_user_page(vto, (void __force *)vfrom, vaddr, to);
            ^
      
      This was done with a random config that happened to include DAX support.
      
      This patch has only been compile tested.
      Signed-off-by: default avatarRoss Zwisler <ross.zwisler@linux.intel.com>
      Reported-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
      Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
      Cc: Matthew Wilcox <willy@linux.intel.com>
      Cc: Matt Fleming <matt@codeblueprint.co.uk>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      934ed25e
    • Andrew Morton's avatar
      lib/Kconfig: ZLIB_DEFLATE must select BITREVERSE · 1fd4e5c3
      Andrew Morton authored
      lib/built-in.o: In function `__bitrev32':
      deftree.c:(.text+0x1e799): undefined reference to `byte_rev_table'
      deftree.c:(.text+0x1e7a0): undefined reference to `byte_rev_table'
      deftree.c:(.text+0x1e7b4): undefined reference to `byte_rev_table'
      deftree.c:(.text+0x1e7c1): undefined reference to `byte_rev_table'
      
      Anything which uses bitrevX() has to select BITREVERSE, to grab
      lib/bitrev.o.
      Reported-by: default avatarJim Davis <jim.epost@gmail.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      1fd4e5c3
    • Ross Zwisler's avatar
      mm, dax: fix DAX deadlocks · 0f90cc66
      Ross Zwisler authored
      The following two locking commits in the DAX code:
      
      commit 84317297 ("dax: fix race between simultaneous faults")
      commit 46c043ed ("mm: take i_mmap_lock in unmap_mapping_range() for DAX")
      
      introduced a number of deadlocks and other issues which need to be fixed
      for the v4.3 kernel.  The list of issues in DAX after these commits
      (some newly introduced by the commits, some preexisting) can be found
      here:
      
        https://lkml.org/lkml/2015/9/25/602 (Subject: "Re: [PATCH] dax: fix deadlock in __dax_fault").
      
      This undoes most of the changes introduced by those two commits,
      essentially returning us to the DAX locking scheme that was used in
      v4.2.
      Signed-off-by: default avatarRoss Zwisler <ross.zwisler@linux.intel.com>
      Cc: Alexander Viro <viro@zeniv.linux.org.uk>
      Cc: Dan Williams <dan.j.williams@intel.com>
      Tested-by: default avatarDave Chinner <dchinner@redhat.com>
      Cc: Jan Kara <jack@suse.com>
      Cc: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>
      Cc: Matthew Wilcox <matthew.r.wilcox@intel.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      0f90cc66
    • Shaohua Li's avatar
      memcg: convert threshold to bytes · 424cdc14
      Shaohua Li authored
      page_counter_memparse() returns pages for the threshold, while
      mem_cgroup_usage() returns bytes for memory usage.  Convert the
      threshold to bytes.
      
      Fixes: 3e32cb2e ("memcg: rename cgroup_event to mem_cgroup_event").
      Signed-off-by: default avatarShaohua Li <shli@fb.com>
      Cc: Johannes Weiner <hannes@cmpxchg.org>
      Acked-by: default avatarMichal Hocko <mhocko@suse.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      424cdc14
    • Riku Voipio's avatar
      builddeb: remove debian/files before build · 8d740a37
      Riku Voipio authored
      Commit 3716001b ("deb-pkg: add source package") added the ability to
      create a debian changelog file.  This exposed that previously the
      builddeb script hasn't cleared debian/files between builds.
      
      As debian/files keeps accumulating entries, the changes file will end up
      growing indefinelty.  With outdated entries in debian/files, builddeb
      script will exit with failure.  This regression impacts those who use
      "make deb-pkg" target to build kernel into a .deb package and never use
      "make mrproper" or other means to clean kernel tree from generated
      directories.
      
      To fix the regression, remove debian/files before starting build and in
      the generated clean rule.
      
      Fixes: 3716001b ("deb-pkg: add source package")
      Signed-off-by: default avatarRiku Voipio <riku.voipio@linaro.org>
      Reported-by: default avatarDoug Smythies <dsmythies@telus.net>
      Tested-by: default avatarDoug Smythies <dsmythies@telus.net>
      Tested-by: default avatarKalle Valo <kvalo@codeaurora.org>
      Acked-by: default avatarBen Hutchings <ben@decadent.org.uk>
      Cc: Michal Marek <mmarek@suse.cz>
      Cc: maximilian attems <maks@stro.at>
      Cc: Chris J Arges <chris.j.arges@canonical.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      8d740a37
    • Michal Hocko's avatar
      mm, fs: obey gfp_mapping for add_to_page_cache() · 063d99b4
      Michal Hocko authored
      Commit 6afdb859 ("mm: do not ignore mapping_gfp_mask in page cache
      allocation paths") has caught some users of hardcoded GFP_KERNEL used in
      the page cache allocation paths.  This, however, wasn't complete and
      there were others which went unnoticed.
      
      Dave Chinner has reported the following deadlock for xfs on loop device:
      : With the recent merge of the loop device changes, I'm now seeing
      : XFS deadlock on my single CPU, 1GB RAM VM running xfs/073.
      :
      : The deadlocked is as follows:
      :
      : kloopd1: loop_queue_read_work
      :       xfs_file_iter_read
      :       lock XFS inode XFS_IOLOCK_SHARED (on image file)
      :       page cache read (GFP_KERNEL)
      :       radix tree alloc
      :       memory reclaim
      :       reclaim XFS inodes
      :       log force to unpin inodes
      :       <wait for log IO completion>
      :
      : xfs-cil/loop1: <does log force IO work>
      :       xlog_cil_push
      :       xlog_write
      :       <loop issuing log writes>
      :               xlog_state_get_iclog_space()
      :               <blocks due to all log buffers under write io>
      :               <waits for IO completion>
      :
      : kloopd1: loop_queue_write_work
      :       xfs_file_write_iter
      :       lock XFS inode XFS_IOLOCK_EXCL (on image file)
      :       <wait for inode to be unlocked>
      :
      : i.e. the kloopd, with it's split read and write work queues, has
      : introduced a dependency through memory reclaim. i.e. that writes
      : need to be able to progress for reads make progress.
      :
      : The problem, fundamentally, is that mpage_readpages() does a
      : GFP_KERNEL allocation, rather than paying attention to the inode's
      : mapping gfp mask, which is set to GFP_NOFS.
      :
      : The didn't used to happen, because the loop device used to issue
      : reads through the splice path and that does:
      :
      :       error = add_to_page_cache_lru(page, mapping, index,
      :                       GFP_KERNEL & mapping_gfp_mask(mapping));
      
      This has changed by commit aa4d8616 ("block: loop: switch to VFS
      ITER_BVEC").
      
      This patch changes mpage_readpage{s} to follow gfp mask set for the
      mapping.  There are, however, other places which are doing basically the
      same.
      
      lustre:ll_dir_filler is doing GFP_KERNEL from the function which
      apparently uses GFP_NOFS for other allocations so let's make this
      consistent.
      
      cifs:readpages_get_pages is called from cifs_readpages and
      __cifs_readpages_from_fscache called from the same path obeys mapping
      gfp.
      
      ramfs_nommu_expand_for_mapping is hardcoding GFP_KERNEL as well
      regardless it uses mapping_gfp_mask for the page allocation.
      
      ext4_mpage_readpages is the called from the page cache allocation path
      same as read_pages and read_cache_pages
      
      As I've noticed in my previous post I cannot say I would be happy about
      sprinkling mapping_gfp_mask all over the place and it sounds like we
      should drop gfp_mask argument altogether and use it internally in
      __add_to_page_cache_locked that would require all the filesystems to use
      mapping gfp consistently which I am not sure is the case here.  From a
      quick glance it seems that some file system use it all the time while
      others are selective.
      Signed-off-by: default avatarMichal Hocko <mhocko@suse.com>
      Reported-by: default avatarDave Chinner <david@fromorbit.com>
      Cc: "Theodore Ts'o" <tytso@mit.edu>
      Cc: Ming Lei <ming.lei@canonical.com>
      Cc: Andreas Dilger <andreas.dilger@intel.com>
      Cc: Oleg Drokin <oleg.drokin@intel.com>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Christoph Hellwig <hch@lst.de>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      063d99b4
    • Arnd Bergmann's avatar
      drm/virtio: use %llu format string form atomic64_t · d549f545
      Arnd Bergmann authored
      The virtgpu driver prints the last_seq variable using the %ld or
      %lu format string, which does not work correctly on all architectures
      and causes this compiler warning on ARM:
      
      drivers/gpu/drm/virtio/virtgpu_fence.c: In function 'virtio_timeline_value_str':
      drivers/gpu/drm/virtio/virtgpu_fence.c:64:22: warning: format '%lu' expects argument of type 'long unsigned int', but argument 4 has type 'long long int' [-Wformat=]
        snprintf(str, size, "%lu", atomic64_read(&fence->drv->last_seq));
                            ^
      drivers/gpu/drm/virtio/virtgpu_debugfs.c: In function 'virtio_gpu_debugfs_irq_info':
      drivers/gpu/drm/virtio/virtgpu_debugfs.c:37:16: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'long long int' [-Wformat=]
        seq_printf(m, "fence %ld %lld\n",
                      ^
      
      In order to avoid the warnings, this changes the format strings to %llu
      and adds a cast to u64, which makes it work the same way everywhere.
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      d549f545
    • Patrik Jakobsson's avatar
    • Boris BREZILLON's avatar
      MAINTAINERS: add a maintainer for the atmel-hlcdc DRM driver · 99763bb8
      Boris BREZILLON authored
      Add myself as the maintainer of the atmel-hlcdc DRM driver.
      Signed-off-by: default avatarBoris Brezillon <boris.brezillon@free-electrons.com>
      Acked-by: default avatarNicolas Ferre <nicolas.ferre@atmel.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      99763bb8
    • Dave Airlie's avatar
      Merge branch 'drm-fixes-4.3' of git://people.freedesktop.org/~agd5f/linux into drm-fixes · 57606c73
      Dave Airlie authored
      Just two fixes for amdgpu:
      - fix pageflip interrupt issue
      - fix display clock handling on certain fiji boards
      
      * 'drm-fixes-4.3' of git://people.freedesktop.org/~agd5f/linux:
        drm/amdgpu: Keep the pflip interrupts always enabled v7
        drm/amdgpu: adjust default dispclk (v2)
      57606c73
  2. 15 Oct, 2015 9 commits
  3. 14 Oct, 2015 7 commits
  4. 13 Oct, 2015 11 commits