[GIT PULL] parisc architecture fixes for 4.9-rc7

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Linus,

Please pull important fixes for the parisc architecture for v4.9-rc7 from
  git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux.git parisc-4.9-4


On parisc we were still seeing occasional random segmentation faults and memory
corruption on SMP machines. Dave Anglin then looked again at the TLB related
code and found two issues in the PCI DMA and generic TLB flush functions.

Then, in our startup code we had some timing of the cache and TLB functions to
calculate a threshold when to use a complete TLB/cache flush or just to flush a
specific range. This code produced a race with newly started CPUs and thus lead
to occasional kernel crashes (due to stale TLB/cache entries).  The patch by
Dave fixes this issue by flushing the local caches before starting secondary
CPUs and by removing the race.

The last problem fixed by this series is that we quite often suffered from hung
tasks and self-detected stalls on the CPUs. It was somehow clear that this was
related to the (in v4.7) newly introduced cr16 clocksource and the own
implementation of sched_clock(). I replaced the open-coded sched_clock()
function and switched to the generic sched_clock() implementation which seems
to have fixed this isse as well.

All patches have been sucessfully tested on a variety of machines, including our
debian buildd servers.

All patches (beside the small pr_cont fix) are tagged for stable releases.

Thanks,
Helge


----------------------------------------------------------------
Helge Deller (2):
      parisc: Fix printk continuations in system detection
      parisc: Switch to generic sched_clock implementation

John David Anglin (3):
      parisc: Fix races in parisc_setup_cache_timing()
      parisc: Fix race in pci-dma.c
      parisc: Also flush data TLB in flush_icache_page_asm

 arch/parisc/Kconfig            |  4 ++-
 arch/parisc/kernel/cache.c     | 31 +++++++++--------------
 arch/parisc/kernel/inventory.c |  8 +++---
 arch/parisc/kernel/pacache.S   | 37 ++++++++++++++++-----------
 arch/parisc/kernel/pci-dma.c   |  2 +-
 arch/parisc/kernel/setup.c     |  4 +++
 arch/parisc/kernel/time.c      | 57 ++++++++----------------------------------
 7 files changed, 57 insertions(+), 86 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-parisc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux SoC]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux