11 Jun, 2014

11 commits

  • Make of_device_id array const, because all OF functions
    handle it as const.

    Signed-off-by: Jingoo Han
    Reviewed-by: Michal Simek
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Jingoo Han
     
  • Convert the imx2_wdt driver to the new watchdog core api.

    Signed-off-by: Anatolij Gustschin
    Reviewed-by: Guenter Roeck
    Cc: Wolfram Sang
    Signed-off-by: Wim Van Sebroeck

    Anatolij Gustschin
     
  • This watchdog driver will be working on IMX2+, Vybrid, LS1, LS2+
    platforms, and will be in different endianness mode in those SoCs:

    SoCs CPU endian mode WDT endian mode
    ------------------------------------------------
    IMX2+ LE LE
    Vybird LE LE
    LS1 LE BE
    LS2 LE LE

    Other possible SoCs:
    SoCs CPU endian mode WDT endian mode
    ------------------------------------------------
    Soc1 BE BE
    Soc2 BE LE

    And also the watchdog's registers will be 32-bits for some versions,
    and though it is 16-bits in IMX2+, Vybird and LS+.

    Using the regmap APIs, could be more easy to support different
    endianness and also more easy to support 32-bits version...

    Signed-off-by: Xiubo Li
    Reviewed-by: Guenter Roeck
    Acked-by: Shawn Guo
    Signed-off-by: Wim Van Sebroeck

    Xiubo Li
     
  • Signed-off-by: Xiubo Li
    Reviewed-by: Guenter Roeck
    Acked-by: Shawn Guo
    Signed-off-by: Wim Van Sebroeck

    Xiubo Li
     
  • Replace clk_enable() and clk_disable() calls with
    clk_prepare_enable() and clk_disable_unprepare()
    to get ready for the migration to the common clock
    framework.

    Signed-off-by: Gabor Juhos
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Gabor Juhos
     
  • On some AR934x based systems, where the frequency of
    the AHB bus is relatively high, the built-in watchdog
    causes a spurious restart when it gets enabled.

    The possible cause of these restarts is that the timeout
    value written into the TIMER register does not reaches
    the hardware in time.

    Add an explicit delay into the ath79_wdt_enable function
    to avoid the spurious restarts.

    Signed-off-by: Gabor Juhos
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck
    Cc:

    Gabor Juhos
     
  • This patch removes platform_set_drvdata() which is not used in
    the driver.

    Signed-off-by: Alexander Shiyan
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Alexander Shiyan
     
  • Use the prescaler index, rather than its value, to configure the watchdog.
    This will prevent a mismatch with the prescaler used to calculate the cycles.

    Signed-off-by: Per Gundberg
    Reviewed-by: Guenter Roeck
    Reviewed-by: Michael Brunner
    Tested-by: Michael Brunner
    Signed-off-by: Wim Van Sebroeck
    Cc: stable

    gundberg
     
  • When compiling sunxi_defconfig while using C=2, the following error
    causes the compilation to fail:

    drivers/watchdog/sunxi_wdt.c:60:15: error: constant 0b0001 is not a valid number

    Fix it by using hex notation instead of the non-standard binary one

    Signed-off-by: Emilio Lopez
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Emilio López
     
  • Use del_timer_sync to ensure that the timer is stopped on all CPUs before
    the driver exits.

    This change was suggested by Thomas Gleixner.

    The semantic patch that makes this change is as follows:
    (http://coccinelle.lip6.fr/)

    //
    @r@
    identifier i,t,ex;
    @@
    struct t i = { .remove = ex, };

    @@
    identifier r.ex;
    @@
    ex(...) {

    }
    //

    Signed-off-by: Julia Lawall
    Signed-off-by: Wim Van Sebroeck

    Julia Lawall
     
  • According to its Kconfig help text, the sbc8360 watchdog driver is
    only used on the Axiomtek SBC8360 single-board computer. This piece of
    hardware is 32-bit x86 so the driver is useless beyond X86_32.

    Signed-off-by: Jean Delvare
    Reviewed-by: Guenter Roeck
    Signed-off-by: Wim Van Sebroeck

    Jean Delvare
     

09 Jun, 2014

9 commits

  • Pull 9p fixes from Eric Van Hensbergen:
    "Two bug fixes, one in xattr error path and the other in parsing
    major/minor numbers from devices"

    * tag 'for-linus-3.16-merge-window' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:
    9P: fix return value in v9fs_fid_xattr_set
    fs/9p: adjust sscanf parameters accordingly to the variable types

    Linus Torvalds
     
  • This function is supposed to return true if the new load imbalance is
    worse than the old one. It didn't. I can only hope brown paper bags
    are in style.

    Now things converge much better on both the 4 node and 8 node systems.

    I am not sure why this did not seem to impact specjbb performance on the
    4 node system, which is the system I have full-time access to.

    This bug was introduced recently, with commit e63da03639cc ("sched/numa:
    Allow task switch if load imbalance improves")

    Signed-off-by: Rik van Riel
    Signed-off-by: Linus Torvalds

    Rik van Riel
     
  • shrink_inactive_list() used to wait 0.1s to avoid congestion when all
    the pages that were isolated from the inactive list were dirty but not
    under active writeback. That makes no real sense, and apparently causes
    major interactivity issues under some loads since 3.11.

    The ostensible reason for it was to wait for kswapd to start writing
    pages, but that seems questionable as well, since the congestion wait
    code seems to trigger for kswapd itself as well. Also, the logic behind
    delaying anything when we haven't actually started writeback is not
    clear - it only delays actually starting that writeback.

    We'll still trigger the congestion waiting if

    (a) the process is kswapd, and we hit pages flagged for immediate
    reclaim

    (b) the process is not kswapd, and the zone backing dev writeback is
    actually congested.

    This probably needs to be revisited, but as it is this fixes a reported
    regression.

    Reported-by: Felipe Contreras
    Pinpointed-by: Hillf Danton
    Cc: Michal Hocko
    Cc: Andrew Morton
    Cc: Mel Gorman
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • Pull ext4 updates from Ted Ts'o:
    "Clean ups and miscellaneous bug fixes, in particular for the new
    collapse_range and zero_range fallocate functions. In addition,
    improve the scalability of adding and remove inodes from the orphan
    list"

    * tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (25 commits)
    ext4: handle symlink properly with inline_data
    ext4: fix wrong assert in ext4_mb_normalize_request()
    ext4: fix zeroing of page during writeback
    ext4: remove unused local variable "stored" from ext4_readdir(...)
    ext4: fix ZERO_RANGE test failure in data journalling
    ext4: reduce contention on s_orphan_lock
    ext4: use sbi in ext4_orphan_{add|del}()
    ext4: use EXT_MAX_BLOCKS in ext4_es_can_be_merged()
    ext4: add missing BUFFER_TRACE before ext4_journal_get_write_access
    ext4: remove unnecessary double parentheses
    ext4: do not destroy ext4_groupinfo_caches if ext4_mb_init() fails
    ext4: make local functions static
    ext4: fix block bitmap validation when bigalloc, ^flex_bg
    ext4: fix block bitmap initialization under sparse_super2
    ext4: find the group descriptors on a 1k-block bigalloc,meta_bg filesystem
    ext4: avoid unneeded lookup when xattr name is invalid
    ext4: fix data integrity sync in ordered mode
    ext4: remove obsoleted check
    ext4: add a new spinlock i_raw_lock to protect the ext4's raw inode
    ext4: fix locking for O_APPEND writes
    ...

    Linus Torvalds
     
  • Pull LLVM patches from Behan Webster:
    "Next set of patches to support compiling the kernel with clang.
    They've been soaking in linux-next since the last merge window.

    More still in the works for the next merge window..."

    * tag 'llvmlinux-for-v3.16' of git://git.linuxfoundation.org/llvmlinux/kernel:
    arm, unwind, LLVMLinux: Enable clang to be used for unwinding the stack
    ARM: LLVMLinux: Change "extern inline" to "static inline" in glue-cache.h
    all: LLVMLinux: Change DWARF flag to support gcc and clang
    net: netfilter: LLVMLinux: vlais-netfilter
    crypto: LLVMLinux: aligned-attribute.patch

    Linus Torvalds
     
  • Pull x86 vdso build fix from Peter Anvin:
    "This fixes building the vdso code on older Linux systems, and probably
    some non-Linux systems"

    * 'x86-vdso-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86, vdso: Use for littleendian access

    Linus Torvalds
     
  • Now that 3.15 is released, this merges the 'next' branch into 'master',
    bringing us to the normal situation where my 'master' branch is the
    merge window.

    * accumulated work in next: (6809 commits)
    ufs: sb mutex merge + mutex_destroy
    powerpc: update comments for generic idle conversion
    cris: update comments for generic idle conversion
    idle: remove cpu_idle() forward declarations
    nbd: zero from and len fields in NBD_CMD_DISCONNECT.
    mm: convert some level-less printks to pr_*
    MAINTAINERS: adi-buildroot-devel is moderated
    MAINTAINERS: add linux-api for review of API/ABI changes
    mm/kmemleak-test.c: use pr_fmt for logging
    fs/dlm/debug_fs.c: replace seq_printf by seq_puts
    fs/dlm/lockspace.c: convert simple_str to kstr
    fs/dlm/config.c: convert simple_str to kstr
    mm: mark remap_file_pages() syscall as deprecated
    mm: memcontrol: remove unnecessary memcg argument from soft limit functions
    mm: memcontrol: clean up memcg zoneinfo lookup
    mm/memblock.c: call kmemleak directly from memblock_(alloc|free)
    mm/mempool.c: update the kmemleak stack trace for mempool allocations
    lib/radix-tree.c: update the kmemleak stack trace for radix tree allocations
    mm: introduce kmemleak_update_trace()
    mm/kmemleak.c: use %u to print ->checksum
    ...

    Linus Torvalds
     
  • Linus Torvalds
     
  • This reverts commit 3e1a878b7ccdb31da6d9d2b855c72ad87afeba3f.

    It came in very late, and already has one reported failure: Sitsofe
    reports that the current tree fails to boot on his EeePC, and bisected
    it down to this. Rather than waste time trying to figure out what's
    wrong, just revert it.

    Reported-by: Sitsofe Wheeler
    Cc: Igor Mammedov
    Cc: Toshi Kani
    Cc: Thomas Gleixner
    Acked-by: Ingo Molnar
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

08 Jun, 2014

13 commits

  • Pull clock framework updates from Mike Turquette:
    "The clock framework changes for 3.16 are pretty typical: mostly clock
    driver additions and fixes. There are additions to the clock core
    code for some of the basic types (e.g. the common divider type has
    some fixes and featured added to it).

    One minor annoyance is a last-minute dependency that wasn't handled
    quite right. Commit ba0fae3b06a6 ("clk: berlin: add core clock driver
    for BG2/BG2CD") in this pull request depends on
    include/dt-bindings/clock/berlin2.h, which is already in your tree via
    the arm-soc pull request. Building for the berlin platform will break
    when the clk tree is built on it's own, but merged into your master
    branch everything should be fine"

    * tag 'clk-for-linus-3.16' of git://git.linaro.org/people/mike.turquette/linux: (75 commits)
    mmc: sunxi: Add driver for SD/MMC hosts found on Allwinner sunxi SoCs
    clk: export __clk_round_rate for providers
    clk: versatile: free icst on error return
    clk: qcom: Return error pointers for unimplemented clocks
    clk: qcom: Support msm8974pro global clock control hardware
    clk: qcom: Properly support display clocks on msm8974
    clk: qcom: Support display RCG clocks
    clk: qcom: Return highest rate when round_rate() exceeds plan
    clk: qcom: Fix mmcc-8974's PLL configurations
    clk: qcom: Fix clk_rcg2_is_enabled() check
    clk: berlin: add core clock driver for BG2Q
    clk: berlin: add core clock driver for BG2/BG2CD
    clk: berlin: add driver for BG2x complex divider cells
    clk: berlin: add driver for BG2x simple PLLs
    clk: berlin: add driver for BG2x audio/video PLL
    clk: st: Terminate of match table
    clk/exynos4: Fix compilation warning
    ARM: shmobile: r8a7779: Add clock index macros for DT sources
    clk: divider: Fix overflow in clk_divider_bestdiv
    clk: u300: Terminate of match table
    ...

    Linus Torvalds
     
  • Pull VFIO updates from Alex Williamson:
    "A handful of VFIO bug fixes for v3.16"

    * tag 'vfio-v3.16-rc1' of git://github.com/awilliam/linux-vfio:
    drivers/vfio/pci: Fix wrong MSI interrupt count
    drivers/vfio: Rework offsetofend()
    vfio/iommu_type1: Avoid overflow
    vfio/pci: Fix unchecked return value
    vfio/pci: Fix sizing of DPA and THP express capabilities

    Linus Torvalds
     
  • Pull crypto updates from Herbert Xu:
    "Here is the crypto update for 3.16:

    - Added test vectors for SHA/AES-CCM/DES-CBC/3DES-CBC.
    - Fixed a number of error-path memory leaks in tcrypt.
    - Fixed error-path memory leak in caam.
    - Removed unnecessary global mutex from mxs-dcp.
    - Added ahash walk interface that can actually be asynchronous.
    - Cleaned up caam error reporting.
    - Allow crypto_user get operation to be used by non-root users.
    - Add support for SSS module on Exynos.
    - Misc fixes"

    * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6: (60 commits)
    crypto: testmgr - add aead cbc des, des3_ede tests
    crypto: testmgr - Fix DMA-API warning
    crypto: cesa - tfm->__crt_alg->cra_type directly
    crypto: sahara - tfm->__crt_alg->cra_name directly
    crypto: padlock - tfm->__crt_alg->cra_name directly
    crypto: n2 - tfm->__crt_alg->cra_name directly
    crypto: dcp - tfm->__crt_alg->cra_name directly
    crypto: cesa - tfm->__crt_alg->cra_name directly
    crypto: ccp - tfm->__crt_alg->cra_name directly
    crypto: geode - Don't use tfm->__crt_alg->cra_name directly
    crypto: geode - Weed out printk() from probe()
    crypto: geode - Consistently use AES_KEYSIZE_128
    crypto: geode - Kill AES_IV_LENGTH
    crypto: geode - Kill AES_MIN_BLOCK_SIZE
    crypto: mxs-dcp - Remove global mutex
    crypto: hash - Add real ahash walk interface
    hwrng: n2-drv - Introduce the use of the managed version of kzalloc
    crypto: caam - reinitialize keys_fit_inline for decrypt and givencrypt
    crypto: s5p-sss - fix multiplatform build
    hwrng: timeriomem - remove unnecessary OOM messages
    ...

    Linus Torvalds
     
  • Pull exofs raid6 support from Boaz Harrosh:
    "These simple patches will enable raid6 using the kernel's raid6_pq
    engine for support under exofs and pnfs-objects.

    There is nothing needed to do at exofs and pnfs-obj. Just fire your
    mkfs.exofs with --raid=6 (that was already supported before) and off
    you go as usual. The ORE will pick up the new map and will start
    writing two devices of redundancy bits. The patches are so simple
    because most of the ORE was already for the general raid case, only a
    few bug fixes were needed and the actual wiring into the raid6_pq
    engine"

    * 'for-linus' of git://git.open-osd.org/linux-open-osd:
    ore: Support for raid 6
    ore: Remove redundant dev_order(), more cleanups
    ore: (trivial) reformat some code

    Linus Torvalds
     
  • Pull btrfs fix from Chris Mason:
    "I had this in my 3.16 merge window queue, but it is small and obvious
    enough for 3.15. I cherry-picked and retested against current rc8"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs:
    Btrfs: send, fix corrupted path strings for long paths

    Linus Torvalds
     
  • Pull SCSI target fixes from Nicholas Bellinger:
    "Here are the remaining fixes for v3.15.

    This series includes:

    - iser-target fix for ImmediateData exception reference count bug
    (Sagi + nab)
    - iscsi-target fix for MC/S login + potential iser-target MRDSL
    buffer overrun (Santosh + Roland)
    - iser-target fix for v3.15-rc multi network portal shutdown
    regression (nab)
    - target fix for allowing READ_CAPCITY during ALUA Standby access
    state (Chris + nab)
    - target fix for NULL pointer dereference of alua_access_state for
    un-configured devices (Chris + nab)"

    * git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending:
    target: Fix alua_access_state attribute OOPs for un-configured devices
    target: Allow READ_CAPACITY opcode in ALUA Standby access state
    iser-target: Fix multi network portal shutdown regression
    iscsi-target: Fix wrong buffer / buffer overrun in iscsi_change_param_value()
    iser-target: Add missing target_put_sess_cmd for ImmedateData failure

    Linus Torvalds
     
  • Pull x86 fixes from Peter Anvin:
    "A significantly larger than I'd like set of patches for just below the
    wire. All of these, however, fix real problems.

    The one thing that is genuinely scary in here is the change of SMP
    initialization, but that *does* fix a confirmed hang when booting
    virtual machines.

    There is also a patch to actually do the right thing about not
    offlining a CPU when there are not enough interrupt vectors available
    in the system; the accounting was done incorrectly. The worst case
    for that patch is that we fail to offline CPUs when we should (the new
    code is strictly more conservative than the old), so is not
    particularly risky.

    Most of the rest is minor stuff; the EFI patches are all about
    exporting correct information to boot loaders and kexec"

    * 'x86/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/boot: EFI_MIXED should not prohibit loading above 4G
    x86/smpboot: Initialize secondary CPU only if master CPU will wait for it
    x86/smpboot: Log error on secondary CPU wakeup failure at ERR level
    x86: Fix list/memory corruption on CPU hotplug
    x86: irq: Get correct available vectors for cpu disable
    x86/efi: Do not export efi runtime map in case old map
    x86/efi: earlyprintk=efi,keep fix

    Linus Torvalds
     
  • Patch to prevent warning of a buggy compiler when using clang and
    the ARM_UNWIND option.

    Clang defines (at least on the current trunk) GNUC, GNUC_MINOR, and
    GNUC_PATCHLEVEL to 4, 2, and 1 respectively.

    This version of GCC gets flagged as buggy, but it isn't actually an
    issue with clang so the patch will do what it did before unless clang
    is defined and then it will not report the GCC version as an issue.

    Signed-off-by: Mark Charlebois
    Signed-off-by: Behan Webster

    Mark Charlebois
     
  • With compilers which follow the C99 standard (like modern versions of gcc and
    clang), "extern inline" does the wrong thing (emits code for an externally
    linkable version of the inline function). "static inline" is the correct choice
    instead.

    Author: Behan Webster
    Signed-off-by: Behan Webster
    Reviewed-by: Mark Charlebois

    Behan Webster
     
  • Both gcc (well, actually gnu as) and clang support the "-Wa,-gdwarf-2" option
    (though clang does not support "-Wa,--gdwarf-2"). Since these flags are equivalent
    in meaning, this patch uses the one which is better supported across compilers.

    Signed-off-by: Behan Webster

    Behan Webster
     
  • Replaced non-standard C use of Variable Length Arrays In Structs (VLAIS) in
    xt_repldata.h with a C99 compliant flexible array member and then calculated
    offsets to the other struct members. These other members aren't referenced by
    name in this code, however this patch maintains the same memory layout and
    padding as was previously accomplished using VLAIS.

    Had the original structure been ordered differently, with the entries VLA at
    the end, then it could have been a flexible member, and this patch would have
    been a lot simpler. However since the data stored in this structure is
    ultimately exported to userspace, the order of this structure can't be changed.

    This patch makes no attempt to change the existing behavior, merely the way in
    which the current layout is accomplished using standard C99 constructs. As such
    the code can now be compiled with either gcc or clang.

    This version of the patch removes the trailing alignment that the VLAIS
    structure would allocate in order to simplify the patch.

    Author: Mark Charlebois
    Signed-off-by: Mark Charlebois
    Signed-off-by: Behan Webster
    Signed-off-by: Vinícius Tinti

    Mark Charlebois
     
  • __attribute__((aligned)) applies the default alignment for the largest scalar
    type for the target ABI. gcc allows it to be applied inline to a defined type.
    Clang only allows it to be applied to a type definition (PR11071).

    Making it into 2 lines makes it more readable and works with both compilers.

    Author: Mark Charlebois
    Signed-off-by: Mark Charlebois
    Signed-off-by: Behan Webster

    Mark Charlebois
     
  • commit 7d453eee36ae ("x86/efi: Wire up CONFIG_EFI_MIXED") introduced a
    regression for the functionality to load kernels above 4G. The relevant
    (incorrect) reasoning behind this change can be seen in the commit
    message,

    "The xloadflags field in the bzImage header is also updated to reflect
    that the kernel supports both entry points by setting both of
    XLF_EFI_HANDOVER_32 and XLF_EFI_HANDOVER_64 when CONFIG_EFI_MIXED=y.
    XLF_CAN_BE_LOADED_ABOVE_4G is disabled so that the kernel text is
    guaranteed to be addressable with 32-bits."

    This is obviously bogus since 32-bit EFI loaders will never place the
    kernel above the 4G mark. So this restriction is entirely unnecessary.

    But things are worse than that - since we want to encourage people to
    always compile with CONFIG_EFI_MIXED=y so that their kernels work out of
    the box for both 32-bit and 64-bit firmware, commit 7d453eee36ae
    effectively disables XLF_CAN_BE_LOADED_ABOVE_4G completely.

    Remove the overzealous and superfluous restriction and restore the
    XLF_CAN_BE_LOADED_ABOVE_4G functionality.

    Cc: "H. Peter Anvin"
    Cc: Dave Young
    Cc: Vivek Goyal
    Signed-off-by: Matt Fleming
    Link: http://lkml.kernel.org/r/1402140380-15377-1-git-send-email-matt@console-pimps.org
    Signed-off-by: H. Peter Anvin

    Matt Fleming
     

07 Jun, 2014

7 commits

  • Merge more updates from Andrew Morton:

    - Most of the rest of MM.

    This includes "mark remap_file_pages syscall as deprecated" but the
    actual "replace remap_file_pages syscall with emulation" is held
    back. I guess we'll need to work out when to pull the trigger on
    that one.

    - various minor cleanups to obscure filesystems

    - the drivers/rtc queue

    - hfsplus updates

    - ufs, hpfs, fatfs, affs, reiserfs

    - Documentation/

    - signals

    - procfs

    - cpu hotplug

    - lib/idr.c

    - rapidio

    - sysctl

    - ipc updates

    * emailed patches from Andrew Morton : (171 commits)
    ufs: sb mutex merge + mutex_destroy
    powerpc: update comments for generic idle conversion
    cris: update comments for generic idle conversion
    idle: remove cpu_idle() forward declarations
    nbd: zero from and len fields in NBD_CMD_DISCONNECT.
    mm: convert some level-less printks to pr_*
    MAINTAINERS: adi-buildroot-devel is moderated
    MAINTAINERS: add linux-api for review of API/ABI changes
    mm/kmemleak-test.c: use pr_fmt for logging
    fs/dlm/debug_fs.c: replace seq_printf by seq_puts
    fs/dlm/lockspace.c: convert simple_str to kstr
    fs/dlm/config.c: convert simple_str to kstr
    mm: mark remap_file_pages() syscall as deprecated
    mm: memcontrol: remove unnecessary memcg argument from soft limit functions
    mm: memcontrol: clean up memcg zoneinfo lookup
    mm/memblock.c: call kmemleak directly from memblock_(alloc|free)
    mm/mempool.c: update the kmemleak stack trace for mempool allocations
    lib/radix-tree.c: update the kmemleak stack trace for radix tree allocations
    mm: introduce kmemleak_update_trace()
    mm/kmemleak.c: use %u to print ->checksum
    ...

    Linus Torvalds
     
  • Commit 788257d6101d ("ufs: remove the BKL") replaced BKL with mutex
    protection using functions lock_ufs, unlock_ufs and struct mutex 'mutex'
    in sb_info.

    Commit b6963327e052 ("ufs: drop lock/unlock super") removed lock/unlock
    super and added struct mutex 's_lock' in sb_info.

    Those 2 mutexes are generally locked/unlocked at the same time except in
    allocation (balloc, ialloc).

    This patch merges the 2 mutexes and propagates first commit solution.
    It also adds mutex destruction before kfree during ufs_fill_super
    failure and ufs_put_super.

    [akpm@linux-foundation.org: avoid ifdefs, return -EROFS not -EINVAL]
    Signed-off-by: Fabian Frederick
    Cc: Evgeniy Dushistov
    Cc: "Chen, Jet"
    Cc: Wu Fengguang
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Fabian Frederick
     
  • As of commit 799fef06123f ("powerpc: Use generic idle loop"), this
    applies to arch_cpu_idle() instead of cpu_idle().

    Signed-off-by: Geert Uytterhoeven
    Cc: Benjamin Herrenschmidt
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     
  • As of commit 8dc7c5ecd8d0 ("cris: Use generic idle loop"), cris no
    longer provides cpu_idle().

    - On cris-v10, etrax_gpio_wake_up_check() is called from default_idle()
    instead of cpu_idle(),

    - On cris-v32, etrax_gpio_wake_up_check() is not called from
    default_idle(), so remove this (copy-and-paste?) part.

    Signed-off-by: Geert Uytterhoeven
    Reviewed-by: Jesper Nilsson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     
  • After all architectures were converted to the generic idle framework,
    commit d190e8195b90 ("idle: Remove GENERIC_IDLE_LOOP config switch")
    removed the last caller of cpu_idle(). The forward declarations in
    header files were forgotten.

    Signed-off-by: Geert Uytterhoeven
    Cc: Thomas Gleixner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     
  • Len field is already set to zero, but not the from field which is sent
    as 0xfffffffffffffe00. This makes no sense, and may cause confuse
    server implementations doing sanity checks (qemu-nbd is an example.)

    Signed-off-by: Hani Benhabiles
    Cc: Paul Clements
    Cc: Paul Clements
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Hani Benhabiles
     
  • printk is meant to be used with an associated log level. There are some
    instances of printk scattered around the mm code where the log level is
    missing. Add a log level and adhere to suggestions by
    scripts/checkpatch.pl by moving to the pr_* macros.

    Also add the typical pr_fmt definition so that print statements can be
    easily traced back to the modules where they occur, correlated one with
    another, etc. This will require the removal of some (now redundant)
    prefixes on a few print statements.

    Signed-off-by: Mitchel Humpherys
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Mitchel Humpherys