1. 11 7月, 2017 32 次提交
  2. 10 7月, 2017 8 次提交
    • G
      btrfs: nowait aio: Correct assignment of pos · ff0fa732
      Goldwyn Rodrigues 提交于
      Assigning pos for usage early messes up in append mode, where the pos is
      re-assigned in generic_write_checks(). Assign pos later to get the
      correct position to write from iocb->ki_pos.
      
      Since check_can_nocow also uses the value of pos, we shift
      generic_write_checks() before check_can_nocow(). Checks with IOCB_DIRECT
      are present in generic_write_checks(), so checking for IOCB_NOWAIT is
      enough.
      
      Also, put locking sequence in the fast path.
      
      This fixes a user visible bug, as reported:
      
      "apparently breaks several shell related features on my system.
      In zsh history stopped working, because no new entries are added
      anymore.
      I fist noticed the issue when I tried to build mplayer. It uses a shell
      script to generate a help_mp.h file:
      [...]
      
      Here is a simple testcase:
      
       % echo "foo" >> test
       % echo "foo" >> test
       % cat test
       foo
       %
      "
      
      Fixes: edf064e7 ("btrfs: nowait aio support")
      CC: Jens Axboe <axboe@kernel.dk>
      Reported-by: NMarkus Trippelsdorf <markus@trippelsdorf.de>
      Link: https://lkml.kernel.org/r/20170704042306.GA274@x4Signed-off-by: NGoldwyn Rodrigues <rgoldwyn@suse.com>
      Reviewed-by: NDavid Sterba <dsterba@suse.com>
      Signed-off-by: NDavid Sterba <dsterba@suse.com>
      ff0fa732
    • A
      fix brown paperbag bug in inlined copy_..._iter() · c43aeb19
      Al Viro 提交于
      "copied nothing" == "return 0", not "return full size".
      
      Fixes: aa28de27 "iov_iter/hardening: move object size checks to inlined part"
      Spotted-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      c43aeb19
    • J
      Merge branches 'for-4.13/multitouch', 'for-4.13/retrode',... · 837c194a
      Jiri Kosina 提交于
      Merge branches 'for-4.13/multitouch', 'for-4.13/retrode', 'for-4.13/transport-open-close-consolidation', 'for-4.13/upstream' and 'for-4.13/wacom' into for-linus
      837c194a
    • J
      Merge branches 'for-4.13/ish' and 'for-4.13/ite' into for-linus · 604250dd
      Jiri Kosina 提交于
      Conflicts:
      	drivers/hid/hid-core.c
      604250dd
    • J
      Merge branches 'for-4.13/apple' and 'for-4.13/asus' into for-linus · 4f94ff4e
      Jiri Kosina 提交于
      Conflicts:
      	drivers/hid/hid-core.c
      4f94ff4e
    • L
      Merge tag 'drm-for-v4.13' of git://people.freedesktop.org/~airlied/linux · af3c8d98
      Linus Torvalds 提交于
      Pull drm updates from Dave Airlie:
       "This is the main pull request for the drm, I think I've got one later
        driver pull for mediatek SoC driver, I'm undecided on if it needs to
        go to you yet.
      
        Otherwise summary below:
      
        Core drm:
         - Atomic add driver private objects
         - Deprecate preclose hook in modern drivers
         - MST bandwidth tracking
         - Use kvmalloc in more places
         - Add mode_valid hook for crtc/encoder/bridge
         - Reduce sync_file construction time
         - Documentation updates
         - New DRM synchronisation object support
      
        New drivers:
         - pl111 - pl111 CLCD display controller
      
        Panel:
         - Innolux P079ZCA panel driver
         - Add NL12880B20-05, NL192108AC18-02D, P320HVN03 panels
         - panel-samsung-s6e3ha2: Add s6e3hf2 panel support
      
        i915:
         - SKL+ watermark fixes
         - G4x/G33 reset improvements
         - DP AUX backlight improvements
         - Buffer based GuC/host communication
         - New getparam for (sub)slice infomation
         - Cannonlake and Coffeelake initial patches
         - Execbuf optimisations
      
        radeon/amdgpu:
         - Lots of Vega10 bug fixes
         - Preliminary raven support
         - KIQ support for compute rings
         - MEC queue management rework
         - DCE6 Audio support
         - SR-IOV improvements
         - Better radeon/amdgpu selection support
      
        nouveau:
         - HDMI stereoscopic support
         - Display code rework for >= GM20x GPUs
      
        msm:
         - GEM rework for fine-grained locking
         - Per-process pagetable work
         - HDMI fixes for Snapdragon 820.
      
        vc4:
         - Remove 256MB CMA limit from vc4
         - Add out-fence support
         - Add support for cygnus
         - Get/set tiling ioctls support
         - Add T-format tiling support for scanout
      
        zte:
         - add VGA support.
      
        etnaviv:
         - Thermal throttle support for newer GPUs
         - Restore userspace buffer cache performance
         - dma-buf sync fix
      
        stm:
         - add stm32f429 display support
      
        exynos:
         - Rework vblank handling
         - Fixup sw-trigger code
      
        sun4i:
         - V3s display engine support
         - HDMI support for older SoCs
         - Preliminary work on dual-pipeline SoCs.
      
        rcar-du:
         - VSP work
      
        imx-drm:
         - Remove counter load enable from PRE
         - Double read/write reduction flag support
      
        tegra:
         - Documentation for the host1x and drm driver.
         - Lots of staging ioctl fixes due to grate project work.
      
        omapdrm:
         - dma-buf fence support
         - TILER rotation fixes"
      
      * tag 'drm-for-v4.13' of git://people.freedesktop.org/~airlied/linux: (1270 commits)
        drm: Remove unused drm_file parameter to drm_syncobj_replace_fence()
        drm/amd/powerplay: fix bug fail to remove sysfs when rmmod amdgpu.
        amdgpu: Set cik/si_support to 1 by default if radeon isn't built
        drm/amdgpu/gfx9: fix driver reload with KIQ
        drm/amdgpu/gfx8: fix driver reload with KIQ
        drm/amdgpu: Don't call amd_powerplay_destroy() if we don't have powerplay
        drm/ttm: Fix use-after-free in ttm_bo_clean_mm
        drm/amd/amdgpu: move get memory type function from early init to sw init
        drm/amdgpu/cgs: always set reference clock in mode_info
        drm/amdgpu: fix vblank_time when displays are off
        drm/amd/powerplay: power value format change for Vega10
        drm/amdgpu/gfx9: support the amdgpu.disable_cu option
        drm/amd/powerplay: change PPSMC_MSG_GetCurrPkgPwr for Vega10
        drm/amdgpu: Make amdgpu_cs_parser_init static (v2)
        drm/amdgpu/cs: fix a typo in a comment
        drm/amdgpu: Fix the exported always on CU bitmap
        drm/amdgpu/gfx9: gfx_v9_0_enable_gfx_static_mg_power_gating() can be static
        drm/amdgpu/psp: upper_32_bits/lower_32_bits for address setup
        drm/amd/powerplay/cz: print message if smc message fails
        drm/amdgpu: fix typo in amdgpu_debugfs_test_ib_init
        ...
      af3c8d98
    • D
      afs: Add metadata xattrs · d3e3b7ea
      David Howells 提交于
      Add xattrs to allow the user to get/set metadata in lieu of having pioctl()
      available.  The following xattrs are now available:
      
       - "afs.cell"
      
         The name of the cell in which the vnode's volume resides.
      
       - "afs.fid"
      
         The volume ID, vnode ID and vnode uniquifier of the file as three hex
         numbers separated by colons.
      
       - "afs.volume"
      
         The name of the volume in which the vnode resides.
      
      For example:
      
      	# getfattr -d -m ".*" /mnt/scratch
      	getfattr: Removing leading '/' from absolute path names
      	# file: mnt/scratch
      	afs.cell="mycell.myorg.org"
      	afs.fid="10000b:1:1"
      	afs.volume="scratch"
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      d3e3b7ea
    • M
      afs: Ignore AFS_ACE_READ and AFS_ACE_WRITE for directories · fd249821
      Marc Dionne 提交于
      The AFS_ACE_READ and AFS_ACE_WRITE permission bits should not
      be used to make access decisions for the directory itself.  They
      are meant to control access for the objects contained in that
      directory.
      
      Reading a directory is allowed if the AFS_ACE_LOOKUP bit is set.
      This would cause an incorrect access denied error for a directory
      with AFS_ACE_LOOKUP but not AFS_ACE_READ.
      
      The AFS_ACE_WRITE bit does not allow operations that modify the
      directory.  For a directory with AFS_ACE_WRITE but neither
      AFS_ACE_INSERT nor AFS_ACE_DELETE, this would result in trying
      operations that would ultimately be denied by the server.
      Signed-off-by: NMarc Dionne <marc.dionne@auristor.com>
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      fd249821