03 Feb, 2015

7 commits

  • …/linux into drm-fixes

    Three small fixes that came up during last week, nothing scary:

    - Accidently incremented a counter instead of decrementing it (copy-paste error)
    - Module parameter of max num of queues must be at least 1 and not 0
    - Don't do BUG() as a result from wrong user input

    * tag 'drm-amdkfd-fixes-2015-02-02' of git://people.freedesktop.org/~gabbayo/linux:
    drm/amdkfd: Don't create BUG due to incorrect user parameter
    drm/amdkfd: max num of queues can't be 0
    drm/amdkfd: Fix bug in accounting of queues

    Dave Airlie
     
  • One last round of fixes for radeon for 3.19:
    - fix some fallout from the reservation object integration on the
    test/benchmark options
    - fix a crash in the gpu vm code if gfx init fails
    - fix a pll issue that leads to a blank screen on older IGP parts

    * 'drm-fixes-3.19' of git://people.freedesktop.org/~agd5f/linux:
    drm/radeon: fix the crash in test functions
    drm/radeon: fix the crash in benchmark functions
    drm/radeon: properly set vm fragment size for TN/RL
    drm/radeon: don't init gpuvm if accel is disabled (v3)
    drm/radeon: fix PLLs on RS880 and older v2

    Dave Airlie
     
  • radeon_copy_dma and radeon_copy_blit must be called with
    a valid reservation object. Otherwise a crash will be provoked.
    We borrow the object from vram BO.

    bug:
    https://bugs.freedesktop.org/show_bug.cgi?id=88464

    Cc: stable@vger.kernel.org
    Reviewed-by: Christian König
    Signed-off-by: Ilija Hadzic
    Signed-off-by: Alex Deucher

    Ilija Hadzic
     
  • radeon_copy_dma and radeon_copy_blit must be called with
    a valid reservation object. Otherwise a crash will be provoked.
    We borrow the object from destination BO.

    bug:
    https://bugs.freedesktop.org/show_bug.cgi?id=88464

    Cc: stable@vger.kernel.org
    Reviewed-by: Christian König
    Signed-off-by: Ilija Hadzic
    Signed-off-by: Alex Deucher

    Ilija Hadzic
     
  • Should be the same as cayman. We don't use VM by default
    on NI parts so this isn't critical.

    Signed-off-by: Alex Deucher
    Cc: stable@vger.kernel.org

    Alex Deucher
     
  • If acceleration is disabled, it does not make sense
    to init gpuvm since nothing will use it. Moreover,
    if radeon_vm_init() gets called it uses accel to try
    and clear the pde tables, etc. which results in a bug.

    v2: handle vm_fini as well
    v3: handle bo_open/close as well

    Bug:
    https://bugs.freedesktop.org/show_bug.cgi?id=88786

    Signed-off-by: Alex Deucher
    Cc: stable@vger.kernel.org

    Alex Deucher
     
  • This is a workaround for RS880 and older chips which seem to have
    an additional limit on the minimum PLL input frequency.

    v2: fix signed/unsigned warning

    bugs:
    https://bugzilla.kernel.org/show_bug.cgi?id=91861
    https://bugzilla.kernel.org/show_bug.cgi?id=83461

    Signed-off-by: Christian König
    Signed-off-by: Alex Deucher
    Cc: stable@vger.kernel.org

    Christian König
     

02 Feb, 2015

