08 Jul, 2012

1 commit

  • Pull ARM fixes from Russell King:
    "Last merge window, we had some updates from Al cleaning up the signal
    restart handling. These have caused some problems on ARM, and while
    Al has some fixes, we have some concerns with Al's patches but we've
    been unsuccesful with discussing this.

    We have got to the point where we need to do something, and we've
    decided that the best solution is to revert the appropriate commits
    until Al is able to reply to us.

    Also included here are four patches to fix warnings that I've noticed
    in my build system, and one fix for kprobes test code."

    * 'fixes' of git://git.linaro.org/people/rmk/linux-arm:
    ARM: fix warning caused by wrongly typed arm_dma_limit
    ARM: fix warnings about atomic64_read
    ARM: 7440/1: kprobes: only test 'sub pc, pc, #1b-2b+8-2' on ARMv6
    ARM: 7441/1: perf: return -EOPNOTSUPP if requested mode exclusion is unavailable
    ARM: 7443/1: Revert "new way of handling ERESTART_RESTARTBLOCK"
    ARM: 7442/1: Revert "remove unused restart trampoline"
    ARM: fix set_domain() macro
    ARM: fix mach-versatile/pci.c warning

    Linus Torvalds
     

06 Jul, 2012

2 commits

  • Pull ARM SoC fixes from Arnd Bergmann:
    "Small fixes on multiple ARM platforms
    - A build regression from a previous fix on dove and mv78xx0
    - Two fixes for recently (3.5-rc1) changed mmp/pxa code
    - multiple omap2+ bug fixes
    - two trivial fixes for i.MX
    - one v3.5 regression for mxs"

    * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
    ARM: apx4devkit: fix FEC enabling PHY clock
    ARM: OMAP2+: hwmod data: Fix wrong McBSP clock alias on OMAP4
    ARM: OMAP4: hwmod data: temporarily comment out data for the usb_host_fs and aess IP blocks
    ARM: Orion: Fix WDT compile for Dove and MV78xx0
    ARM: mmp: remove mach/gpio-pxa.h
    ARM: imx: assert SCC gate stays enabled
    ARM: OMAP4: TWL6030: ensure sys_nirq1 is mux'd and wakeup enabled
    ARM: OMAP2: Overo: init I2C before MMC to fix MMC suspend/resume failure
    ARM: imx27_visstrim_m10: Do not include
    ARM: pxa: hx4700: Fix basic suspend/resume

    Linus Torvalds
     
  • Pull KVM fix from Marcelo Tosatti:
    "Memory leak and oops on the x86 mmu code, and sanitization of the
    KVM_IRQFD ioctl."

    * git://git.kernel.org/pub/scm/virt/kvm/kvm:
    KVM: MMU: fix shrinking page from the empty mmu
    KVM: fix fault page leak
    KVM: Sanitize KVM_IRQFD flags
    KVM: Add missing KVM_IRQFD API documentation
    KVM: Pass kvm_irqfd to functions

    Linus Torvalds
     

05 Jul, 2012

