16 Jan, 2012

1 commit

  • omap3isp depends on CONFIG_IOMMU_API, so avoid registering its
    device (and defining its configuration structs) on !CONFIG_IOMMU_API.

    This is generally nice to have, but more importantly, it fixes:

    arch/arm/plat-omap/include/plat/iommu.h: In function 'dev_to_omap_iommu':
    arch/arm/plat-omap/include/plat/iommu.h:135: error: 'struct
    dev_archdata' has no member named 'iommu'
    arch/arm/mach-omap2/devices.c: In function 'omap3_init_camera':
    arch/arm/mach-omap2/devices.c:222: error: 'struct dev_archdata' has no
    member named 'iommu'
    make[1]: *** [arch/arm/mach-omap2/devices.o] Error 1
    make: *** [arch/arm/mach-omap2] Error 2

    Which happens because while setting up the omap3isp device we try
    to access the (now nonexistent) iommu member of dev_archdata.

    Compile tested with omap2plus_defconfig on today's:

    commit e343a895a9f342f239c5e3c5ffc6c0b1707e6244
    Merge: 06792c4 193a667
    Author: Linus Torvalds
    Date: Tue Jan 10 18:04:27 2012 -0800

    Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost

    Reported-by: Govindraj Raja
    Reported-by: Arik Nemtsov
    Signed-off-by: Ohad Ben-Cohen
    Cc: Tony Lindgren
    Cc: Joerg Roedel
    Cc: Laurent Pinchart
    Acked-by: Laurent Pinchart
    Acked-by: Tony Lindgren
    Signed-off-by: Joerg Roedel

    Ohad Ben-Cohen
     

09 Jan, 2012

2 commits


31 Dec, 2011

3 commits


30 Dec, 2011

