1. 11 Feb, 2016 2 commits
  2. 09 Feb, 2016 3 commits
  3. 06 Feb, 2016 1 commit
    • Jiri Kosina's avatar
      floppy: refactor open() flags handling · 09954bad
      Jiri Kosina authored
      In case /dev/fdX is open with O_NDELAY / O_NONBLOCK, floppy_open() immediately
      succeeds, without performing any further media / controller preparations.
      That's "correct" wrt. the NODELAY flag, but is hardly correct wrt. the rest
      of the floppy driver, that is not really O_NONBLOCK ready, at all. Therefore
      it's not too surprising, that subsequent attempts to work with the
      filedescriptor produce bad results. Namely, syzkaller tool has been able
      to livelock mmap() on the returned fd to keep waiting on the page unlock
      bit forever.
      
      Quite frankly, I have trouble defining what non-blocking behavior would be for
      floppies. Is waiting ages for the driver to actually succeed reading a sector
      blocking operation? Is waiting for drive motor to start blocking operation? How
      about in case of virtualized floppies?
      
      One option would be returning EWOULDBLOCK in case O_NDLEAY / O_NONBLOCK is
      being passed to open(). That has a theoretical potential of breaking some
      arcane and archaic userspace though.
      
      Let's take a more conservative aproach, and accept the O_NDLEAY flag, and let
      the driver behave as usual.
      
      While at it, clean up a bit handling of !(mode & (FMODE_READ|FMODE_WRITE))
      case and return EINVAL instead of succeeding as well.
      
      Spotted by syzkaller tool.
      Reported-by: default avatarDmitry Vyukov <dvyukov@google.com>
      Tested-by: default avatarDmitry Vyukov <dvyukov@google.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      09954bad
  4. 04 Feb, 2016 5 commits
  5. 01 Feb, 2016 3 commits
  6. 31 Jan, 2016 2 commits
    • Jens Axboe's avatar
      Merge branch 'stable/for-jens-4.5' of... · ed0ae43c
      Jens Axboe authored
      Merge branch 'stable/for-jens-4.5' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen into for-linus
      ed0ae43c
    • Mike Krinkin's avatar
      block: fix use-after-free in dio_bio_complete · 7ddc971f
      Mike Krinkin authored
      kasan reported the following error when i ran xfstest:
      
      [  701.826854] ==================================================================
      [  701.826864] BUG: KASAN: use-after-free in dio_bio_complete+0x41a/0x600 at addr ffff880080b95f94
      [  701.826870] Read of size 4 by task loop2/3874
      [  701.826879] page:ffffea000202e540 count:0 mapcount:0 mapping:          (null) index:0x0
      [  701.826890] flags: 0x100000000000000()
      [  701.826895] page dumped because: kasan: bad access detected
      [  701.826904] CPU: 3 PID: 3874 Comm: loop2 Tainted: G    B   W    L  4.5.0-rc1-next-20160129 #83
      [  701.826910] Hardware name: LENOVO 23205NG/23205NG, BIOS G2ET95WW (2.55 ) 07/09/2013
      [  701.826917]  ffff88008fadf800 ffff88008fadf758 ffffffff81ca67bb 0000000041b58ab3
      [  701.826941]  ffffffff830d1e74 ffffffff81ca6724 ffff88008fadf748 ffffffff8161c05c
      [  701.826963]  0000000000000282 ffff88008fadf800 ffffed0010172bf2 ffffea000202e540
      [  701.826987] Call Trace:
      [  701.826997]  [<ffffffff81ca67bb>] dump_stack+0x97/0xdc
      [  701.827005]  [<ffffffff81ca6724>] ? _atomic_dec_and_lock+0xc4/0xc4
      [  701.827014]  [<ffffffff8161c05c>] ? __dump_page+0x32c/0x490
      [  701.827023]  [<ffffffff816b0d03>] kasan_report_error+0x5f3/0x8b0
      [  701.827033]  [<ffffffff817c302a>] ? dio_bio_complete+0x41a/0x600
      [  701.827040]  [<ffffffff816b1119>] __asan_report_load4_noabort+0x59/0x80
      [  701.827048]  [<ffffffff817c302a>] ? dio_bio_complete+0x41a/0x600
      [  701.827053]  [<ffffffff817c302a>] dio_bio_complete+0x41a/0x600
      [  701.827057]  [<ffffffff81bd19c8>] ? blk_queue_exit+0x108/0x270
      [  701.827060]  [<ffffffff817c32b0>] dio_bio_end_aio+0xa0/0x4d0
      [  701.827063]  [<ffffffff817c3210>] ? dio_bio_complete+0x600/0x600
      [  701.827067]  [<ffffffff81bd2806>] ? blk_account_io_completion+0x316/0x5d0
      [  701.827070]  [<ffffffff81bafe89>] bio_endio+0x79/0x200
      [  701.827074]  [<ffffffff81bd2c9f>] blk_update_request+0x1df/0xc50
      [  701.827078]  [<ffffffff81c02c27>] blk_mq_end_request+0x57/0x120
      [  701.827081]  [<ffffffff81c03670>] __blk_mq_complete_request+0x310/0x590
      [  701.827084]  [<ffffffff812348d8>] ? set_next_entity+0x2f8/0x2ed0
      [  701.827088]  [<ffffffff8124b34d>] ? put_prev_entity+0x22d/0x2a70
      [  701.827091]  [<ffffffff81c0394b>] blk_mq_complete_request+0x5b/0x80
      [  701.827094]  [<ffffffff821e2a33>] loop_queue_work+0x273/0x19d0
      [  701.827098]  [<ffffffff811f6578>] ? finish_task_switch+0x1c8/0x8e0
      [  701.827101]  [<ffffffff8129d058>] ? trace_hardirqs_on_caller+0x18/0x6c0
      [  701.827104]  [<ffffffff821e27c0>] ? lo_read_simple+0x890/0x890
      [  701.827108]  [<ffffffff8129dd60>] ? debug_check_no_locks_freed+0x350/0x350
      [  701.827111]  [<ffffffff811f63b0>] ? __hrtick_start+0x130/0x130
      [  701.827115]  [<ffffffff82a0c8f6>] ? __schedule+0x936/0x20b0
      [  701.827118]  [<ffffffff811dd6bd>] ? kthread_worker_fn+0x3ed/0x8d0
      [  701.827121]  [<ffffffff811dd4ed>] ? kthread_worker_fn+0x21d/0x8d0
      [  701.827125]  [<ffffffff8129d058>] ? trace_hardirqs_on_caller+0x18/0x6c0
      [  701.827128]  [<ffffffff811dd57f>] kthread_worker_fn+0x2af/0x8d0
      [  701.827132]  [<ffffffff811dd2d0>] ? __init_kthread_worker+0x170/0x170
      [  701.827135]  [<ffffffff82a1ea46>] ? _raw_spin_unlock_irqrestore+0x36/0x60
      [  701.827138]  [<ffffffff811dd2d0>] ? __init_kthread_worker+0x170/0x170
      [  701.827141]  [<ffffffff811dd2d0>] ? __init_kthread_worker+0x170/0x170
      [  701.827144]  [<ffffffff811dd00b>] kthread+0x24b/0x3a0
      [  701.827148]  [<ffffffff811dcdc0>] ? kthread_create_on_node+0x4c0/0x4c0
      [  701.827151]  [<ffffffff8129d70d>] ? trace_hardirqs_on+0xd/0x10
      [  701.827155]  [<ffffffff8116d41d>] ? do_group_exit+0xdd/0x350
      [  701.827158]  [<ffffffff811dcdc0>] ? kthread_create_on_node+0x4c0/0x4c0
      [  701.827161]  [<ffffffff82a1f52f>] ret_from_fork+0x3f/0x70
      [  701.827165]  [<ffffffff811dcdc0>] ? kthread_create_on_node+0x4c0/0x4c0
      [  701.827167] Memory state around the buggy address:
      [  701.827170]  ffff880080b95e80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
      [  701.827172]  ffff880080b95f00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
      [  701.827175] >ffff880080b95f80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
      [  701.827177]                          ^
      [  701.827179]  ffff880080b96000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
      [  701.827182]  ffff880080b96080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
      [  701.827183] ==================================================================
      
      The problem is that bio_check_pages_dirty calls bio_put, so we must
      not access bio fields after bio_check_pages_dirty.
      
      Fixes: 9b81c842 ("block: don't access bio->bi_error after bio_put()").
      Signed-off-by: default avatarMike Krinkin <krinkin.m.u@gmail.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarJens Axboe <axboe@fb.com>
      7ddc971f
  7. 30 Jan, 2016 4 commits
    • Bob Liu's avatar
      xen/blkfront: realloc ring info in blkif_resume · 3db70a85
      Bob Liu authored
      Need to reallocate ring info in the resume path, because info->rinfo was freed
      in blkif_free(). And 'multi-queue-max-queues' backend reports may have been
      changed.
      Signed-off-by: default avatarBob Liu <bob.liu@oracle.com>
      Reported-and-Tested-by: default avatarKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Signed-off-by: default avatarKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      3db70a85
    • Linus Torvalds's avatar
      Merge branch 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm · ad0b40fa
      Linus Torvalds authored
      Pull ARM fixes from Russell King:
       "Just one fix for a -fstack-protector-strong problem from Kees Cook,
        and adding the new copy_file_range syscall"
      
      * 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm:
        ARM: wire up copy_file_range() syscall
        ARM: 8500/1: fix atags_to_fdt with stack-protector-strong
      ad0b40fa
    • Linus Torvalds's avatar
      Merge tag 'powerpc-4.5-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · ec1cc55d
      Linus Torvalds authored
      Pull powerpc fixes from Michael Ellerman:
       - Wire up copy_file_range() syscall from Chandan Rajendra
       - Simplify module TOC handling from Alan Modra
       - Remove newly added extra definition of pmd_dirty from Stephen Rothwell
       - Allow user space to map rtas_rmo_buf from Vasant Hegde
       - Fix PE location code from Gavin Shan
       - Remove PPMU_HAS_SSLOT flag for Power8 from Madhavan Srinivasan
       - Fixup _HPAGE_CHG_MASK from Aneesh Kumar K.V
      
      * tag 'powerpc-4.5-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc/mm: Fixup _HPAGE_CHG_MASK
        powerpc/perf: Remove PPMU_HAS_SSLOT flag for Power8
        powerpc/eeh: Fix PE location code
        powerpc/mm: Allow user space to map rtas_rmo_buf
        powerpc: Remove newly added extra definition of pmd_dirty
        powerpc: Simplify module TOC handling
        powerpc: Wire up copy_file_range() syscall
      ec1cc55d
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 6b292a8a
      Linus Torvalds authored
      Pull s390 updates from Martin Schwidefsky:
       "An optimization for irq-restore, the SSM instruction is quite a bit
        slower than an if-statement and a STOSM.
      
        The copy_file_range system all is added.
      
        Cleanup for PCI and CIO.
      
        And a couple of bug fixes"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390/cio: update measurement characteristics
        s390/cio: ensure consistent measurement state
        s390/cio: fix measurement characteristics memleak
        s390/zcrypt: Fix cryptographic device id in kernel messages
        s390/pci: remove iomap sanity checks
        s390/pci: set error state for unusable functions
        s390/pci: fix bar check
        s390/pci: resize iomap
        s390/pci: improve ZPCI_* macros
        s390/pci: provide ZPCI_ADDR macro
        s390/pci: adjust IOMAP_MAX_ENTRIES
        s390/numa: move numa_init_late() from device to arch_initcall
        s390: remove all usages of PSW_ADDR_INSN
        s390: remove all usages of PSW_ADDR_AMODE
        s390: wire up copy_file_range syscall
        s390: remove superfluous memblock_alloc() return value checks
        s390/numa: allocate memory with correct alignment
        s390/irqflags: optimize irq restore
        s390/mm: use TASK_MAX_SIZE where applicable
      6b292a8a
  8. 29 Jan, 2016 20 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus-4.5' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · d3f71ae7
      Linus Torvalds authored
      Pull btrfs fixes from Chris Mason:
       "Dave had a small collection of fixes to the new free space tree code,
        one of which was keeping our sysfs files more up to date with feature
        bits as different things get enabled (lzo, raid5/6, etc).
      
        I should have kept the sysfs stuff for rc3, since we always manage to
        trip over something.  This time it was GFP_KERNEL from somewhere that
        is NOFS only.  Instead of rebasing it out I've put a revert in, and
        we'll fix it properly for rc3.
      
        Otherwise, Filipe fixed a btrfs DIO race and Qu Wenruo fixed up a
        use-after-free in our tracepoints that Dave Jones reported"
      
      * 'for-linus-4.5' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs:
        Revert "btrfs: synchronize incompat feature bits with sysfs files"
        btrfs: don't use GFP_HIGHMEM for free-space-tree bitmap kzalloc
        btrfs: sysfs: check initialization state before updating features
        Revert "btrfs: clear PF_NOFREEZE in cleaner_kthread()"
        btrfs: async-thread: Fix a use-after-free error for trace
        Btrfs: fix race between fsync and lockless direct IO writes
        btrfs: add free space tree to the cow-only list
        btrfs: add free space tree to lockdep classes
        btrfs: tweak free space tree bitmap allocation
        btrfs: tests: switch to GFP_KERNEL
        btrfs: synchronize incompat feature bits with sysfs files
        btrfs: sysfs: introduce helper for syncing bits with sysfs files
        btrfs: sysfs: add free-space-tree bit attribute
        btrfs: sysfs: fix typo in compat_ro attribute definition
      d3f71ae7
    • Linus Torvalds's avatar
      Merge tag 'pm+acpi-4.5-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 46552e68
      Linus Torvalds authored
      Pull power management and ACPI fixes from Rafael Wysocki:
       "These are: cpuidle fixes (including one fix for a recent regression),
        cpufreq fixes (including fixes for two issues introduced during the
        4.2 cycle), generic power domains framework fixes (two locking fixes
        and one cleanup), one locking fix in the ACPI-based PCI hotplug
        framework (ACPIPHP), removal of one ACPI backlight blacklist entry
        that isn't necessary any more and a PM Kconfig cleanup.
      
        Specifics:
      
         - Fix a recent cpuidle core regression that broke suspend-to-idle on
           all systems where cpuidle drivers don't provide ->enter_freeze
           callbacks for any states (Sudeep Holla).
      
         - Drop an unnecessary symbol definition from the cpuidle core code
           handling coupled CPU cores (Anders Roxell).
      
         - Fix a race condition related to governor initialization and removal
           in the cpufreq core (Viresh Kumar).
      
         - Clean up the cpufreq core to use list_is_last() for checking if the
           given policy object is the last element of a list instead of open
           coding that in a clumsy way (Gautham R Shenoy).
      
         - Fix compiler warnings in the pxa2xx and cpufreq-dt cpufreq drivers
           (Arnd Bergmann).
      
         - Fix two locking issues and clean up a comment in the generic power
           domains framework (Ulf Hansson, Marek Szyprowski, Moritz Fischer).
      
         - Fix the error code path of one function in the ACPI-based PCI
           hotplug framework (ACPIPHP) that forgets to release a lock acquired
           previously (Insu Yun).
      
         - Drop the ACPI backlight blacklist entry for Dell Inspiron 5737 that
           is not necessary any more (Hans de Goede).
      
         - Clean up the top-level PM Kconfig to stop requiring APM emulation
           to depend on PM which in fact isn't necessary (Arnd Bergmann)"
      
      * tag 'pm+acpi-4.5-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        cpufreq: cpufreq-dt: avoid uninitialized variable warnings:
        cpufreq: pxa2xx: fix pxa_cpufreq_change_voltage prototype
        PM: APM_EMULATION does not depend on PM
        cpufreq: Use list_is_last() to check last entry of the policy list
        cpufreq: Fix NULL reference crash while accessing policy->governor_data
        cpuidle: coupled: remove unused define cpuidle_coupled_lock
        PM / Domains: Fix typo in comment
        PM / Domains: Fix potential deadlock while adding/removing subdomains
        ACPI / PCI / hotplug: unlock in error path in acpiphp_enable_slot()
        ACPI: Revert "ACPI / video: Add Dell Inspiron 5737 to the blacklist"
        cpuidle: fix fallback mechanism for suspend to idle in absence of enter_freeze
        PM / domains: fix lockdep issue for all subdomains
      46552e68
    • Linus Torvalds's avatar
      Merge branch 'stable/for-linus-4.5' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb · ad233aca
      Linus Torvalds authored
      Pull swiotlb patchlet from Konrad Rzeszutek Wilk:
       "One trivial patch.
      
        Another patch (from Fengguang) is already in your tree courtesy of
        Andrew Morton - but I would prefer not to rebase my tree.  Hence the
        diff is very small"
      
      * 'stable/for-linus-4.5' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb:
        swiotlb: Make linux/swiotlb.h standalone includible
        MAINTAINERS: add git URL for swiotlb
      ad233aca
    • Linus Torvalds's avatar
      Merge branch 'stable/for-linus-4.5' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/mm · 29737370
      Linus Torvalds authored
      Pull cleancache cleanups from Konrad Rzeszutek Wilk:
       "Simple cleanups"
      
      * 'stable/for-linus-4.5' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/mm:
        include/linux/cleancache.h: Clean up code
        cleancache: constify cleancache_ops structure
      29737370
    • Linus Torvalds's avatar
      Merge tag 'iommu-fixes-v4.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · f6a239a9
      Linus Torvalds authored
      Pull IOMMU fixes from Joerg Roedel:
       "Five patches queued up:
      
         - Two patches for the AMD and Intel IOMMU drivers to fix alias
           handling and ATS handling.
      
         - Fix build error with arm io-pgtable code
      
         - Two documentation fixes"
      
      * tag 'iommu-fixes-v4.5-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:
        iommu: Update struct iommu_ops comments
        iommu/vt-d: Fix link to Intel IOMMU Specification
        iommu/amd: Correct the wrong setting of alias DTE in do_attach
        iommu/vt-d: Don't skip PCI devices when disabling IOTLB
        iommu/io-pgtable-arm: Fix io-pgtable-arm build failure
      f6a239a9
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-linus-v4.5-rc2' of... · f51d4d78
      Linus Torvalds authored
      Merge tag 'hwmon-for-linus-v4.5-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging
      
      Pull hwmon fixes from Guenter Roeck:
       - Use bit mask to calculate tdp limit in fam15h_power driver
       - Black-list Dell Studio XPS 8000 in dell-smm driver
      
      * tag 'hwmon-for-linus-v4.5-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
        hwmon: (fam15h_power) Add bit masking for tdp_limit
        hwmon: (dell-smm) Blacklist Dell Studio XPS 8000
      f51d4d78
    • Linus Torvalds's avatar
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · a12883f0
      Linus Torvalds authored
      Pull SCSI fixes from James Bottomley:
       "Four fixes: one to try to fix our repeated intermittent crashes in
        suspend/resume, one to correct a regression in the optimal I/O size
        reporting and a couple for randconfig build failures in the hisi_sas
        driver"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        SCSI: fix crashes in sd and sr runtime PM
        sd: Optimal I/O size is in bytes, not sectors
        hisi_sas: Restrict SCSI_HISI_SAS to arm64
        hisi_sas: SCSI_HISI_SAS should depend on HAS_DMA
      a12883f0
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · 13d56990
      Linus Torvalds authored
      Pull block layer fix from Jens Axboe:
       "This just contains the fix for the split issue that we had in -rc1.
      
        It's been well tested at this point, so let's get it in mainline so we
        don't have the same split issue for -rc2"
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        block: fix bio splitting on max sectors
      13d56990
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-cpuidle', 'pm-cpufreq', 'pm-domains' and 'pm-sleep' · ad1ac947
      Rafael J. Wysocki authored
      * pm-cpuidle:
        cpuidle: coupled: remove unused define cpuidle_coupled_lock
        cpuidle: fix fallback mechanism for suspend to idle in absence of enter_freeze
      
      * pm-cpufreq:
        cpufreq: cpufreq-dt: avoid uninitialized variable warnings:
        cpufreq: pxa2xx: fix pxa_cpufreq_change_voltage prototype
        cpufreq: Use list_is_last() to check last entry of the policy list
        cpufreq: Fix NULL reference crash while accessing policy->governor_data
      
      * pm-domains:
        PM / Domains: Fix typo in comment
        PM / Domains: Fix potential deadlock while adding/removing subdomains
        PM / domains: fix lockdep issue for all subdomains
      
      * pm-sleep:
        PM: APM_EMULATION does not depend on PM
      ad1ac947
    • Rafael J. Wysocki's avatar
      Merge branches 'acpi-video' and 'acpi-hotplug' · 0bce39cc
      Rafael J. Wysocki authored
      * acpi-video:
        ACPI: Revert "ACPI / video: Add Dell Inspiron 5737 to the blacklist"
      
      * acpi-hotplug:
        ACPI / PCI / hotplug: unlock in error path in acpiphp_enable_slot()
      0bce39cc
    • Linus Torvalds's avatar
      Merge tag 'sound-4.5-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · b5454432
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "There are a few fixes in ALSA core for bugs that have been spotted by
        fuzzer.  Also a temporary workaround for PowerPC (and possibly other)
        builds with incompatible ioctls was applied to compress API.
      
        Other than that, a few trivial fixes and quirks for FireWire BeBoB,
        USB-audio and HD-audio are found, too"
      
      * tag 'sound-4.5-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: hda - disable dynamic clock gating on Broxton before reset
        ALSA: hda - Add new GPU codec ID 0x10de0083 to snd-hda
        ALSA: dummy: Disable switching timer backend via sysfs
        ALSA: timer: fix SND_PCM_TIMER Kconfig text
        ALSA: Add missing dependency on CONFIG_SND_TIMER
        ALSA: bebob: Use a signed return type for get_formation_index
        ALSA: usb-audio: Fix TEAC UD-501/UD-503/NT-503 usb delay
        ALSA: compress: Disable GET_CODEC_CAPS ioctl for some architectures
        ALSA: seq: Degrade the error message for too many opens
        ALSA: seq: Fix incorrect sanity check at snd_seq_oss_synth_cleanup()
      b5454432
    • Linus Torvalds's avatar
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · b943d0b9
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Summary:
      
        - Misc amdgpu/radeon fixes
        - VC4 build fix
        - vmwgfx fix
        - misc rockchip fixes
      
        The etnaviv guys had an API feature they wanted in their first
        release, so I've merged that with their fixes"
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux: (41 commits)
        drm/vmwgfx: respect 'nomodeset'
        drm/amdgpu: only move pt bos in LRU list on success
        drm/radeon: fix DP audio support for APU with DCE4.1 display engine
        drm/radeon: Add a common function for DFS handling
        drm/radeon: cleaned up VCO output settings for DP audio
        drm/amd/powerplay: Update SMU firmware loading for Stoney
        drm/etnaviv: call correct function when trying to vmap a DMABUF
        drm/etnaviv: rename etnaviv_gem_vaddr to etnaviv_gem_vmap
        drm/etnaviv: fix get pages error path in etnaviv_gem_vaddr
        drm/etnaviv: fix memory leak in IOMMU init path
        drm/etnaviv: add further minor features and varyings count
        drm/etnaviv: add helper for comparing model/revision IDs
        drm/etnaviv: add helper to extract bitfields
        drm/etnaviv: use defined constants for the chip model
        drm/etnaviv: update common and state_hi xml.h files
        drm/etnaviv: ignore VG GPUs with FE2.0
        drm/amdgpu: don't init fbdev if we don't have any connectors
        drm/radeon: only init fbdev if we have connectors
        drm/radeon: Ensure radeon bo is unreserved in radeon_gem_va_ioctl
        drm/etnaviv: fix failure path if model is zero
        ...
      b943d0b9
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security · 704bb813
      Linus Torvalds authored
      Pull security layer fixes from James Morris:
       "The keys patch fixes a bug which is breaking kerberos, and the seccomp
        fix addresses a no_new_privs bypass"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
        KEYS: Only apply KEY_FLAG_KEEP to a key if a parent keyring has it set
        seccomp: always propagate NO_NEW_PRIVS on tsync
      704bb813
    • Chris Mason's avatar
      Revert "btrfs: synchronize incompat feature bits with sysfs files" · e410e34f
      Chris Mason authored
      This reverts commit 14e46e04.
      
      This ends up doing sysfs operations from deep in balance (where we
      should be GFP_NOFS) and under heavy balance load, we're making races
      against sysfs internals.
      
      Revert it for now while we figure things out.
      Signed-off-by: default avatarChris Mason <clm@fb.com>
      e410e34f
    • Libin Yang's avatar
      ALSA: hda - disable dynamic clock gating on Broxton before reset · 6639484d
      Libin Yang authored
      On Broxton, to make sure the reset controller works properly,
      MISCBDCGE bit (bit 6) in CGCTL (0x48) of PCI configuration space
      need be cleared before reset and set back to 1 after reset.
      Otherwise, it may prevent the CORB/RIRB logic from being reset.
      Signed-off-by: default avatarLibin Yang <libin.yang@linux.intel.com>
      Cc: <stable@vger.kernel.org> # v4.4+
      Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
      6639484d
    • Magnus Damm's avatar
      iommu: Update struct iommu_ops comments · 0d9bacb6
      Magnus Damm authored
      Update the comments around struct iommu_ops to match
      current state and fix a few typos while at it.
      Signed-off-by: default avatarMagnus Damm <damm+renesas@opensource.se>
      Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
      0d9bacb6
    • Michael S. Tsirkin's avatar
      iommu/vt-d: Fix link to Intel IOMMU Specification · 6f3cdb38
      Michael S. Tsirkin authored
      Looks like the VT-d spec at intel.com got moved.  Update the link.
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
      6f3cdb38
    • Baoquan He's avatar
      iommu/amd: Correct the wrong setting of alias DTE in do_attach · 9b1a12d2
      Baoquan He authored
      In below commit alias DTE is set when its peripheral is
      setting DTE. However there's a code bug here to wrongly
      set the alias DTE, correct it in this patch.
      
      commit e25bfb56
      Author: Joerg Roedel <jroedel@suse.de>
      Date:   Tue Oct 20 17:33:38 2015 +0200
      
          iommu/amd: Set alias DTE in do_attach/do_detach
      Signed-off-by: default avatarBaoquan He <bhe@redhat.com>
      Tested-by: default avatarMark Hounschell <markh@compro.net>
      Cc: stable@vger.kernel.org # v4.4
      Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
      9b1a12d2
    • Jeremy McNicoll's avatar
      iommu/vt-d: Don't skip PCI devices when disabling IOTLB · da972fb1
      Jeremy McNicoll authored
      Fix a simple typo when disabling IOTLB on PCI(e) devices.
      
      Fixes: b16d0cb9 ("iommu/vt-d: Always enable PASID/PRI PCI capabilities before ATS")
      Cc: stable@vger.kernel.org  # v4.4
      Signed-off-by: default avatarJeremy McNicoll <jmcnicol@redhat.com>
      Reviewed-by: default avatarAlex Williamson <alex.williamson@redhat.com>
      Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
      da972fb1
    • Lada Trimasova's avatar
      iommu/io-pgtable-arm: Fix io-pgtable-arm build failure · 8f6aff98
      Lada Trimasova authored
      Trying to build a kernel for ARC with both options CONFIG_COMPILE_TEST
      and CONFIG_IOMMU_IO_PGTABLE_LPAE enabled (e.g. as a result of "make
      allyesconfig") results in the following build failure:
      
       | CC drivers/iommu/io-pgtable-arm.o
       | linux/drivers/iommu/io-pgtable-arm.c: In
       | function ‘__arm_lpae_alloc_pages’:
       | linux/drivers/iommu/io-pgtable-arm.c:221:3:
       | error: implicit declaration of function ‘dma_map_single’
       | [-Werror=implicit-function-declaration]
       | dma = dma_map_single(dev, pages, size, DMA_TO_DEVICE);
       | ^
       | linux/drivers/iommu/io-pgtable-arm.c:221:42:
       | error: ‘DMA_TO_DEVICE’ undeclared (first use in this function)
       | dma = dma_map_single(dev, pages, size, DMA_TO_DEVICE);
       | ^
      
      Since IOMMU_IO_PGTABLE_LPAE depends on DMA API, io-pgtable-arm.c should
      include linux/dma-mapping.h. This fixes the reported failure.
      
      Cc: Alexey Brodkin <abrodkin@synopsys.com>
      Cc: Vineet Gupta <vgupta@synopsys.com>
      Cc: Joerg Roedel <joro@8bytes.org>
      Signed-off-by: default avatarLada Trimasova <ltrimas@synopsys.com>
      Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
      Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
      8f6aff98