1. 19 9月, 2014 1 次提交
  2. 17 9月, 2014 4 次提交
  3. 16 9月, 2014 1 次提交
    • R
      UBI: add missing kmem_cache_free() in process_pool_aeb error path · 1bf1890e
      Richard Genoud 提交于
      I ran into this error after a ubiupdatevol, because I forgot to backport
      e9110361 UBI: fix the volumes tree sorting criteria.
      
      UBI error: process_pool_aeb: orphaned volume in fastmap pool
      UBI error: ubi_scan_fastmap: Attach by fastmap failed, doing a full scan!
      kmem_cache_destroy ubi_ainf_peb_slab: Slab cache still has objects
      CPU: 0 PID: 1 Comm: swapper Not tainted 3.14.18-00053-gf05cac8dbf85 #1
      [<c000d298>] (unwind_backtrace) from [<c000baa8>] (show_stack+0x10/0x14)
      [<c000baa8>] (show_stack) from [<c01b7a68>] (destroy_ai+0x230/0x244)
      [<c01b7a68>] (destroy_ai) from [<c01b8fd4>] (ubi_attach+0x98/0x1ec)
      [<c01b8fd4>] (ubi_attach) from [<c01ade90>] (ubi_attach_mtd_dev+0x2b8/0x868)
      [<c01ade90>] (ubi_attach_mtd_dev) from [<c038b510>] (ubi_init+0x1dc/0x2ac)
      [<c038b510>] (ubi_init) from [<c0008860>] (do_one_initcall+0x94/0x140)
      [<c0008860>] (do_one_initcall) from [<c037aadc>] (kernel_init_freeable+0xe8/0x1b0)
      [<c037aadc>] (kernel_init_freeable) from [<c02730ac>] (kernel_init+0x8/0xe4)
      [<c02730ac>] (kernel_init) from [<c00093f0>] (ret_from_fork+0x14/0x24)
      UBI: scanning is finished
      
      Freeing the cache in the error path fixes the Slab error.
      
      Tested on at91sam9g35 (3.14.18+fastmap backports)
      Signed-off-by: NRichard Genoud <richard.genoud@gmail.com>
      Cc: stable <stable@vger.kernel.org> # 3.10+
      1bf1890e
  4. 08 9月, 2014 13 次提交
    • A
      UBIFS: fix free log space calculation · ba29e721
      Artem Bityutskiy 提交于
      Hu (hujianyang <hujianyang@huawei.com>) discovered an issue in the
      'empty_log_bytes()' function, which calculates how many bytes are left in the
      log:
      
      "
      If 'c->lhead_lnum + 1 == c->ltail_lnum' and 'c->lhead_offs == c->leb_size', 'h'
      would equalent to 't' and 'empty_log_bytes()' would return 'c->log_bytes'
      instead of 0.
      "
      
      At this point it is not clear what would be the consequences of this, and
      whether this may lead to any problems, but this patch addresses the issue just
      in case.
      
      Cc: stable@vger.kernel.org
      Tested-by: Nhujianyang <hujianyang@huawei.com>
      Reported-by: Nhujianyang <hujianyang@huawei.com>
      Signed-off-by: NArtem Bityutskiy <artem.bityutskiy@linux.intel.com>
      ba29e721
    • A
      UBIFS: fix a race condition · 052c2807
      Artem Bityutskiy 提交于
      Hu (hujianyang@huawei.com) discovered a race condition which may lead to a
      situation when UBIFS is unable to mount the file-system after an unclean
      reboot. The problem is theoretical, though.
      
      In UBIFS, we have the log, which basically a set of LEBs in a certain area. The
      log has the tail and the head.
      
      Every time user writes data to the file-system, the UBIFS journal grows, and
      the log grows as well, because we append new reference nodes to the head of the
      log. So the head moves forward all the time, while the log tail stays at the
      same position.
      
      At any time, the UBIFS master node points to the tail of the log. When we mount
      the file-system, we scan the log, and we always start from its tail, because
      this is where the master node points to. The only occasion when the tail of the
      log changes is the commit operation.
      
      The commit operation has 2 phases - "commit start" and "commit end". The former
      is relatively short, and does not involve much I/O. During this phase we mostly
      just build various in-memory lists of the things which have to be written to
      the flash media during "commit end" phase.
      
      During the commit start phase, what we do is we "clean" the log. Indeed, the
      commit operation will index all the data in the journal, so the entire journal
      "disappears", and therefore the data in the log become unneeded. So we just
      move the head of the log to the next LEB, and write the CS node there. This LEB
      will be the tail of the new log when the commit operation finishes.
      
      When the "commit start" phase finishes, users may write more data to the
      file-system, in parallel with the ongoing "commit end" operation. At this point
      the log tail was not changed yet, it is the same as it had been before we
      started the commit. The log head keeps moving forward, though.
      
      The commit operation now needs to write the new master node, and the new master
      node should point to the new log tail. After this the LEBs between the old log
      tail and the new log tail can be unmapped and re-used again.
      
      And here is the possible problem. We do 2 operations: (a) We first update the
      log tail position in memory (see 'ubifs_log_end_commit()'). (b) And then we
      write the master node (see the big lock of code in 'do_commit()').
      
      But nothing prevents the log head from moving forward between (a) and (b), and
      the log head may "wrap" now to the old log tail. And when the "wrap" happens,
      the contends of the log tail gets erased. Now a power cut happens and we are in
      trouble. We end up with the old master node pointing to the old tail, which was
      erased. And replay fails because it expects the master node to point to the
      correct log tail at all times.
      
      This patch merges the abovementioned (a) and (b) operations by moving the master
      node change code to the 'ubifs_log_end_commit()' function, so that it runs with
      the log mutex locked, which will prevent the log from being changed benween
      operations (a) and (b).
      
      Cc: stable@vger.kernel.org # 07e19dff UBIFS: remove mst_mutex
      Cc: stable@vger.kernel.org
      Reported-by: Nhujianyang <hujianyang@huawei.com>
      Tested-by: Nhujianyang <hujianyang@huawei.com>
      Signed-off-by: NArtem Bityutskiy <artem.bityutskiy@linux.intel.com>
      052c2807
    • L
      Linux 3.17-rc4 · 2ce7598c
      Linus Torvalds 提交于
      2ce7598c
    • S
      Documentation: new page link in SubmittingPatches · 7e0dae61
      Sudip Mukherjee 提交于
      new link for - How to piss off a Linux kernel subsystem maintainer
      Signed-off-by: NSudip Mukherjee <sudip@vectorindia.org>
      Signed-off-by: NRandy Dunlap <rdunlap@infradead.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      7e0dae61
    • P
      Documentation: NFS/RDMA: Document separate Kconfig symbols · 731d5cca
      Paul Bolle 提交于
      The NFS/RDMA Kconfig symbol was split into separate options for client
      and server in commit 2e8c12e1 ("xprtrdma: add separate Kconfig
      options for NFSoRDMA client and server support").
      
      Update the documentation to reflect this split.
      Signed-off-by: NPaul Bolle <pebolle@tiscali.nl>
      Reviewed-by: NJeff Layton <jlayton@redhat.com>
      Signed-off-by: NRandy Dunlap <rdunlap@infradead.org>
      Cc: "J. Bruce Fields" <bfields@redhat.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      731d5cca
    • M
      Documentation: misc-devices: Rename freefall.c from hpfall.c in lis2lv02d · 0024d6e9
      Masanari Iida 提交于
      hpfall.c was renamed to freefall.c in 3.16, but this file still refer to
      hpfall.c instead of freefall.c
      Signed-off-by: NMasanari Iida <standby24x7@gmail.com>
      Signed-off-by: NRandy Dunlap <rdunlap@infradead.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      0024d6e9
    • J
      Documentation: i2c: rename variable "register" to "reg" · 257d6ef4
      Jose Manuel Alarcon Roldan 提交于
      The example code provided with the i2c device interface documentation
      won't compile since it uses the reserved word "register" to name a
      variable.
      
      The compiler fails with this error message:
      
       error: expected identifier or '(' before '=' token
         __u8 register = 0x20; /* Device register to access */
                       ^
      
      Rename the variable "register" to simply "reg" in the example code.
      
      Another couple of typos has been fixed as well.
      [Change "! =" to "!=".]
      Signed-off-by: NJose Alarcon Roldan <jose.alarcon.roldan@gmail.com>
      Signed-off-by: NRandy Dunlap <rdunlap@infradead.org>
      Acked-by: NWolfram Sang <wsa@the-dreams.de>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      257d6ef4
    • R
      Documentation: seq_file: Document seq_open_private(), seq_release_private() · 77be4daf
      Rob Jones 提交于
      Despite the fact that these functions have been around for years, they
      are little used (only 15 uses in 13 files at the preseht time) even
      though many other files use work-arounds to achieve the same result.
      
      By documenting them, hopefully they will become more widely used.
      Signed-off-by: NRob Jones <rob.jones@codethink.co.uk>
      Acked-by: NSteven Whitehouse <swhiteho@redhat.com>
      Signed-off-by: NRandy Dunlap <rdunlap@infradead.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      77be4daf
    • L
      Merge tag 'pm+acpi-3.17-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 6fef37c9
      Linus Torvalds 提交于
      Pull ACPI and power management fixes from Rafael Wysocki:
       "These are regression fixes (ACPI sysfs, ACPI video, suspend test),
        ACPI cpuidle deadlock fix, missing runtime validation of ACPI _DSD
        output, a fix and a new CPU ID for the RAPL driver, new blacklist
        entry for the ACPI EC driver and a couple of trivial cleanups
        (intel_pstate and generic PM domains).
      
        Specifics:
      
         - Fix for recently broken test_suspend= command line argument (Rafael
           Wysocki).
      
         - Fixes for regressions related to the ACPI video driver caused by
           switching the default to native backlight handling in 3.16 from
           Hans de Goede.
      
         - Fix for a sysfs attribute of ACPI device objects that returns stale
           values sometimes due to the fact that they are cached instead of
           executing the appropriate method (_SUN) every time (broken in
           3.14).  From Yasuaki Ishimatsu.
      
         - Fix for a deadlock between cpuidle_lock and cpu_hotplug.lock in the
           ACPI processor driver from Jiri Kosina.
      
         - Runtime output validation for the ACPI _DSD device configuration
           object missing from the support for it that has been introduced
           recently.  From Mika Westerberg.
      
         - Fix for an unuseful and misleading RAPL (Running Average Power
           Limit) domain detection message in the RAPL driver from Jacob Pan.
      
         - New Intel Haswell CPU ID for the RAPL driver from Jason Baron.
      
         - New Clevo W350etq blacklist entry for the ACPI EC driver from Lan
           Tianyu.
      
         - Cleanup for the intel_pstate driver and the core generic PM domains
           code from Gabriele Mazzotta and Geert Uytterhoeven"
      
      * tag 'pm+acpi-3.17-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        ACPI / cpuidle: fix deadlock between cpuidle_lock and cpu_hotplug.lock
        ACPI / scan: not cache _SUN value in struct acpi_device_pnp
        cpufreq: intel_pstate: Remove unneeded variable
        powercap / RAPL: change domain detection message
        powercap / RAPL: add support for CPU model 0x3f
        PM / domains: Make generic_pm_domain.name const
        PM / sleep: Fix test_suspend= command line option
        ACPI / EC: Add msi quirk for Clevo W350etq
        ACPI / video: Disable native_backlight on HP ENVY 15 Notebook PC
        ACPI / video: Add a disable_native_backlight quirk
        ACPI / video: Fix use_native_backlight selection logic
        ACPICA: ACPI 5.1: Add support for runtime validation of _DSD package.
      6fef37c9
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 9142eade
      Linus Torvalds 提交于
      Pull filesystem fixes from Al Viro:
       "Several bugfixes (all of them -stable fodder).
      
        Alexey's one deals with double mutex_lock() in UFS (apparently, nobody
        has tried to test "ufs: sb mutex merge + mutex_destroy" on something
        like file creation/removal on ufs).  Mine deal with two kinds of
        umount bugs, in umount propagation and in handling of automounted
        submounts, both resulting in bogus transient EBUSY from umount"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        ufs: fix deadlocks introduced by sb mutex merge
        fix EBUSY on umount() from MNT_SHRINKABLE
        get rid of propagate_umount() mistakenly treating slaves as busy.
      9142eade
    • L
      Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 81368f8b
      Linus Torvalds 提交于
      Pull RCU fix from Ingo Molnar:
       "A boot hang fix for the offloaded callback RCU model (RCU_NOCB_CPU=y
        && (TREE_CPU=y || TREE_PREEMPT_RC)) in certain bootup scenarios"
      
      * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        rcu: Make nocb leader kthreads process pending callbacks after spawning
      81368f8b
    • L
      Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · ebc54f27
      Linus Torvalds 提交于
      Pull timer fixes from Thomas Gleixner:
       "Three fixlets from the timer departement:
      
         - Update the timekeeper before updating vsyscall and pvclock.  This
           fixes the kvm-clock regression reported by Chris and Paolo.
      
         - Use the proper irq work interface from NMI.  This fixes the
           regression reported by Catalin and Dave.
      
         - Clarify the compat_nanosleep error handling mechanism to avoid
           future confusion"
      
      * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        timekeeping: Update timekeeper before updating vsyscall and pvclock
        compat: nanosleep: Clarify error handling
        nohz: Restore NMI safe local irq work for local nohz kick
      ebc54f27
    • A
      ufs: fix deadlocks introduced by sb mutex merge · 9ef7db7f
      Alexey Khoroshilov 提交于
      Commit 0244756e ("ufs: sb mutex merge + mutex_destroy") introduces
      deadlocks in ufs_new_inode() and ufs_free_inode().
      Most callers of that functions acqure the mutex by themselves and
      ufs_{new,free}_inode() do that via lock_ufs(),
      i.e we have an unavoidable double lock.
      
      The patch proposes to resolve the issue by making sure that
      ufs_{new,free}_inode() are not called with the mutex held.
      
      Found by Linux Driver Verification project (linuxtesting.org).
      
      Cc: stable@vger.kernel.org # 3.16
      Signed-off-by: NAlexey Khoroshilov <khoroshilov@ispras.ru>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      9ef7db7f
  5. 07 9月, 2014 4 次提交
    • L
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 2b12164b
      Linus Torvalds 提交于
      Pull kvm fixes from Paolo Bonzini:
       "A smattering of bug fixes across most architectures"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        powerpc/kvm/cma: Fix panic introduces by signed shift operation
        KVM: s390/mm: Fix guest storage key corruption in ptep_set_access_flags
        KVM: s390/mm: Fix storage key corruption during swapping
        arm/arm64: KVM: Complete WFI/WFE instructions
        ARM/ARM64: KVM: Nuke Hyp-mode tlbs before enabling MMU
        KVM: s390/mm: try a cow on read only pages for key ops
        KVM: s390: Fix user triggerable bug in dead code
      2b12164b
    • L
      Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 56c22854
      Linus Torvalds 提交于
      Pull ARM SoC fixes from Kevin Hilman:
       "Another round of fixes from arm-soc land, which are mostly DT fixes
        for:
      
         - OMAP: handful of DT fixes devices on newly supported hardware
         - davinci: fix 2nd EDMA channel
         - ux500: extend previous pinctrl fix to another board
         - at91: clock registration fixes, compatibility string precision
      
        And one more fix for event cleanup in drivers/bus/arm-ccn"
      
      * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        bus: arm-ccn: Move event cleanup routine
        ARM: at91/dt: rm9200: fix usb clock definition
        ARM: at91: rm9200: fix clock registration
        ARM: at91/dt: sam9g20: set at91sam9g20 pllb driver
        ARM: dts: dra7-evm: Add vtt regulator support
        ARM: dts: dra7-evm: Fix spi1 mux documentation
        ARM: dts: am43x-epos-evm: Disable QSPI to prevent conflict with GPMC-NAND
        ARM: OMAP2+: gpmc: Don't complain if wait pin is used without r/w monitoring
        ARM: dts: am43xx-epos-evm: Don't use read/write wait monitoring
        ARM: dts: am437x-gp-evm: Don't use read/write wait monitoring
        ARM: dts: am437x-gp-evm: Use BCH16 ECC scheme instead of BCH8
        ARM: dts: am43x-epos-evm: Use BCH16 ECC scheme instead of BCH8
        ARM: dts: am4372: fix USB regs size
        ARM: dts: am437x-gp: switch i2c0 to 100KHz
        ARM: dts: dra7-evm: Fix 8th NAND partition's name
        ARM: dts: dra7-evm: Fix i2c3 pinmux and frequency
        ARM: ux500: disable msp2 node on Snowball
        ARM: edma: Fix configuration parsing for SoCs with multiple eDMA3 CC
        ARM: dts: set 'ti,set-rate-parent' for dpll4_m5x2 clock
      56c22854
    • L
      Merge tag 'xfs-for-linus-3.17-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/linux-xfs · 11e97398
      Linus Torvalds 提交于
      Pull xfs fixes from Dave Chinner:
       "The fixes all address recently discovered data corruption issues.
      
        The original Direct IO issue was discovered by Chris Mason @ Facebook
        on a production workload which mixed buffered reads with direct reads
        and writes IO to the same file.  The fix for that exposed other issues
        with page invalidation (exposed by millions of fsx operations) failing
        due to dirty buffers beyond EOF.
      
        Finally, the collapse_range code could also cause problems due to
        racing writeback changing the extent map while it was being shifted
        around.  The commits for that problem are simple mitigation fixes that
        prevent the problem from occuring.  A more robust fix for 3.18 that
        addresses the underlying problem is currently being worked on by
        Brian.
      
        Summary of fixes:
         - a direct IO read/buffered read data corruption
         - the associated fallout from the DIO data corruption fix
         - collapse range bugs that are potential data corruption issues"
      
      * tag 'xfs-for-linus-3.17-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/dgc/linux-xfs:
        xfs: trim eofblocks before collapse range
        xfs: xfs_file_collapse_range is delalloc challenged
        xfs: don't log inode unless extent shift makes extent modifications
        xfs: use ranged writeback and invalidation for direct IO
        xfs: don't zero partial page cache pages during O_DIRECT writes
        xfs: don't zero partial page cache pages during O_DIRECT writes
        xfs: don't dirty buffers beyond EOF
      11e97398
    • L
      Merge tag 'for-linus-20140905' of git://git.infradead.org/linux-mtd · 925e0ea4
      Linus Torvalds 提交于
      Pull mtd fixes from Brian Norris:
       "Two trivial MTD updates for 3.17-rc4:
      
         - a tiny comment tweak, to kill a bunch of DocBook warnings added
           during the merge window
      
         - a small fixup to the OTP routines' error handling"
      
      * tag 'for-linus-20140905' of git://git.infradead.org/linux-mtd:
        mtd: nand: fix DocBook warnings on nand_sdr_timings doc
        mtd: cfi_cmdset_0002: check return code for get_chip()
      925e0ea4
  6. 06 9月, 2014 5 次提交
  7. 05 9月, 2014 12 次提交