1. 29 Jul, 2014 5 commits
  2. 28 Jul, 2014 6 commits
  3. 27 Jul, 2014 5 commits
  4. 26 Jul, 2014 14 commits
    • Linus Torvalds's avatar
      Fix gcc-4.9.0 miscompilation of load_balance() in scheduler · 2062afb4
      Linus Torvalds authored
      Michel Dänzer and a couple of other people reported inexplicable random
      oopses in the scheduler, and the cause turns out to be gcc mis-compiling
      the load_balance() function when debugging is enabled.  The gcc bug
      apparently goes back to gcc-4.5, but slight optimization changes means
      that it now showed up as a problem in 4.9.0 and 4.9.1.
      The instruction scheduling problem causes gcc to schedule a spill
      operation to before the stack frame has been created, which in turn can
      corrupt the spilled value if an interrupt comes in.  There may be other
      effects of this bug too, but that's the code generation problem seen in
      Michel's case.
      This is fixed in current gcc HEAD, but the workaround as suggested by
      Markus Trippelsdorf is pretty simple: use -fno-var-tracking-assignments
      when compiling the kernel, which disables the gcc code that causes the
      problem.  This can result in slightly worse debug information for
      variable accesses, but that is infinitely preferable to actual code
      generation problems.
      Doing this unconditionally (not just for CONFIG_DEBUG_INFO) also allows
      non-debug builds to verify that the debug build would be identical: we
      can do
          export GCC_COMPARE_DEBUG=1
      to make gcc internally verify that the result of the build is
      independent of the "-g" flag (it will make the compiler build everything
      twice, toggling the debug flag, and compare the results).
      Without the "-fno-var-tracking-assignments" option, the build would fail
      (even with 4.8.3 that didn't show the actual stack frame bug) with a gcc
      compare failure.
      See also gcc bugzilla:
      Reported-by: default avatarMichel Dänzer <michel@daenzer.net>
      Suggested-by: default avatarMarkus Trippelsdorf <markus@trippelsdorf.de>
      Cc: Jakub Jelinek <jakub@redhat.com>
      Cc: stable@kernel.org
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    • Hugh Dickins's avatar
      mm: fix direct reclaim writeback regression · 8bdd6380
      Hugh Dickins authored
      Shortly before 3.16-rc1, Dave Jones reported:
        WARNING: CPU: 3 PID: 19721 at fs/xfs/xfs_aops.c:971
                 xfs_vm_writepage+0x5ce/0x630 [xfs]()
        CPU: 3 PID: 19721 Comm: trinity-c61 Not tainted 3.15.0+ #3
        Call Trace:
          xfs_vm_writepage+0x5ce/0x630 [xfs]
       970   if (WARN_ON_ONCE((current->flags & (PF_MEMALLOC|PF_KSWAPD)) ==
       971                   PF_MEMALLOC))
      I did not respond at the time, because a glance at the PageDirty block
      in shrink_page_list() quickly shows that this is impossible: we don't do
      writeback on file pages (other than tmpfs) from direct reclaim nowadays.
      Dave was hallucinating, but it would have been disrespectful to say so.
      However, my own /var/log/messages now shows similar complaints
        WARNING: CPU: 1 PID: 28814 at fs/ext4/inode.c:1881 ext4_writepage+0xa7/0x38b()
        WARNING: CPU: 0 PID: 27347 at fs/ext4/inode.c:1764 ext4_writepage+0xa7/0x38b()
      from stressing some mmotm trees during July.
      Could a dirty xfs or ext4 file page somehow get marked PageSwapBacked,
      so fail shrink_page_list()'s page_is_file_cache() test, and so proceed
      to mapping->a_ops->writepage()?
      Yes, 3.16-rc1's commit 68711a74
       ("mm, migration: add destination
      page freeing callback") has provided such a way to compaction: if
      migrating a SwapBacked page fails, its newpage may be put back on the
      list for later use with PageSwapBacked still set, and nothing will clear
      Whether that can do anything worse than issue WARN_ON_ONCEs, and get
      some statistics wrong, is unclear: easier to fix than to think through
      the consequences.
      Fixing it here, before the put_new_page(), addresses the bug directly,
      but is probably the worst place to fix it.  Page migration is doing too
      many parts of the job on too many levels: fixing it in
      move_to_new_page() to complement its SetPageSwapBacked would be
      preferable, except why is it (and newpage->mapping and newpage->index)
      done there, rather than down in migrate_page_move_mapping(), once we are
      sure of success? Not a cleanup to get into right now, especially not
      with memcg cleanups coming in 3.17.
      Reported-by: default avatarDave Jones <davej@redhat.com>
      Signed-off-by: default avatarHugh Dickins <hughd@google.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    • Haojian Zhuang's avatar
      ARM: dts: fix L2 address in Hi3620 · 28c9770b
      Haojian Zhuang authored
      Fix the address of L2 controler register in hi3620 SoC.
      This has been wrong from the point that the file was merged
      in v3.14.
      Signed-off-by: default avatarHaojian Zhuang <haojian.zhuang@linaro.org>
      Acked-by: default avatarWei Xu <xuwei5@hisilicon.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    • Linus Torvalds's avatar
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · b401796c
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "This is radeon and intel fixes, and is a small bit larger than I'm
        guessing you'd like it to be.
         - i915: fixes 32-bit highmem i915 blank screen, semaphore hang and
           runtime pm fix
         - radeon: gpuvm stability fix for hangs since 3.15, and hang/reboot
           regression on TN/RL devices,
        The only slightly controversial one is the change to use GB for the
        vm_size, which I'm letting through as its a new interface we defined
        in this merge window, and I'd prefer to have the released kernel have
        the final interface rather than changing it later"
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
        drm/radeon: fix cut and paste issue for hawaii.
        drm/radeon: fix irq ring buffer overflow handling
        drm/i915: Simplify i915_gem_release_all_mmaps()
        drm/radeon: fix error handling in radeon_vm_bo_set_addr
        drm/i915: fix freeze with blank screen booting highmem
        drm/i915: Reorder the semaphore deadlock check, again
        drm/radeon/TN: only enable bapm on MSI systems
        drm/radeon: fix VM IB handling
        drm/radeon: fix handling of radeon_vm_bo_rmv v3
        drm/radeon: let's use GB for vm_size (v2)
    • Linus Torvalds's avatar
      Merge tag 'sound-3.16-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 9c550218
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "Here contains only the fixes for the new FireWire bebob driver.  All
        fairly trivial and local fixes, so safe to apply"
      * tag 'sound-3.16-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: bebob: Correction for return value of special_clk_ctl_put() in error
        ALSA: bebob: Correction for return value of .put callback
        ALSA: bebob: Use different labels for digital input/output
        ALSA: bebob: Fix a missing to unlock mutex in error handling case
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging · 051c2a9f
      Linus Torvalds authored
      Pull hwmon fix from Guenter Roeck:
       "Fixes to temperature limit and vrm write operations in smsc47m192
      * tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
        hwmon: (smsc47m192) Fix temperature limit and vrm write operations
    • Randy Dunlap's avatar
      parport: fix menu breakage · edffe1b6
      Randy Dunlap authored
      Do not split the PARPORT-related symbols with the new kconfig
      symbol ARCH_MIGHT_HAVE_PC_PARPORT. The split was causing incorrect
      display of these symbols -- they were not being displayed together
      as they should be.
      Fixes: d90c3eb3
       "Kconfig cleanup (PARPORT_PC dependencies)"
      Signed-off-by: default avatarRandy Dunlap <rdunlap@infradead.org>
      Cc: Mark Salter <msalter@redhat.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: stable@vger.kernel.org # for 3.13, 3.14, 3.15
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    • Linus Torvalds's avatar
      Merge tag 'blackfin-3.16-fixes' of... · 32e6e5c3
      Linus Torvalds authored
      Merge tag 'blackfin-3.16-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/realmz6/blackfin-linux
      Pull blackfin fixes from Steven Miao:
       "smc nor flash PM fix, pinctrl group fix, update defconfig, and build
      * tag 'blackfin-3.16-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/realmz6/blackfin-linux:
        blackfin: vmlinux.lds.S: reserve 32 bytes space at the end of data section for XIP kernel
        defconfig: BF609: update spi config name
        irq: blackfin sec: drop duplicated sec priority set
        blackfin: bind different groups of one pinmux function to different state name
        blackfin: fix some bf5xx boards build for missing <linux/gpio.h>
        pm: bf609: cleanup smc nor flash
    • Steven Miao's avatar
      blackfin: vmlinux.lds.S: reserve 32 bytes space at the end of data section for XIP kernel · b76f9823
      Steven Miao authored
      to collect some undefined section to the end of the data section and avoid section overlap
      Signed-off-by: default avatarSteven Miao <realmz6@gmail.com>
    • Steven Miao's avatar
      defconfig: BF609: update spi config name · ac425b61
      Steven Miao authored
      Signed-off-by: default avatarSteven Miao <realmz6@gmail.com>
    • Steven Miao's avatar
    • Sonic Zhang's avatar
    • Steven Miao's avatar
    • Steven Miao's avatar
      pm: bf609: cleanup smc nor flash · c6a26ce9
      Steven Miao authored
      drop smc pin state change code, pin state will be saved in pinctrl-adi2 driver
      cleanup nor flash init/exit for pm suspend/resume
      Signed-off-by: default avatarSteven Miao <realmz6@gmail.com>
  5. 25 Jul, 2014 2 commits
  6. 24 Jul, 2014 8 commits