12 commits

  • arch/arm/mm/init.c: In function 'arm_memblock_init':
    arch/arm/mm/init.c:380: warning: comparison of distinct pointer types lacks a cast

    by fixing the typecast in its definition when DMA_ZONE is disabled.
    This was missed in 4986e5c7c (ARM: mm: fix type of the arm_dma_limit
    global variable).

    Signed-off-by: Russell King

    Russell King
     
  • Fix:
    net/netfilter/xt_connbytes.c: In function 'connbytes_mt':
    net/netfilter/xt_connbytes.c:43: warning: passing argument 1 of 'atomic64_read' discards qualifiers from pointer target type
    ...

    by adding the missing const.

    Signed-off-by: Russell King

    Russell King
     
  • 'sub pc, pc, #1b-2b+8-2' results in address == '10'.

    sub pc, pc, #const (== ADR pc, #const) performs an interworking branch
    (BXWritePC()) on ARMv7+ and a simple branch (BranchWritePC()) on earlier
    versions.

    In ARM state, BXWritePC() is UNPREDICTABLE when address == '10'.

    In ARM state on ARMv6+, BranchWritePC() ignores address. Before
    ARMv6, BranchWritePC() is UNPREDICTABLE if address != '00'

    So the instruction is UNPREDICTABLE both before and after v6.

    Acked-by: Jon Medhurst
    Signed-off-by: Rabin Vincent
    Signed-off-by: Russell King

    Rabin Vincent
     
  • …/git/tmlind/linux-omap into fixes

    PM related fixes for omaps mostly to get suspend/resume
    working again.

    * tag 'omap-fixes-for-v3.5-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
    ARM: OMAP2+: hwmod data: Fix wrong McBSP clock alias on OMAP4
    ARM: OMAP4: hwmod data: temporarily comment out data for the usb_host_fs and aess IP blocks
    ARM: OMAP4: TWL6030: ensure sys_nirq1 is mux'd and wakeup enabled
    ARM: OMAP2: Overo: init I2C before MMC to fix MMC suspend/resume failure

    Signed-off-by: Arnd Bergmann <arnd@arndb.de>

    Arnd Bergmann
     
  • * 'mxs/fixes-for-3.5' of git://git.linaro.org/people/shawnguo/linux-2.6:
    ARM: apx4devkit: fix FEC enabling PHY clock

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     
  • We currently return -EPERM if the user requests mode exclusion that is
    not supported by the CPU. This looks pretty confusing from userspace
    and is inconsistent with other architectures (ppc, x86).

    This patch returns -EOPNOTSUPP instead.

    Signed-off-by: Will Deacon
    Signed-off-by: Russell King

    Will Deacon
     
  • This reverts commit 6b5c8045ecc7e726cdaa2a9d9c8e5008050e1252.

    Conflicts:

    arch/arm/kernel/ptrace.c

    The new syscall restarting code can lead to problems if we take an
    interrupt in userspace just before restarting the svc instruction. If
    a signal is delivered when returning from the interrupt, the
    TIF_SYSCALL_RESTARTSYS will remain set and cause any syscalls executed
    from the signal handler to be treated as a restart of the previously
    interrupted system call. This includes the final sigreturn call, meaning
    that we may fail to exit from the signal context. Furthermore, if a
    system call made from the signal handler requires a restart via the
    restart_block, it is possible to clear the thread flag and fail to
    restart the originally interrupted system call.

    The right solution to this problem is to perform the restarting in the
    kernel, avoiding the possibility of handling a further signal before the
    restart is complete. Since we're almost at -rc6, let's revert the new
    method for now and aim for in-kernel restarting at a later date.

    Acked-by: Catalin Marinas
    Signed-off-by: Will Deacon
    Signed-off-by: Russell King

    Will Deacon
     
  • This reverts commit fa18484d0947b976a769d15c83c50617493c81c1.

    We need the restart trampoline back so that we can revert a related
    problematic patch 6b5c8045ecc7e726cdaa2a9d9c8e5008050e1252 ("arm: new
    way of handling ERESTART_RESTARTBLOCK").

    Acked-by: Catalin Marinas
    Signed-off-by: Will Deacon
    Signed-off-by: Russell King

    Will Deacon
     
  • Avoid polluting drivers with a set_domain() macro, which interferes with
    structure member names:

    drivers/net/wireless/ath/ath9k/dfs_pattern_detector.c:294:33: error: macro "set_domain" passed 2 arguments, but takes just 1

    Signed-off-by: Russell King

    Russell King
     
  • …git/pjw/omap-pending into fixes

    A few more OMAP fixes for 3.5-rc. These fix some bugs with power
    management and McBSP.

    Tony Lindgren
     
  • Ethernet stopped to work after mxs clk framework change.

    Signed-off-by: Lauri Hintsala
    Signed-off-by: Shawn Guo

    Lauri Hintsala
     
  • arch/arm/mach-versatile/pci.c: In function 'versatile_map_irq':
    arch/arm/mach-versatile/pci.c:342: warning: unused variable 'devslot'

    Signed-off-by: Russell King

    Russell King
     

04 Jul, 2012

8 commits

  • The commit 503d0ea24d1d3dd3db95e5e0edd693da7a2a23eb
    ARM: OMAP4: hwmod data: Add aliases for McBSP fclk clocks

    added a wrong "prcm_clk" alias for PRCM clock whereas the McBSP
    driver and previous OMAPs are using "prcm_fck".

    It thus lead to the following warning.

    [ 47.409729] omap-mcbsp: clks: could not clk_get() prcm_fck

    Fix that by changing the opt_clk role to prcm_fck.

    Reported-by: Misael Lopez Cruz
    Signed-off-by: Benoit Cousson
    Cc: Peter Ujfalusi
    Tested-by: Sebastien Guiriec
    Signed-off-by: Paul Walmsley

    Benoit Cousson
     
  • The OMAP4 usb_host_fs (OHCI) and AESS IP blocks require some special
    programming for them to enter idle. Without this programming, they
    will prevent the rest of the chip from entering full chip idle.

    To implement the idle programming cleanly, this will take some
    coordination between maintainers. This is likely to take some time,
    so it is probably best to leave this for 3.6 or 3.7. So, in the
    meantime, prevent these IP blocks from being registered.

    Later, once the appropriate support is available, this patch can be
    reverted.

    This second version comments out the IP block data since Benoît didn't
    like removing it.

    Signed-off-by: Paul Walmsley
    Cc: Benoît Cousson

    Paul Walmsley
     
  • From Haojian Zhuang :

    * 'fixes' of git://github.com/hzhuang1/linux:
    ARM: mmp: remove mach/gpio-pxa.h

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     
  • From Sascha Hauer :

    ARM i.MX fixes for v3.5-rc5

    * tag 'v3.5-imx-fixes' of git://git.pengutronix.de/git/imx/linux-2.6:
    ARM: imx: assert SCC gate stays enabled
    ARM: imx27_visstrim_m10: Do not include

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     
  • Commit 0fa1f0609a0c1fe8b2be3c0089a2cb48f7fda521 (ARM: Orion: Fix
    Virtual/Physical mixup with watchdog) broke the Dove & MV78xx0
    build. Although these two SoC don't use the watchdog, the shared
    platform code still needs to build. Add the necessary defines.

    Cc: stable@vger.kernel.org
    Reported-by: Nicolas Pitre
    Signed-off-by: Andrew Lunn
    Tested-by: Nicolas Pitre
    Signed-off-by: Arnd Bergmann

    Andrew Lunn
     
  • Commit 157d2644cb0c1e71a18baaffca56d2b1d0ebf10f ("ARM: pxa: change gpio
    to platform device") removed all includes of mach/gpio-pxa.h. It kept
    this unused header in the tree. Using it can't work, as it itself
    includes the non-existent header plat/gpio-pxa.h. This header can safely
    be removed.

    Signed-off-by: Paul Bolle
    Acked-by: Eric Miao
    Signed-off-by: Haojian Zhuang

    Paul Bolle
     
  • The SCC clock is needed in internal boot mode and so must keep enabled.
    This same issue was fixed for the pre-common-clk code in commit

    3d6e614 (mx35: Fix boot ROM hang in internal boot mode)

    Cc: John Ogness
    Cc: Hans J. Koch
    Signed-off-by: Uwe Kleine-König
    Signed-off-by: Sascha Hauer

    Uwe Kleine-König
     
  • Fix:

    [ 3190.059226] BUG: unable to handle kernel NULL pointer dereference at (null)
    [ 3190.062224] IP: [] mmu_page_zap_pte+0x10/0xa7 [kvm]
    [ 3190.063760] PGD 104f50067 PUD 112bea067 PMD 0
    [ 3190.065309] Oops: 0000 [#1] SMP DEBUG_PAGEALLOC
    [ 3190.066860] CPU 1
    [ ...... ]
    [ 3190.109629] Call Trace:
    [ 3190.111342] [] kvm_mmu_prepare_zap_page+0xa9/0x1fc [kvm]
    [ 3190.113091] [] mmu_shrink+0x11f/0x1f3 [kvm]
    [ 3190.114844] [] ? mmu_shrink+0x87/0x1f3 [kvm]
    [ 3190.116598] [] ? prune_super+0x142/0x154
    [ 3190.118333] [] ? shrink_slab+0x39/0x31e
    [ 3190.120043] [] shrink_slab+0x1cc/0x31e
    [ 3190.121718] [] do_try_to_free_pages

    This is caused by shrinking page from the empty mmu, although we have
    checked n_used_mmu_pages, it is useless since the check is out of mmu-lock

    Signed-off-by: Xiao Guangrong
    Signed-off-by: Marcelo Tosatti

    Xiao Guangrong
     

03 Jul, 2012

1 commit


02 Jul, 2012

6 commits

  • The SYS_NIRQ1 pin is the interupt line for the PMIC part of the TWL6030
    and interrupts from the PMIC are needed as wakeup sources.

    Ensure this pin is mux'd as input and has wakeup enabled so PMIC
    interupts (e.g. RTC) can be used as wakeup sources.

    Tested on OMAP4430/Panda.

    Signed-off-by: Kevin Hilman
    Signed-off-by: Tony Lindgren

    Kevin Hilman
     
  • In order for suspend/resume dependencies to work correctly, I2C has to
    be initialized (more specifically, registered with the driver core)
    before MMC. Without this, the MMC driver fails to adjust the VMMC
    regulator (using i2c writes) during the suspend path.

    Problem found testing suspend/resume on 3730/OveroSTORM platform.

    Signed-off-by: Kevin Hilman
    Signed-off-by: Tony Lindgren

    Kevin Hilman
     
  • commit 435ca24 (ARM i.MX: Visstrim_M10: Add board version detection)
    included , which is a header file about to be deleted according to
    9f97da (Disintegrate asm/system.h for ARM)

    Include instead.

    Reported-by: Russell King
    Signed-off-by: Fabio Estevam
    Signed-off-by: Sascha Hauer

    Fabio Estevam
     
  • Since we are taking a registers, this should never have been an sldi.
    Talking to paulus offline, this is the correct fix.

    Was introduced by:
    commit 19ccb76a1938ab364a412253daec64613acbf3df
    Author: Paul Mackerras
    Date: Sat Jul 23 17:42:46 2011 +1000

    Talking to paulus, this shouldn't be a literal.

    Signed-off-by: Michael Neuling
    CC: [v3.2+]
    Signed-off-by: Benjamin Herrenschmidt

    Michael Neuling
     
  • We have a bug report where the kernel hits a warning in the cpumask
    code:

    WARNING: at include/linux/cpumask.h:107

    Which is:
    WARN_ON_ONCE(cpu >= nr_cpumask_bits);

    The backtrace is:
    cpu_cmd
    cmds
    xmon_core
    xmon
    die

    xmon is iterating through 0 to NR_CPUS. I'm not sure why we are still
    open coding this but iterating above nr_cpu_ids is definitely a bug.

    This patch iterates through all possible cpus, in case we issue a
    system reset and CPUs in an offline state call in.

    Perhaps the old code was trying to handle CPUs that were in the
    partition but were never started (eg kexec into a kernel with an
    nr_cpus= boot option). They are going to die way before we get into
    xmon since we haven't set any kernel state up for them.

    Signed-off-by: Anton Blanchard
    CC:
    Signed-off-by: Benjamin Herrenschmidt

    Anton Blanchard
     
  • Pull two ARM fixes from Russell King:
    "It's been fairly quiet with the fixes. Just two this time. One fixes
    a long standing problem with KALLSYMS needing an additional pass, and
    the other sorts a problem with the vmalloc space interacting with
    static IO mappings."

    * 'fixes' of git://git.linaro.org/people/rmk/linux-arm:
    ARM: 7438/1: fill possible PMD empty section gaps
    ARM: 7428/1: Prevent KALLSYM size mismatch on ARM.

    Linus Torvalds
     

01 Jul, 2012

7 commits

  • On ARM with the 2-level page table format, a PMD entry is represented by
    two consecutive section entries covering 2MB of virtual space.

    However, static mappings always were allowed to use separate 1MB section
    entries. This means in practice that a static mapping may create half
    populated PMDs via create_mapping().

    Since commit 0536bdf33f (ARM: move iotable mappings within the vmalloc
    region) those static mappings are located in the vmalloc area. We must
    ensure no such half populated PMDs are accessible once vmalloc() or
    ioremap() start looking at the vmalloc area for nearby free virtual
    address ranges, or various things leading to a kernel crash will happen.

    Signed-off-by: Nicolas Pitre
    Reported-by: Santosh Shilimkar
    Tested-by: "R, Sricharan"
    Reviewed-by: Catalin Marinas
    Cc: stable@vger.kernel.org
    Signed-off-by: Russell King

    Nicolas Pitre
     
  • Basic suspend/resume is fixed by ensuring that the PGSR registers are
    set correctly before sleep mode is entered. In particular four of the
    active low resets need to be driven high while in sleep mode, otherwise
    the unit resets itself instead of suspending. Another problem was that
    the PCFR_GPROD bit is set by the HTC bootloader; this caused GPIO reset
    (i.e. the reset button) to fail immediately after returning from sleep
    mode.

    Signed-off-by: Paul Parsons
    Cc: Philipp Zabel
    Signed-off-by: Haojian Zhuang

    Paul Parsons
     
  • Pull ARM SoC fixes from Olof Johansson:
    "Another week, another batch of fixes.

    All are small, contained, targeted fixes for explicit problems --
    mostly build and boot failures across i.MX, OMAP, Renesas/Shmobile and
    Samsung."

    * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
    ARM: imx6q: fix suspend regression caused by common clk migration
    ARM: OMAP4470: Fix OMAP4470 boot failure
    ARM: EXYNOS: Fix EXYNOS_DEV_DMA Kconfig entry
    ARM: OMAP2+: nand: fix build error when CONFIG_MTD_ONENAND_OMAP2=n
    ARM: shmobile: r8a7779: Route all interrupts to ARM
    ARM: shmobile: kzm9d: use late init machine hook
    ARM: shmobile: kzm9g: use late init machine hook
    ARM: mach-shmobile: armadillo800eva: Use late init machine hook
    ARM: SAMSUNG: Fix for S3C2412 EBI memory mapping
    ARM: mach-shmobile: add missing GPIO IRQ configuration on mackerel
    ARM: mach-shmobile: Fix build when SMP is enabled and EMEV2 is not enabled
    ARM: shmobile: sh7372: bugfix: chclr_offset base
    ARM: shmobile: sh73a0: bugfix: SY-DMAC number
    ARM: SAMSUNG: Should check for IS_ERR(clk) instead of NULL

    Linus Torvalds
     
  • …/git/kgene/linux-samsung into fixes

    * 'v3.5-samsung-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
    ARM: EXYNOS: Fix EXYNOS_DEV_DMA Kconfig entry
    ARM: SAMSUNG: Fix for S3C2412 EBI memory mapping
    ARM: SAMSUNG: Should check for IS_ERR(clk) instead of NULL

    Olof Johansson
     
  • When moving to common clk framework, the imx6q clks rom and mmdc_ch1_axi
    get different on/off states than old clk driver, which breaks suspend
    function. There might be a better way to manage these clocks, but let's
    takes the old clk driver approach to fix the regression first.

    Signed-off-by: Shawn Guo
    Signed-off-by: Olof Johansson

    Shawn Guo
     
  • …/git/tmlind/linux-omap into fixes

    From Tony Lindgren:
    "Here's one more regression fix that I missed earlier, and a
    trivial fix to get omap4470 booting."

    * tag 'omap-fixes-for-v3.5-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
    ARM: OMAP4470: Fix OMAP4470 boot failure
    ARM: OMAP2+: nand: fix build error when CONFIG_MTD_ONENAND_OMAP2=n

    Olof Johansson
     
  • Pull ACPI & Power Management patches from Len Brown.

    * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux:
    acpi_pad: fix power_saving thread deadlock
    ACPI video: Still use ACPI backlight control if _DOS doesn't exist
    ACPI, APEI, Avoid too much error reporting in runtime
    ACPI: Add a quirk for "AMILO PRO V2030" to ignore the timer overriding
    ACPI: Remove one board specific WARN when ignoring timer overriding
    ACPI: Make acpi_skip_timer_override cover all source_irq==0 cases
    ACPI, x86: fix Dell M6600 ACPI reboot regression via DMI
    ACPI sysfs.c strlen fix

    Linus Torvalds
     

30 Jun, 2012

3 commits