9 commits

  • This patch changes a BUG_ON() statement to pr_debug, in case the user tries to
    update a non-existing queue.

    Signed-off-by: Oded Gabbay
    Reviewed-by: Ben Goz
    Reviewed-by: Jammy Zhou
    Reviewed-by: Alex Deucher

    Oded Gabbay
     
  • Signed-off-by: Oded Gabbay
    Reviewed-by: Jammy Zhou
    Reviewed-by: Alex Deucher

    Oded Gabbay
     
  • Signed-off-by: Oded Gabbay
    Reviewed-by: Jammy Zhou
    Reviewed-by: Alex Deucher

    Oded Gabbay
     
  • Linus Torvalds
     
  • Pull ARM SoC fixes from Olof Johansson:
    "One more week's worth of fixes. Worth pointing out here are:

    - A patch fixing detaching of iommu registrations when a device is
    removed -- earlier the ops pointer wasn't managed properly
    - Another set of Renesas boards get the same GIC setup fixup as
    others have in previous -rcs
    - Serial port aliases fixups for sunxi. We did the same to tegra but
    we caught that in time before the merge window due to more machines
    being affected. Here it took longer for anyone to notice.
    - A couple more DT tweaks on sunxi
    - A follow-up patch for the mvebu coherency disabling in last -rc
    batch"

    * tag 'armsoc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
    arm: dma-mapping: Set DMA IOMMU ops in arm_iommu_attach_device()
    ARM: shmobile: r8a7790: Instantiate GIC from C board code in legacy builds
    ARM: shmobile: r8a73a4: Instantiate GIC from C board code in legacy builds
    ARM: mvebu: don't set the PL310 in I/O coherency mode when I/O coherency is disabled
    ARM: sunxi: dt: Fix aliases
    ARM: dts: sun4i: Add simplefb node with de_fe0-de_be0-lcd0-hdmi pipeline
    ARM: dts: sun6i: ippo-q8h-v5: Fix serial0 alias
    ARM: dts: sunxi: Fix usb-phy support for sun4i/sun5i

    Linus Torvalds
     
  • Pull input layer updates from Dmitry Torokhov:
    "Just a few quirks for PS/2 this time"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
    Input: elantech - add more Fujtisu notebooks to force crc_enabled
    Input: i8042 - add noloop quirk for Medion Akoya E7225 (MD98857)
    Input: synaptics - adjust min/max for Lenovo ThinkPad X1 Carbon 2nd

    Linus Torvalds
     
  • Commit 8eb23b9f35aa ("sched: Debug nested sleeps") added code to report
    on nested sleep conditions, which we generally want to avoid because the
    inner sleeping operation can re-set the thread state to TASK_RUNNING,
    but that will then cause the outer sleep loop not actually sleep when it
    calls schedule.

    However, that's actually valid traditional behavior, with the inner
    sleep being some fairly rare case (like taking a sleeping lock that
    normally doesn't actually need to sleep).

    And the debug code would actually change the state of the task to
    TASK_RUNNING internally, which makes that kind of traditional and
    working code not work at all, because now the nested sleep doesn't just
    sometimes cause the outer one to not block, but will cause it to happen
    every time.

    In particular, it will cause the cardbus kernel daemon (pccardd) to
    basically busy-loop doing scheduling, converting a laptop into a heater,
    as reported by Bruno Prémont. But there may be other legacy uses of
    that nested sleep model in other drivers that are also likely to never
    get converted to the new model.

    This fixes both cases:

    - don't set TASK_RUNNING when the nested condition happens (note: even
    if WARN_ONCE() only _warns_ once, the return value isn't whether the
    warning happened, but whether the condition for the warning was true.
    So despite the warning only happening once, the "if (WARN_ON(..))"
    would trigger for every nested sleep.

    - in the cases where we knowingly disable the warning by using
    "sched_annotate_sleep()", don't change the task state (that is used
    for all core scheduling decisions), instead use '->task_state_change'
    that is used for the debugging decision itself.

    (Credit for the second part of the fix goes to Oleg Nesterov: "Can't we
    avoid this subtle change in behaviour DEBUG_ATOMIC_SLEEP adds?" with the
    suggested change to use 'task_state_change' as part of the test)

    Reported-and-bisected-by: Bruno Prémont
    Tested-by: Rafael J Wysocki
    Acked-by: Oleg Nesterov
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner ,
    Cc: Ilya Dryomov ,
    Cc: Mike Galbraith
    Cc: Ingo Molnar
    Cc: Peter Hurley ,
    Cc: Davidlohr Bueso ,
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • Add two more Fujitsu LIFEBOOK models that also ship with the Elantech
    touchpad and don't work with crc_disabled to the quirk list.

    Signed-off-by: Rainer Koenig
    Cc: stable@vger.kernel.org
    Signed-off-by: Dmitry Torokhov

    Rainer Koenig
     
  • …ernel/git/horms/renesas into fixes

    Merge "Third Round of Renesas ARM Based SoC Fixes for v3.19" from Simon Horman:

    * Instantiate GIC from C board code in legacy builds on r8a7790 and r8a73a4

    * tag 'renesas-soc-fixes3-for-v3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
    ARM: shmobile: r8a7790: Instantiate GIC from C board code in legacy builds
    ARM: shmobile: r8a73a4: Instantiate GIC from C board code in legacy builds

    Signed-off-by: Olof Johansson <olof@lixom.net>

    Olof Johansson
     

