1. 18 3月, 2015 4 次提交
  2. 17 3月, 2015 2 次提交
    • M
      virtio_mmio: fix access width for mmio · 704a0b5f
      Michael S. Tsirkin 提交于
      Going over the virtio mmio code, I noticed that it doesn't correctly
      access modern device config values using "natural" accessors: it uses
      readb to get/set them byte by byte, while the virtio 1.0 spec explicitly states:
      
      	4.2.2.2 Driver Requirements: MMIO Device Register Layout
      
      	...
      
      	The driver MUST only use 32 bit wide and aligned reads and writes to
      	access the control registers described in table 4.1.
      	For the device-specific configuration space, the driver MUST use
      	8 bit wide accesses for 8 bit wide fields, 16 bit wide and aligned
      	accesses for 16 bit wide fields and 32 bit wide and aligned accesses for
      	32 and 64 bit wide fields.
      
      Borrow code from virtio_pci_modern to do this correctly.
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      704a0b5f
    • M
      Merge tag 'kvm-arm-fixes-4.0-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm · f710a12d
      Marcelo Tosatti 提交于
      Fixes for KVM/ARM for 4.0-rc5.
      
      Fixes page refcounting issues in our Stage-2 page table management code,
      fixes a missing unlock in a gicv3 error path, and fixes a race that can
      cause lost interrupts if signals are pending just prior to entering the
      guest.
      f710a12d
  3. 16 3月, 2015 6 次提交
    • L
      Linux 4.0-rc4 · 06e5801b
      Linus Torvalds 提交于
      06e5801b
    • L
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · 08352086
      Linus Torvalds 提交于
      Pull drm fix from Dave Airlie:
       "An oops snuck in in an -rc3 patch, this fixes it"
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
        [PATCH] drm/mm: Fix support 4 GiB and larger ranges
      08352086
    • L
      Merge tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · 1ee89c51
      Linus Torvalds 提交于
      Pull clock framework fixes from Michael Turquette:
       "The clk fixes for 4.0-rc4 comprise three themes.
      
        First are the usual driver fixes for new regressions since v3.19.
      
        Second are fixes to the common clock divider type caused by recent
        changes to how we round clock rates.  This affects many clock drivers
        that use this common code.
      
        Finally there are fixes for drivers that improperly compared struct
        clk pointers (drivers must not deref these pointers).  While some of
        these drivers have done this for a long time, this did not cause a
        problem until we started generating unique struct clk pointers for
        every consumer.  A new function, clk_is_match was introduced to get
        these drivers working again and they are fixed up to no longer deref
        the pointers themselves"
      
      * tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
        ASoC: kirkwood: fix struct clk pointer comparing
        ASoC: fsl_spdif: fix struct clk pointer comparing
        ARM: imx: fix struct clk pointer comparing
        clk: introduce clk_is_match
        clk: don't export static symbol
        clk: divider: fix calculation of initial best divider when rounding to closest
        clk: divider: fix selection of divider when rounding to closest
        clk: divider: fix calculation of maximal parent rate for a given divider
        clk: divider: return real rate instead of divider value
        clk: qcom: fix platform_no_drv_owner.cocci warnings
        clk: qcom: fix platform_no_drv_owner.cocci warnings
        clk: qcom: Add PLL4 vote clock
        clk: qcom: lcc-msm8960: Fix PLL rate detection
        clk: qcom: Fix slimbus n and m val offsets
        clk: ti: Fix FAPLL parent enable bit handling
      1ee89c51
    • K
      [PATCH] drm/mm: Fix support 4 GiB and larger ranges · 046d669c
      Krzysztof Kolasa 提交于
      bad argument if(tmp)... in check_free_hole
      
      fix oops: kernel BUG at drivers/gpu/drm/drm_mm.c:305!
      
      [airlied: excellent, this was my task for today].
      Signed-off-by: NKrzysztof Kolasa <kkolasa@winsoft.pl>
      Reviewed-by: NChris wilson <chris@chris-wilson.co.uk>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      046d669c
    • L
      Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 6981e2af
      Linus Torvalds 提交于
      Pull ARM SoC fixes from Arnd Bergmann:
       "This is a rather unpleasantly large set of bug fixes for arm-soc, Most
        of them because of cross-tree dependencies for Exynos where we should
        have figured out the right path to merge things before the merge
        window, and then the maintainer being unable to sort things out in
        time during a business trip.
      
        The other changes contained here are the usual collection:
      
        MAINTAINERS file updates
         - Gregory Clement is now a co-maintainer for the legacy Marvell EBU
           platforms
         - A MAINTAINERS entry for the Freescale Vybrid platform that was
           added last year
         - Matt Porter no longer works as a maintainer on Broadcom SoCs
      
        Build-time issues
         - A compile-time error for at91
         - Several minor DT fixes on at91, imx, exynos, socfpga, and omap
         - The new digicolor platform was not correctly enabled at all
      
        Configuration issues
         - Two defconfig fix for regressions using USB on versatile express
           and on OMAP3
         - Enabling all 8 CPUs on Allwinner/SUNxi
         - Enabling the new STiH410 platform to be usable
      
        Bug fixes in platform code
         - A missing barrier for socfpga
         - Fixing LPDDR1 self-refresh mode on at91
         - Fixing RTC interrupt numbers on Exynos3250
         - Fixing a cache-coherency issues in CPU power-down on Exynos5
         - Multiple small OMAP power management fixes"
      
      * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (69 commits)
        MAINTAINERS: Add myself as co-maintainer to the legacy support of the mvebu SoCs
        ARM: at91: pm_slowclock: fix the compilation error
        ARM: at91/dt: fix USB high-speed clock to select UTMI
        ARM: at91/dt: fix at91 udc compatible strings
        ARM: at91/dt: declare matrix node as a syscon device
        ARM: vexpress: update CONFIG_USB_ISP1760 option
        ARM: digicolor: add the machine directory to Makefile
        ARM: STi: Add STiH410 SoC support
        MAINTAINERS: add Freescale Vybrid SoC
        MAINTAINERS: Remove self as ARM mach-bcm co-maintainer
        ARM: imx6sl-evk: set swbst_reg as vbus's parent reg
        ARM: imx6qdl-sabresd: set swbst_reg as vbus's parent reg
        ARM: at91/dt: at91sam9261: fix clocks and clock-names in udc definition
        ARM: OMAP2+: Fix wl12xx on dm3730-evm with mainline u-boot
        ARM: OMAP: enable TWL4030_USB in omap2plus_defconfig
        ARM: dts: dra7x-evm: avoid possible contention while muxing on CAN lines
        ARM: dts: dra7x-evm: Don't use dcan1_rx.gpio1_15 in DCAN pinctrl
        ARM: dts: am43xx: fix SLEWCTRL_FAST pinctrl binding
        ARM: dts: am33xx: fix SLEWCTRL_FAST pinctrl binding
        ARM: dts: OMAP5: fix polling intervals for thermal zones
        ...
      6981e2af
    • L
      Merge tag 'irqchip-fixes-4.0' of git://git.infradead.org/users/jcooper/linux · 71c87bd0
      Linus Torvalds 提交于
      Pull irqchip fixes from Jason Cooper:
       "armada-370-xp:
         - Chained per-cpu interrupts
      
        gic{,-v3,v3-its}"
         - Various fixes for safer operation"
      
      * tag 'irqchip-fixes-4.0' of git://git.infradead.org/users/jcooper/linux:
        irqchip: gicv3-its: Support safe initialization
        irqchip: gicv3-its: Define macros for GITS_CTLR fields
        irqchip: gicv3-its: Add limitation to page order
        irqchip: gicv3-its: Use 64KB page as default granule
        irqchip: gicv3-its: Zero itt before handling to hardware
        irqchip: gic-v3: Fix out of bounds access to cpu_logical_map
        irqchip: gic: Fix unsafe locking reported by lockdep
        irqchip: gicv3-its: Fix unsafe locking reported by lockdep
        irqchip: gicv3-its: Iterate over PCI aliases to generate ITS configuration
        irqchip: gicv3-its: Allocate enough memory for the full range of DeviceID
        irqchip: gicv3-its: Fix ITS CPU init
        irqchip: armada-370-xp: Fix chained per-cpu interrupts
      71c87bd0
  4. 15 3月, 2015 7 次提交
  5. 14 3月, 2015 12 次提交
  6. 13 3月, 2015 9 次提交
    • G
      of/platform: Fix sparc:allmodconfig build · a697c2ef
      Guenter Roeck 提交于
      sparc:allmodconfig fails to build with:
      
      drivers/built-in.o: In function `platform_bus_init':
      (.init.text+0x3684): undefined reference to `of_platform_register_reconfig_notifier'
      
      of_platform_register_reconfig_notifier is only declared if both OF_ADDRESS
      and OF_DYNAMIC are configured. Yet, the include file only declares a dummy
      function if OF_DYNAMIC is not configured. The sparc architecture does not
      configure OF_ADDRESS, but does configure OF_DYNAMIC, causing above error.
      
      Fixes: 801d728c ("of/reconfig: Add OF_DYNAMIC notifier for platform_bus_type")
      Cc: Pantelis Antoniou <pantelis.antoniou@konsulko.com>
      Signed-off-by: NGuenter Roeck <linux@roeck-us.net>
      Signed-off-by: NRob Herring <robh@kernel.org>
      a697c2ef
    • W
      KVM: VMX: Set msr bitmap correctly if vcpu is in guest mode · 670125bd
      Wincy Van 提交于
      In commit 3af18d9c ("KVM: nVMX: Prepare for using hardware MSR bitmap"),
      we are setting MSR_BITMAP in prepare_vmcs02 if we should use hardware. This
      is not enough since the field will be modified by following vmx_set_efer.
      
      Fix this by setting vmx_msr_bitmap_nested in vmx_set_msr_bitmap if vcpu is
      in guest mode.
      Signed-off-by: NWincy Van <fanwenyi0529@gmail.com>
      Signed-off-by: NMarcelo Tosatti <mtosatti@redhat.com>
      670125bd
    • W
      arm/arm64: KVM: fix missing unlock on error in kvm_vgic_create() · b52104e5
      Wei Yongjun 提交于
      Add the missing unlock before return from function kvm_vgic_create()
      in the error handling case.
      Signed-off-by: NWei Yongjun <yongjun_wei@trendmicro.com.cn>
      Signed-off-by: NChristoffer Dall <christoffer.dall@linaro.org>
      b52104e5
    • T
      ALSA: hda - Don't access stereo amps for mono channel widgets · ef403edb
      Takashi Iwai 提交于
      The current HDA generic parser initializes / modifies the amp values
      always in stereo, but this seems causing the problem on ALC3229 codec
      that has a few mono channel widgets: namely, these mono widgets react
      to actions for both channels equally.
      
      In the driver code, we do care the mono channel and create a control
      only for the left channel (as defined in HD-audio spec) for such a
      node.  When the control is updated, only the left channel value is
      changed.  However, in the resume, the right channel value is also
      restored from the initial value we took as stereo, and this overwrites
      the left channel value.  This ends up being the silent output as the
      right channel has been never touched and remains muted.
      
      This patch covers the places where unconditional stereo amp accesses
      are done and converts to the conditional accesses.
      
      Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=94581
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      ef403edb
    • M
      uapi/virtio_scsi: allow overriding CDB/SENSE size · a4994b81
      Michael S. Tsirkin 提交于
      QEMU wants to use virtio scsi structures with
      a different VIRTIO_SCSI_CDB_SIZE/VIRTIO_SCSI_SENSE_SIZE,
      let's add ifdefs to allow overriding them.
      
      Keep the old defines under new names:
      VIRTIO_SCSI_CDB_DEFAULT_SIZE/VIRTIO_SCSI_SENSE_DEFAULT_SIZE,
      since that's what these values really are:
      defaults for cdb/sense size fields.
      Suggested-by: NPaolo Bonzini <pbonzini@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      a4994b81
    • M
      virtio_mmio: generation support · 87e7bf14
      Michael S. Tsirkin 提交于
      virtio_mmio currently lacks generation support which
      makes multi-byte field access racy.
      Fix by getting the value at offset 0xfc for version 2
      devices. Nothing we can do for version 1, so return
      generation id 0.
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      87e7bf14
    • M
      virtio_rpmsg: set DRIVER_OK before using device · 71e4b8bf
      Michael S. Tsirkin 提交于
      virtio spec requires that all drivers set DRIVER_OK
      before using devices. While rpmsg isn't yet
      included in the virtio 1 spec, previous spec versions
      also required this.
      
      virtio rpmsg violates this rule: is calls kick
      before setting DRIVER_OK.
      
      The fix isn't trivial since simply calling virtio_device_ready earlier
      would mean we might get an interrupt in parallel with adding buffers.
      
      Instead, split kick out to prepare+notify calls.  prepare before
      virtio_device_ready - when we know we won't get interrupts. notify right
      afterwards.
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      Acked-by: NOhad Ben-Cohen <ohad@wizery.com>
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      71e4b8bf
    • M
      9p/trans_virtio: fix hot-unplug · 8051a2a5
      Michael S. Tsirkin 提交于
      On device hot-unplug, 9p/virtio currently will kfree channel while
      it might still be in use.
      
      Of course, it might stay used forever, so it's an extremely ugly hack,
      but it seems better than use-after-free that we have now.
      
      [ Unused variable removed, whitespace cleanup, msg single-lined --RR ]
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      8051a2a5
    • L
      Merge branch 'akpm' (patches from Andrew) · c202baf0
      Linus Torvalds 提交于
      Merge misc fixes from Andrew Morton:
       "13 fixes"
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>:
        memcg: disable hierarchy support if bound to the legacy cgroup hierarchy
        mm: reorder can_do_mlock to fix audit denial
        kasan, module: move MODULE_ALIGN macro into <linux/moduleloader.h>
        kasan, module, vmalloc: rework shadow allocation for modules
        fanotify: fix event filtering with FAN_ONDIR set
        mm/nommu.c: export symbol max_mapnr
        arch/c6x/include/asm/pgtable.h: define dummy pgprot_writecombine for !MMU
        nilfs2: fix deadlock of segment constructor during recovery
        mm: cma: fix CMA aligned offset calculation
        mm, hugetlb: close race when setting PageTail for gigantic pages
        mm, oom: do not fail __GFP_NOFAIL allocation if oom killer is disabled
        drivers/rtc/rtc-s3c.c: add .needs_src_clk to s3c6410 RTC data
        ocfs2: make append_dio an incompat feature
      c202baf0