01 Jul, 2012

14 commits

  • Make the ACPI thermal driver define its PM callbacks through
    a struct dev_pm_ops object rather than by using legacy PM hooks
    in struct acpi_device_ops.

    Signed-off-by: Rafael J. Wysocki

    Rafael J. Wysocki
     
  • Make the ACPI fan driver define its PM callbacks through
    a struct dev_pm_ops object rather than by using legacy PM hooks
    in struct acpi_device_ops.

    Signed-off-by: Rafael J. Wysocki

    Rafael J. Wysocki
     
  • Modify acpi_bus_type so that it executes PM callbacks provided
    by drivers through their struct dev_pm_ops objects, if present,
    while still allowing the legacy ACPI PM callbacks to take precedence.
    This will make it possible to convert ACPI drivers one by one to
    handling PM through struct dev_pm_ops instead of the legacy way.

    The code added by this change is temporary and will be removed
    when all of the drivers in question have been switched over to
    the PM handling based on struct dev_pm_ops.

    Signed-off-by: Rafael J. Wysocki

    Rafael J. Wysocki
     
  • Make the acpi_bus_type bus type define its PM callbacks through
    a struct dev_pm_ops object rather than by using legacy PM hooks
    in struct bus_type.

    Signed-off-by: Rafael J. Wysocki

    Rafael J. Wysocki
     
  • None of the drivers implementing the ACPI device suspend callback
    uses the pm_message_t argument of it, so this argument may be dropped
    entirely from that callback. This will simplify switching the ACPI
    bus type to PM handling based on struct dev_pm_ops.

    Signed-off-by: Rafael J. Wysocki

    Rafael J. Wysocki
     
  • Linus Torvalds
     
  • 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
     
  • Fix kernel-doc warnings in printk.c: use correct parameter name.

    Warning(kernel/printk.c:2429): No description found for parameter 'buf'
    Warning(kernel/printk.c:2429): Excess function parameter 'line' description in 'kmsg_dump_get_buffer'

    Signed-off-by: Randy Dunlap
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • Fix kernel-doc warning. This struct member was removed in commit
    875682648b89 ("irq: Remove irq_chip->release()") so remove its
    associated kernel-doc entry also.

    Warning(include/linux/irq.h:338): Excess struct/union/enum/typedef member 'release' description in 'irq_chip'

    Signed-off-by: Randy Dunlap
    Cc: Richard Weinberger
    Cc: Thomas Gleixner
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • …/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
     
  • Pull driver Core fixes from Greg Kroah-Hartman:
    "Here is a number of printk() fixes, specifically a few reported by the
    crazy blog program that ships in SUSE releases (that's "boot log" and
    not "web log", it predates the general "blog" terminology by many
    years), and the restoration of the continuation line functionality
    reported by Stephen and others. Yes, the changes seem a bit big this
    late in the cycle, but I've been beating on them for a while now, and
    Stephen has even optimized it a bit, so all looks good to me.

    The other change in here is a Documentation update for the stable
    kernel rules describing how some distro patches should be backported,
    to hopefully drive a bit more response from the distros to the stable
    kernel releases.

    Signed-off-by: Greg Kroah-Hartman "

    * tag 'driver-core-3.5-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
    printk: Optimize if statement logic where newline exists
    printk: flush continuation lines immediately to console
    syslog: fill buffer with more than a single message for SYSLOG_ACTION_READ
    Revert "printk: return -EINVAL if the message len is bigger than the buf size"
    printk: fix regression in SYSLOG_ACTION_CLEAR
    stable: Allow merging of backports for serious user-visible performance issues

    Linus Torvalds
     

30 Jun, 2012

9 commits

  • …-43168', 'bugzilla-40002' and 'bugfix-misc' into release

    bug fixes

    Len Brown
     
  • The acpi_pad driver can get stuck in destroy_power_saving_task()
    waiting for kthread_stop() to stop a power_saving thread. The problem
    is that the isolated_cpus_lock mutex is owned when
    destroy_power_saving_task() calls kthread_stop(), which waits for a
    power_saving thread to end, and the power_saving thread tries to
    acquire the isolated_cpus_lock when it calls round_robin_cpu(). This
    patch fixes the issue by making round_robin_cpu() use its own mutex.

    https://bugzilla.kernel.org/show_bug.cgi?id=42981

    Cc: stable@vger.kernel.org
    Signed-off-by: Stuart Hayes
    Signed-off-by: Len Brown

    Stuart Hayes
     
  • This fixes a regression in 3.4-rc1 caused by commit
    ea9f8856bd6d4ed45885b06a338f7362cd6c60e5
    (ACPI video: Harden video bus adding.)

    Some platforms don't have _DOS control method, but the ACPI
    backlight still works.
    We should not invoke _DOS for these platforms.

    https://bugzilla.kernel.org/show_bug.cgi?id=43168

    Cc: Igor Murzov
    Cc: stable@vger.kernel.org
    Signed-off-by: Zhang Rui
    Signed-off-by: Len Brown

    Zhang Rui
     
  • Pull power management fixes from Rafael J. Wysocki:

    * Fix for a bug in async suspend error code path causing parents to
    wait forever for their children in case of a suspend error from
    Mandeep Singh Baines (-stable metarial).

    * Fix for a suspend regression related to earlier changes in the ACPI
    cpuidle driver from Deepthi Dharwar.

    * tag 'pm-for-3.5-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
    PM / ACPI: Fix suspend/resume regression caused by cpuidle cleanup.
    PM / Sleep: Prevent waiting forever on asynchronous suspend after abort

    Linus Torvalds
     
  • In reviewing Kay's fix up patch: "printk: Have printk() never buffer its
    data", I found two if statements that could be combined and optimized.

    Put together the two 'cont.len && cont.owner == current' if statements
    into a single one, and check if we need to call cont_add(). This also
    removes the unneeded double cont_flush() calls.

    Link: http://lkml.kernel.org/r/1340869133.876.10.camel@mop

    Signed-off-by: Steven Rostedt
    Cc: Kay Sievers
    Signed-off-by: Greg Kroah-Hartman

    Steven Rostedt
     
  • Pull powerpc fixes from Benjamin Herrenschmidt:
    "Here are a few powerpc fixes. Arguably some of this should have come
    to you earlier but I'm only just catching up after my medical leave.

    Mostly these fixes regressions, a couple are long standing bugs."

    * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
    powerpc/pseries: Fix software invalidate TCE
    powerpc: check_and_cede_processor() never cedes
    powerpc/ftrace: Do not trace restore_interrupts()
    powerpc: Fix Section mismatch warnings in prom_init.c
    ppc64: fix missing to check all bits of _TIF_USER_WORK_MASK in preempt
    powerpc: Fix uninitialised error in numa.c
    powerpc: Fix BPF_JIT code to link with multiple TOCs

    Linus Torvalds
     
  • Pull x86 fixes from Ingo Molnar.

    * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86, cpufeature: Remove stray %s, add -w to mkcapflags.pl
    x86, cpufeature: Catch duplicate CPU feature strings
    x86, cpufeature: Rename X86_FEATURE_DTS to X86_FEATURE_DTHERM
    x86: Fix kernel-doc warnings
    x86, compat: Use test_thread_flag(TIF_IA32) in compat signal delivery

    Linus Torvalds
     
  • Pull oprofile fixlet from Ingo Molnar.

    * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    oprofile: perf: use NR_CPUS instead or nr_cpumask_bits for static array

    Linus Torvalds
     
  • Pull RCU fix from Ingo Molnar.

    Fixes a bug introduced in this merge window by commit b1420f1c ("Make
    rcu_barrier() less disruptive")

    * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    rcu: Stop rcu_do_batch() from multiplexing the "count" variable

    Linus Torvalds
     

29 Jun, 2012

17 commits

  • Continuation lines are buffered internally, intended to merge the
    chunked printk()s into a single record, and to isolate potentially
    racy continuation users from usual terminated line users.

    This though, has the effect that partial lines are not printed to
    the console in the moment they are emitted. In case the kernel
    crashes in the meantime, the potentially interesting printed
    information would never reach the consoles.

    Here we share the continuation buffer with the console copy logic,
    and partial lines are always immediately flushed to the available
    consoles. They are still buffered internally to improve the
    readability and integrity of the messages and minimize the amount
    of needed record headers to store.

    Signed-off-by: Kay Sievers
    Tested-by: Steven Rostedt
    Acked-by: Steven Rostedt
    Signed-off-by: Greg Kroah-Hartman

    Kay Sievers
     
  • The following added support for powernv but broke pseries/BML:
    1f1616e powerpc/powernv: Add TCE SW invalidation support

    TCE_PCI_SW_INVAL was split into FREE and CREATE flags but the tests in
    the pseries code were not updated to reflect this.

    Signed-off-by: Michael Neuling
    cc: stable@kernel.org [v3.3+]
    Signed-off-by: Benjamin Herrenschmidt

    Michael Neuling
     
  • Commit f948501b36c6 ("Make hard_irq_disable() actually hard-disable
    interrupts") caused check_and_cede_processor to stop working.
    ->irq_happened will never be zero right after a hard_irq_disable
    so the compiler removes the call to cede_processor completely.

    The bug was introduced back in the lazy interrupt handling rework
    of 3.4 but was hidden until recently because hard_irq_disable did
    nothing.

    This issue will eventually appear in 3.4 stable since the
    hard_irq_disable fix is marked stable, so mark this one for stable
    too.

    Signed-off-by: Anton Blanchard
    Cc: stable@vger.kernel.org
    Signed-off-by: Benjamin Herrenschmidt

    Anton Blanchard
     
  • As I was adding code that affects all archs, I started testing function
    tracer against PPC64 and found that it currently locks up with 3.4
    kernel. I figured it was due to tracing a function that shouldn't be, so
    I went through the following process to bisect to find the culprit:

    cat /debug/tracing/available_filter_functions > t
    num=`wc -l t`
    sed -ne "1,${num}p" t > t1
    let num=num+1
    sed -ne "${num},$p" t > t2
    cat t1 > /debug/tracing/set_ftrace_filter
    echo function /debug/tracing/current_tracer

    It finally came down to this function: restore_interrupts()

    I'm not sure why this locks up the system. It just seems to prevent
    scheduling from occurring. Interrupts seem to still work, as I can ping
    the box. But all user processes freeze.

    When restore_interrupts() is not traced, function tracing works fine.

    Cc: stable@kernel.org
    Signed-off-by: Steven Rostedt
    Signed-off-by: Benjamin Herrenschmidt

    Steven Rostedt
     
  • This patches tries to fix a couple of Section mismatch warnings like
    following one:

    WARNING: arch/powerpc/kernel/built-in.o(.text+0x2923c): Section mismatch
    in reference from the function .prom_query_opal() to the
    function .init.text:.call_prom()
    The function .prom_query_opal() references
    the function __init .call_prom().
    This is often because .prom_query_opal lacks a __init
    annotation or the annotation of .call_prom is wrong.

    Signed-off-by: Li Zhong
    Signed-off-by: Benjamin Herrenschmidt

    Li Zhong
     
  • In entry_64.S version of ret_from_except_lite, you'll notice that
    in the !preempt case, after we've checked MSR_PR we test for any
    TIF flag in _TIF_USER_WORK_MASK to decide whether to go to do_work
    or not. However, in the preempt case, we do a convoluted trick to
    test SIGPENDING only if PR was set and always test NEED_RESCHED ...
    but we forget to test any other bit of _TIF_USER_WORK_MASK !!! So
    that means that with preempt, we completely fail to test for things
    like single step, syscall tracing, etc...

    This should be fixed as the following path:

    - Test PR. If not set, go to resume_kernel, else continue.

    - If go resume_kernel, to do that original do_work.

    - If else, then always test for _TIF_USER_WORK_MASK to decide to do
    that original user_work, else restore directly.

    Signed-off-by: Tiejun Chen
    Signed-off-by: Benjamin Herrenschmidt

    Tiejun Chen
     
  • chroma_defconfig currently gives me this with gcc 4.6:
    arch/powerpc/mm/numa.c:638:13: error: 'dm' may be used uninitialized in this function [-Werror=uninitialized]

    It's a bogus warning/error since of_get_drconf_memory() only writes it
    anyway.

    Signed-off-by: Michael Neuling
    cc: [v3.3+]
    Signed-off-by: Benjamin Herrenschmidt

    Michael Neuling
     
  • If the kernel is big enough (eg. allyesconfig), the linker may need to
    switch TOCs when calling from the BPF JIT code out to the external
    helpers (skb_copy_bits() & bpf_internal_load_pointer_neg_helper()).

    In order to do that we need to leave space after the bl for the linker
    to insert a reload of our TOC pointer.

    Signed-off-by: Michael Ellerman
    Acked-by: Matt Evans
    Signed-off-by: Benjamin Herrenschmidt

    Michael Ellerman
     
  • Pull hwmon changes from Guenter Roeck:
    "Just e-mail address updates"

    * tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
    hwmon: Update my e-mail address
    hwmon: (applesmc) correct email address for Jesper Juhl

    Linus Torvalds
     
  • Pull watchdog fixes from Wim Van Sebroeck:
    "This fixes:
    - the WDIOC_GETSTATUS return value
    - the unregister of all NMI events on exit
    - the loading of the iTCO_wdt driver after the conversion to the
    lpc_ich mfd model."

    * git://www.linux-watchdog.org/linux-watchdog:
    watchdog: core: fix WDIOC_GETSTATUS return value
    watchdog: hpwdt: Unregister NMI events on exit.
    watchdog: iTCO_wdt: add platform driver module alias

    Linus Torvalds
     
  • Pull UDF fixes from Jan Kara:
    "Make UDF more robust in presence of corrupted filesystem"

    * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
    udf: Fortify loading of sparing table
    udf: Avoid run away loop when partition table length is corrupted
    udf: Use 'ret' instead of abusing 'i' in udf_load_logicalvol()

    Linus Torvalds
     
  • Pull ubi/ubifs fixes from Artem Bityutskiy:
    "Fix the debugfs regression - we never enable it because incorrect
    'IS_ENABLED()' macro usage: should be 'IS_ENABLED(CONFIG_DEBUG_FS)',
    but we had 'IS_ENABLED(DEBUG_FS)'. Also fix incorrect assertion."

    * tag 'upstream-3.5-rc5' of git://git.infradead.org/linux-ubifs:
    UBI: correct usage of IS_ENABLED()
    UBIFS: correct usage of IS_ENABLED()
    UBIFS: fix assertion

    Linus Torvalds
     
  • In commit 7a87982420e5e126bfefeb42232d1fd92052794e we added
    a wrapper for the WDIOC_GETSTATUS ioctl call. The code results
    however in a different behaviour: it returns an error if the
    driver doesn't support the status operation. This is not
    according to the API that says that when we don't support
    the status operation, that we just should return a 0 value.
    Only when the device isn't there anymore, we should return an
    error.

    Signed-off-by: Wim Van Sebroeck

    Wim Van Sebroeck
     
  • This patch is to unregister for NMI events upon exit. Also we are now
    making the default setting for allow_kdump enabled.

    Signed-off-by: Thomas Mingarelli
    Signed-off-by: Wim Van Sebroeck

    Mingarelli, Thomas
     
  • The recent conversion of iTCO_wdt resulted in the driver no longer
    getting loaded automatically, since it no longer has a
    MODULE_DEVICE_TABLE() included. As the lpc_ich driver now creates a
    platform device, auto-loading can easily be done by having a respective
    module alias in place.

    Signed-off-by: Jan Beulich
    Cc: Aaron Sierra
    Acked-by: Guenter Roeck
    Cc: Samuel Ortiz
    Signed-off-by: Wim Van Sebroeck

    Jan Beulich
     
  • Pull drm fixes from Dave Airlie:
    "Nearly all intel, one missing license header in nouveau, nothing
    majorly earth shattering."

    * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
    Revert "drm/i915: allow PCH PWM override on IVB"
    drm/nouveau: add license header to prime.
    drm/i915: Fix eDP blank screen after S3 resume on HP desktops
    drm/i915: rip out the PM_IIR WARN

    Linus Torvalds
     
  • Pull SuperH fixes from Paul Mundt.

    * tag 'sh-for-linus' of git://github.com/pmundt/linux-sh:
    sh: Convert sh_clk_mstp32_register to sh_clk_mstp_register
    sh: kfr2r09: fix compile breakage

    Linus Torvalds