01 Feb, 2015

1 commit

  • Pull i2c fixes from Wolfram Sang:
    "i2c driver bugfixes (s3c2410, slave-eeprom, sh_mobile), size
    regression "bugfix" (i2c slave), documentation bugfix (st).

    Also, one documentation update (da9063), so some devicetrees can now
    be verified"

    * 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
    i2c: sh_mobile: terminate DMA reads properly
    i2c: Only include slave support if selected
    i2c: s3c2410: fix ABBA deadlock by keeping clock prepared
    i2c: slave-eeprom: fix boundary check when using sysfs
    i2c: st: Rename clock reference to something that exists
    DT: i2c: Add devices handled by the da9063 MFD driver

    Linus Torvalds
     

31 Jan, 2015

11 commits

  • Pull char/misc driver fixes from Greg KH:
    "Here are two tiny patches, one fixing up the drivers/Kconfig file, and
    one adding a MAINTAINERS entry for the UIO git tree"

    * tag 'char-misc-3.19-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
    drivers/Kconfig: remove duplicate entry for soc
    MAINTAINERS: add git url entry for UIO

    Linus Torvalds
     
  • Pull staging tree fixes from Greg KH:
    "Here are two tiny staging tree fixes. One for the nvec driver to
    resolve a reported problem, and one to add a MAINTAINERS entry for the
    Android drivers"

    * tag 'staging-3.19-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
    MAINTAINERS: add Android driver entries
    staging: nvec: specify a platform-device base id

    Linus Torvalds
     
  • Pull USB fixes from Greg KH:
    "Here are some small USB fixes and quirk additions for 3.19-rc7.

    All have been in linux-next for a while with no reported problems"

    * tag 'usb-3.19-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
    USB: Add OTG PET device to TPL
    usb-storage/SCSI: blacklist FUA on JMicron 152d:2566 USB-SATA controller
    uas: Add no-report-opcodes quirk for Simpletech devices with id 4971:8017
    storage: Revise/fix quirk for 04E6:000F SCM USB-SCSI converter
    usb: phy: never defer probe in non-OF case
    usb: dwc2: call dwc2_is_controller_alive() under spinlock

    Linus Torvalds
     
  • Pull perf fixes from Ingo Molnar:
    "Mostly tooling fixes, but also an event groups fix, two PMU driver
    fixes and a CPU model variant addition"

    * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    perf: Tighten (and fix) the grouping condition
    perf/x86/intel: Add model number for Airmont
    perf/rapl: Fix crash in rapl_scale()
    perf/x86/intel/uncore: Move uncore_box_init() out of driver initialization
    perf probe: Fix probing kretprobes
    perf symbols: Introduce 'for' method to iterate over the symbols with a given name
    perf probe: Do not rely on map__load() filter to find symbols
    perf symbols: Introduce method to iterate symbols ordered by name
    perf symbols: Return the first entry with a given name in find_by_name method
    perf annotate: Fix memory leaks in LOCK handling
    perf annotate: Handle ins parsing failures
    perf scripting perl: Force to use stdbool
    perf evlist: Remove extraneous 'was' on error message

    Linus Torvalds
     
  • Pull btrfs fix from Chris Mason:
    "We have one more fix for btrfs in my for-linus branch - this was a bug
    in the new raid5/6 scrubbing support"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs:
    btrfs: fix raid56 scrub failed in xfstests btrfs/072

    Linus Torvalds
     
  • Pull quota and UDF fix from Jan Kara:
    "A fix for UDF to properly free preallocated blocks and a fix for quota
    so that Q_GETQUOTA quotactl reports correct numbers for XFS filesystem
    (and similarly Q_XGETQUOTA quotactl works properly for other
    filesystems)"

    * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
    quota: Switch ->get_dqblk() and ->set_dqblk() to use bytes as space units
    udf: Release preallocation on last writeable close

    Linus Torvalds
     
  • Pull KVM fixes from Paolo Bonzini:
    "The ARM changes are largish, but not too scary. And a simple fix for
    x86 (bug introduced in 3.19)"

    (Paolo sayus these are the "Final" fixes. We'll see).

    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
    KVM: x86: check LAPIC presence when building apic_map
    arm/arm64: KVM: Use kernel mapping to perform invalidation on page fault
    arm/arm64: KVM: Invalidate data cache on unmap
    arm/arm64: KVM: Use set/way op trapping to track the state of the caches

    Linus Torvalds
     
  • Pull IOMMU fixes from Joerg Roedel:
    "Two small fixes for the Tegra GART IOMMU driver:

    - provide a .map_sg function for iommu_ops
    - do not register Tegra GART driver as a workaround because of issues
    with it when used from DRM code"

    * tag 'iommu-fixes-v3.19-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:
    iommu/tegra: gart: Provide default ->map_sg() callback
    iommu/tegra: gart: Do not register with bus

    Linus Torvalds
     
  • Pull intel and dp mst drm fixes from Dave Airlie:
    "Intel had a few more fixes lined up and no point me sitting on them,
    along with a DP MST fix from Rob for a race at undock + vt switch"

    * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
    drm: fix fb-helper vs MST dangling connector ptrs (v2)
    drm/i915: BDW Fix Halo PCI IDs marked as ULT.
    drm/i915: Fix and clean BDW PCH identification
    drm/i915: Only fence tiled region of object.
    drm/i915: fix inconsistent brightness after resume
    drm/i915: Init PPGTT before context enable

    Linus Torvalds
     
  • Fix misspelled define.

    Fixes: 33692f27597f ("vm: add VM_FAULT_SIGSEGV handling support")
    Signed-off-by: Guenter Roeck
    Signed-off-by: Linus Torvalds

    Guenter Roeck
     
  • DMA read requests could miss proper termination, so two more bytes would
    have been read via PIO overwriting the end of the buffer with wrong
    data. Make DMA stop handling more readable while we are here.

    Signed-off-by: Wolfram Sang
    Signed-off-by: Wolfram Sang

    Wolfram Sang
     

30 Jan, 2015

12 commits

  • We forgot to re-check LAPIC after splitting the loop in commit
    173beedc1601 (KVM: x86: Software disabled APIC should still deliver
    NMIs, 2014-11-02).

    Signed-off-by: Radim Krčmář
    Fixes: 173beedc1601f51dae9d579aa7a414c5aa8f700b
    Signed-off-by: Paolo Bonzini

    Radim Krčmář
     
  • …t/kvmarm/kvmarm into kvm-master

    Second round of fixes for KVM/ARM for 3.19.

    Fixes memory corruption issues on APM platforms and swapping issues on
    DMA-coherent systems.

    Paolo Bonzini
     
  • misc i915 fixes, mostly all stable material as well.

    * tag 'drm-intel-fixes-2015-01-29' of git://anongit.freedesktop.org/drm-intel:
    drm/i915: BDW Fix Halo PCI IDs marked as ULT.
    drm/i915: Fix and clean BDW PCH identification
    drm/i915: Only fence tiled region of object.
    drm/i915: fix inconsistent brightness after resume
    drm/i915: Init PPGTT before context enable

    Dave Airlie
     
  • VT switch back/forth from console to xserver (for example) has potential
    to go horribly wrong if a dynamic DP MST connector ends up in the saved
    modeset that is restored when switching back to fbcon.

    When removing a dynamic connector, don't forget to clean up the saved
    state.

    v1: original
    v2: null out set->fb if no more connectors to avoid making i915 cranky

    Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1184968
    Cc: stable@vger.kernel.org #v3.17+
    Signed-off-by: Rob Clark
    Signed-off-by: Dave Airlie

    Rob Clark
     
  • Pull device mapper fixes from Mike Snitzer:
    "One stable fix for a dm-cache 3.19-rc6 regression and one stable fix
    for dm-thin:

    - fix DM cache metadata open/lookup error paths to properly use
    ERR_PTR and IS_ERR (fixes: 3.19-rc6 "stable" commit 9b1cc9f251)

    - fix DM thin-provisioning to disallow userspace from sending
    messages to the thin-pool if the pool is in READ_ONLY or FAIL mode
    since no metadata changes are allowed in these modes"

    * tag 'dm-3.19-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
    dm thin: don't allow messages to be sent to a pool target in READ_ONLY or FAIL mode
    dm cache: fix missing ERR_PTR returns and handling

    Linus Torvalds
     
  • Pull NFS client bugfixes from Trond Myklebust:
    "Highlights include:

    - Stable fix for a NFSv4.1 Oops on mount
    - Stable fix for an O_DIRECT deadlock condition
    - Fix an issue with submounted volumes and fake duplicate inode
    numbers"

    * tag 'nfs-for-3.19-3' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
    NFS: Fix use of nfs_attr_use_mounted_on_fileid()
    NFSv4.1: Fix an Oops in nfs41_walk_client_list
    nfs: fix dio deadlock when O_DIRECT flag is flipped

    Linus Torvalds
     
  • Pull Ceph fixes from Sage Weil:
    "These paches from Ilya finally squash a race condition with layered
    images that he's been chasing for a while"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:
    rbd: drop parent_ref in rbd_dev_unprobe() unconditionally
    rbd: fix rbd_dev_parent_get() when parent_overlap == 0

    Linus Torvalds
     
  • When handling a fault in stage-2, we need to resync I$ and D$, just
    to be sure we don't leave any old cache line behind.

    That's very good, except that we do so using the *user* address.
    Under heavy load (swapping like crazy), we may end up in a situation
    where the page gets mapped in stage-2 while being unmapped from
    userspace by another CPU.

    At that point, the DC/IC instructions can generate a fault, which
    we handle with kvm->mmu_lock held. The box quickly deadlocks, user
    is unhappy.

    Instead, perform this invalidation through the kernel mapping,
    which is guaranteed to be present. The box is much happier, and so
    am I.

    Signed-off-by: Marc Zyngier
    Signed-off-by: Christoffer Dall

    Marc Zyngier
     
  • Let's assume a guest has created an uncached mapping, and written
    to that page. Let's also assume that the host uses a cache-coherent
    IO subsystem. Let's finally assume that the host is under memory
    pressure and starts to swap things out.

    Before this "uncached" page is evicted, we need to make sure
    we invalidate potential speculated, clean cache lines that are
    sitting there, or the IO subsystem is going to swap out the
    cached view, loosing the data that has been written directly
    into memory.

    Signed-off-by: Marc Zyngier
    Signed-off-by: Christoffer Dall

    Marc Zyngier
     
  • Trying to emulate the behaviour of set/way cache ops is fairly
    pointless, as there are too many ways we can end-up missing stuff.
    Also, there is some system caches out there that simply ignore
    set/way operations.

    So instead of trying to implement them, let's convert it to VA ops,
    and use them as a way to re-enable the trapping of VM ops. That way,
    we can detect the point when the MMU/caches are turned off, and do
    a full VM flush (which is what the guest was trying to do anyway).

    This allows a 32bit zImage to boot on the APM thingy, and will
    probably help bootloaders in general.

    Signed-off-by: Marc Zyngier
    Signed-off-by: Christoffer Dall

    Marc Zyngier
     
  • Pull sound fixes from Takashi Iwai:
    "This batch ended up being larger than wished, but there is nothing to
    worry too much there.

    Most of commits are for ASoC, a compress NULL dereference fix, a fix
    for probe error handling, and the rest are device-specific fixes. In
    addition, we have a fix for a long-standing but of seq-dummy driver,
    which just cuts off the buggy part in the end"

    * tag 'sound-3.19-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
    ALSA: seq-dummy: remove deadlock-causing events on close
    ASoC: omap-mcbsp: Correct CBM_CFS dai format configuration
    ASoC: soc-compress.c: fix NULL dereference
    ASoC: rt286: set the same format for dac and adc
    ASoC: wm8904: fix runtime warning
    ASoC: simple-card: Fix crash in asoc_simple_card_unref()
    ASoC: fsl: imx-wm8962: Set the card owner field
    ASoC: pcm512x: Fix DSP program selection
    ASoC: rt5677: Modify the behavior that updates the PLL parameter.
    ASoC: fsl_ssi: Fix irq error check
    ASoC: rockchip: i2s: applys rate symmetry for CPU DAI
    ASoC: Intel: Add NULL checks for the stream pointer
    ASoC: wm8960: Fix capture sample rate from 11250 to 11025
    ASoC: adi: Add missing return statement.
    ASoC: Intel: Don't change offset of block allocator during fixed allocate
    ASoC: ts3a227e: Check and report jack status at probe
    ASoC: fsl_esai: Fix incorrect xDC field width of xCCR registers

    Linus Torvalds
     
  • Pull final pin control fix from Linus Walleij:
    "A late pin control fix for the v3.19 series: The AT91 gpio controller
    would miss wakeup events, this single fix make it work properly"

    [ "Final"? Yeah, I'll believe that once I've actually released 3.19 ;) - Linus ]

    * tag 'pinctrl-v3.19-4' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl:
    pinctrl: at91: allow to have disabled gpio bank

    Linus Torvalds