2 commits

  • * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    perf/x86: Fix raw_spin_unlock_irqrestore() usage
    oprofile, arm/sh: Fix oprofile_arch_exit() linkage issue

    Linus Torvalds
     
  • Commit 2a95ea6c0d129b4 ("procfs: do not overflow get_{idle,iowait}_time
    for nohz") did not take into account that one some architectures jiffies
    and cputime use different units.

    This causes get_idle_time() to return numbers in the wrong units, making
    the idle time fields in /proc/stat wrong.

    Instead of converting the usec value returned by
    get_cpu_{idle,iowait}_time_us to units of jiffies, use the new function
    usecs_to_cputime64 to convert it to the correct unit of cputime64_t.

    Signed-off-by: Andreas Schwab
    Acked-by: Michal Hocko
    Cc: Arnd Bergmann
    Cc: "Artem S. Tashkinov"
    Cc: Dave Jones
    Cc: Alexey Dobriyan
    Cc: Thomas Gleixner
    Cc: "Luck, Tony"
    Cc: Benjamin Herrenschmidt
    Cc: Martin Schwidefsky
    Cc: Heiko Carstens
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andreas Schwab
     

28 Dec, 2011

2 commits

  • SROMC static memory mapping is included in the common s5p initialization
    code. Hence, remove the duplicated SROMC static memory mapping for EXYNOS.

    Signed-off-by: Thomas Abraham
    Cc: stable@kernel.org
    Signed-off-by: Kukjin Kim

    Thomas Abraham
     
  • Following is happened when CONFIG_CPU_FREQ_S3C24XX_DEBUGFS
    is selected without building of s3c2410-iotiming.c file:

    arch/arm/mach-s3c2440/built-in.o:(.data+0x38c): undefined reference to `s3c2410_iotiming_debugfs

    Basically, the CONFIG_S3C2410_IOTIMING is not selected for
    MACH_MINI2440. Because the s3c2410-iotiming.c is not ever
    compiled and enabling CONFIG_CPU_FREQ_S3C24XX_DEBUGFS option
    caused undefined reference to s3c2410_iotiming_debugfs()
    defined in that file. The s3c2410_iotiming_debugfs defined
    as NULL for this case.

    Signed-off-by: Denis Kuzmenko
    Cc: stable@kernel.org
    [kgene.kim@samsung.com: removed useless changes]
    Signed-off-by: Kukjin Kim

    Denis Kuzmenko
     

26 Dec, 2011

5 commits

  • This is required for THIS_MODULE. We recently stopped acquiring
    it via some other header.

    Signed-off-by: Scott Wood
    Signed-off-by: Alexander Graf

    Scott Wood
     
  • Currently kvmppc_start_thread() tries to wake other SMT threads via
    xics_wake_cpu(). Unfortunately xics_wake_cpu only exists when
    CONFIG_SMP=Y so when compiling with CONFIG_SMP=N we get:

    arch/powerpc/kvm/built-in.o: In function `.kvmppc_start_thread':
    book3s_hv.c:(.text+0xa1e0): undefined reference to `.xics_wake_cpu'

    The following should be fine since kvmppc_start_thread() shouldn't
    called to start non-zero threads when SMP=N since threads_per_core=1.

    Signed-off-by: Michael Neuling
    Signed-off-by: Alexander Graf

    Michael Neuling
     
  • kvmppc_h_pr is only available if CONFIG_KVM_BOOK3S_64_PR.

    Signed-off-by: Andreas Schwab
    Signed-off-by: Alexander Graf

    Andreas Schwab
     
  • compute_tlbie_rb is only used on ppc64 and cannot be compiled on ppc32.

    Signed-off-by: Andreas Schwab
    Signed-off-by: Alexander Graf

    Andreas Schwab
     
  • Unlike all of the other cpuid bits, the TSC deadline timer bit is set
    unconditionally, regardless of what userspace wants.

    This is broken in several ways:
    - if userspace doesn't use KVM_CREATE_IRQCHIP, and doesn't emulate the TSC
    deadline timer feature, a guest that uses the feature will break
    - live migration to older host kernels that don't support the TSC deadline
    timer will cause the feature to be pulled from under the guest's feet;
    breaking it
    - guests that are broken wrt the feature will fail.

    Fix by not enabling the feature automatically; instead report it to userspace.
    Because the feature depends on KVM_CREATE_IRQCHIP, which we cannot guarantee
    will be called, we expose it via a KVM_CAP_TSC_DEADLINE_TIMER and not
    KVM_GET_SUPPORTED_CPUID.

    Fixes the Illumos guest kernel, which uses the TSC deadline timer feature.

    [avi: add the KVM_CAP + documentation]

    Reported-by: Alexey Zaytsev
    Tested-by: Alexey Zaytsev
    Signed-off-by: Jan Kiszka
    Signed-off-by: Avi Kivity

    Jan Kiszka
     

25 Dec, 2011

1 commit

  • User space may create the PIT and forgets about setting up the irqchips.
    In that case, firing PIT IRQs will crash the host:

    BUG: unable to handle kernel NULL pointer dereference at 0000000000000128
    IP: [] kvm_set_irq+0x30/0x170 [kvm]
    ...
    Call Trace:
    [] pit_do_work+0x51/0xd0 [kvm]
    [] process_one_work+0x111/0x4d0
    [] worker_thread+0x152/0x340
    [] kthread+0x7e/0x90
    [] kernel_thread_helper+0x4/0x10

    Prevent this by checking the irqchip mode before starting a timer. We
    can't deny creating the PIT if the irqchips aren't set up yet as
    current user land expects this order to work.

    Signed-off-by: Jan Kiszka
    Signed-off-by: Marcelo Tosatti

    Jan Kiszka
     

24 Dec, 2011

4 commits

  • Add a req_running field to the pl330_thread to track which request (if
    any) has been submitted to the DMA. This mechanism replaces the old
    one in which we tried to guess the same by looking at the PC of the
    DMA, which could prevent the driver from sending more requests if it
    didn't guess correctly.

    Reference:

    Signed-off-by: Javi Merino
    Acked-by: Jassi Brar
    Tested-by: Tushar Behera
    Signed-off-by: Russell King

    Javi Merino
     
  • Activation conditions for a workaround should not be encoded in the
    workaround's direct dependencies if this makes otherwise reasonable
    configuration choices impossible.

    This patches uses the SMP/UP patching facilities instead to compile
    out the workaround if the configuration means that it is definitely
    not needed.

    This means that configs for buggy silicon can simply select
    ARM_ERRATA_751472, without preventing a UP kernel from being built
    or duplicatiing knowledge about when to activate the workaround.
    This seems the correct way to do things, because the erratum is a
    property of the silicon, irrespective of what the kernel config
    happens to be.

    Signed-off-by: Dave Martin
    Signed-off-by: Russell King

    Dave Martin
     
  • Activation conditions for a workaround should not be encoded in the
    workaround's direct dependencies if this makes otherwise reasonable
    configuration choices impossible.

    The workaround for erratum 720789 only affects a code path which is
    not active in UP kernels; hence it should be safe to turn on in UP
    kernels, without penalty.

    This patch simply removes the extra dependency on SMP from Kconfig.

    This means that configs for buggy silicon can simply select
    ARM_ERRATA_720789, without preventing a UP kernel from being built
    or duplicatiing knowledge about when to activate the workaround.

    Signed-off-by: Dave Martin
    Acked-by: Will Deacon
    Signed-off-by: Russell King

    Dave Martin
     
  • Use raw_spin_unlock_irqrestore() as equivalent to
    raw_spin_lock_irqsave().

    Signed-off-by: Robert Richter
    Cc: Stephane Eranian
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/1324646665-13334-1-git-send-email-robert.richter@amd.com
    Signed-off-by: Ingo Molnar

    Robert Richter
     

23 Dec, 2011

2 commits

  • This change fixes a linking problem, which happens if oprofile
    is selected to be compiled as built-in:

    `oprofile_arch_exit' referenced in section `.init.text' of
    arch/arm/oprofile/built-in.o: defined in discarded section
    `.exit.text' of arch/arm/oprofile/built-in.o

    The problem is appeared after commit 87121ca504, which
    introduced oprofile_arch_exit() calls from __init function. Note
    that the aforementioned commit has been backported to stable
    branches, and the problem is known to be reproduced at least
    with 3.0.13 and 3.1.5 kernels.

    Signed-off-by: Vladimir Zapolskiy
    Signed-off-by: Robert Richter
    Cc: Will Deacon
    Cc: oprofile-list
    Cc:
    Link: http://lkml.kernel.org/r/20111222151540.GB16765@erda.amd.com
    Signed-off-by: Ingo Molnar

    Vladimir Zapolskiy
     
  • This silently was working for many years and stopped working on
    Niagara-T3 machines.

    We need to set the MSIQ to VALID before we can set it's state to IDLE.

    On Niagara-T3, setting the state to IDLE first was causing HV_EINVAL
    errors. The hypervisor documentation says, rather ambiguously, that
    the MSIQ must be "initialized" before one can set the state.

    I previously understood this to mean merely that a successful setconf()
    operation has been performed on the MSIQ, which we have done at this
    point. But it seems to also mean that it has been set VALID too.

    Signed-off-by: David S. Miller

    David S. Miller
     

22 Dec, 2011

1 commit

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:
    net: Add a flow_cache_flush_deferred function
    ipv4: reintroduce route cache garbage collector
    net: have ipconfig not wait if no dev is available
    sctp: Do not account for sizeof(struct sk_buff) in estimated rwnd
    asix: new device id
    davinci-cpdma: fix locking issue in cpdma_chan_stop
    sctp: fix incorrect overflow check on autoclose
    r8169: fix Config2 MSIEnable bit setting.
    llc: llc_cmsg_rcv was getting called after sk_eat_skb.
    net: bpf_jit: fix an off-one bug in x86_64 cond jump target
    iwlwifi: update SCD BC table for all SCD queues
    Revert "Bluetooth: Revert: Fix L2CAP connection establishment"
    Bluetooth: Clear RFCOMM session timer when disconnecting last channel
    Bluetooth: Prevent uninitialized data access in L2CAP configuration
    iwlwifi: allow to switch to HT40 if not associated
    iwlwifi: tx_sync only on PAN context
    mwifiex: avoid double list_del in command cancel path
    ath9k: fix max phy rate at rate control init
    nfc: signedness bug in __nci_request()
    iwlwifi: do not set the sequence control bit is not needed

    Linus Torvalds
     

21 Dec, 2011

5 commits


20 Dec, 2011

4 commits

  • The former implementation adds a fix gpiochip label string
    to the framework. This is confusing because orion_gpio_init
    is called more than once and this ends up in different gpiochips
    with the same label.

    This patch adds the already present orion_gpio_chip_count to the
    label string to make it unique in the system.

    Signed-off-by: Holger Brunck
    Cc: Lennert Buytenhek
    Acked-by: Nicolas Pitre
    Signed-off-by: Olof Johansson

    Holger Brunck
     
  • When printing the code bytes in show_registers(), the markers around the
    byte at the fault address could make the printk() format string look
    like a valid log level and facility code. This would prevent this byte
    from being printed and result in a spurious newline:

    [ 7555.765589] Code: 8b 32 e9 94 00 00 00 81 7d 00 ff 00 00 00 0f 87 96 00 00 00 48 8b 83 c0 00 00 00 44 89 e2 44 89 e6 48 89 df 48 8b 80 d8 02 00 00
    [ 7555.765683] 8b 48 28 48 89 d0 81 e2 ff 0f 00 00 48 c1 e8 0c 48 c1 e0 04

    Add KERN_CONT where needed, and elsewhere in show_registers() for
    consistency.

    Signed-off-by: Clemens Ladisch
    Link: http://lkml.kernel.org/r/4EEFA7AE.9020407@ladisch.de
    Signed-off-by: H. Peter Anvin

    Clemens Ladisch
     
  • x86 jump instruction size is 2 or 5 bytes (near/long jump), not 2 or 6
    bytes.

    In case a conditional jump is followed by a long jump, conditional jump
    target is one byte past the start of target instruction.

    Signed-off-by: Markus Kötter
    Signed-off-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Markus Kötter
     
  • If oprofilefs_ulong_from_user() is called with count equals
    zero, *val remains unchanged. Depending on the implementation it
    might be uninitialized.

    Change oprofilefs_ulong_from_user()'s interface to return count
    on success. Thus, we are able to return early if count equals
    zero which avoids using *val uninitialized. Fixing all users of
    oprofilefs_ulong_ from_user().

    This follows write syscall implementation when count is zero:
    "If count is zero ... [and if] no errors are detected, 0 will be
    returned without causing any other effect." (man 2 write)

    Reported-By: Mike Waychison
    Signed-off-by: Robert Richter
    Cc: Andrew Morton
    Cc:
    Cc: oprofile-list
    Link: http://lkml.kernel.org/r/20111219153830.GH16765@erda.amd.com
    Signed-off-by: Ingo Molnar

    Robert Richter
     

19 Dec, 2011

8 commits

  • Signed-off-by: Eric Bénard
    Cc: Sascha Hauer
    Signed-off-by: Sascha Hauer

    Eric Bénard
     
  • Signed-off-by: Eric Bénard
    Cc: Sascha Hauer
    Signed-off-by: Sascha Hauer

    Eric Bénard
     
  • in 0d6cfa3a75f5cde5b3ca0dde748fd22625b4f34c I fixed the mach-types
    records. We also need to make the name consistent in Kconfig else
    the machine_is_eukrea_cpuimx35sd macro fails, and thus audio codec
    is not properly initalized.

    Signed-off-by: Eric Bénard
    Cc: Sascha Hauer
    Signed-off-by: Sascha Hauer

    Eric Bénard
     
  • commit 8d75a26 "ARM: mx35: use generic function for displaying silicon revision"
    disabled IIM clock after reading silicon revision which will prevent
    reboot in internal boot mode.

    Signed-off-by: Eric Bénard
    Cc: Jason Liu
    Cc: Sascha Hauer
    Signed-off-by: Sascha Hauer

    Eric Bénard
     
  • - add new machine APF9328
    - update CPUIMX25 -> CPUIMX25SD
    - add drivers :
    - MXC nand driver
    - DM9000
    - SMSC Phy
    - SPIdev
    - Led GPIO

    Signed-off-by: Eric Bénard
    Cc: Sascha Hauer
    Signed-off-by: Sascha Hauer

    Eric Bénard
     
  • in 0d6cfa3a75f5cde5b3ca0dde748fd22625b4f34c I fixed the mach-types
    records. We also need to make the name consistent in Kconfig else
    the machine_is_eukrea_cpuimx25sd macro fails, and thus audio codec
    is not properly initalized.

    Signed-off-by: Eric Bénard
    Cc: Sascha Hauer
    Signed-off-by: Sascha Hauer

    Eric Bénard
     
  • WARNING: arch/arm/plat-mxc/built-in.o(.data+0x488): Section mismatch in reference from the variable mxc_driver to the function .init.text:mxc_cpufreq_init()
    The variable mxc_driver references
    the function __init mxc_cpufreq_init()
    If the reference is valid then annotate the
    variable with __init* or __refdata (see linux/init.h) or name the variable:
    *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console

    Signed-off-by: Richard Zhao
    Signed-off-by: Sascha Hauer

    Richard Zhao
     
  • According to imx pwm RM, the real period value should be
    PERIOD value in PWMPR plus 2.

    PWMO (Hz) = PCLK(Hz) / (period +2)

    Signed-off-by: Jason Chen
    Signed-off-by: Sascha Hauer
    Cc: stable@kernel.org

    Jason Chen