linux/arch/parisc
John David Anglin bda079d336 parisc: use spin_lock_irqsave/spin_unlock_irqrestore for PTE updates
User applications running on SMP kernels have long suffered from instability
and random segmentation faults.  This patch improves the situation although
there is more work to be done.

One of the problems is the various routines in pgtable.h that update page table
entries use different locking mechanisms, or no lock at all (set_pte_at).  This
change modifies the routines to all use the same lock pa_dbit_lock.  This lock
is used for dirty bit updates in the interruption code. The patch also purges
the TLB entries associated with the PTE to ensure that inconsistent values are
not used after the page table entry is updated.  The UP and SMP code are now
identical.

The change also includes a minor update to the purge_tlb_entries function in
cache.c to improve its efficiency.

Signed-off-by: John David Anglin <dave.anglin@bell.net>
Cc: Helge Deller <deller@gmx.de>
Signed-off-by: Helge Deller <deller@gmx.de>
2013-04-25 22:37:00 +02:00
..
configs kconfig: rename CONFIG_EMBEDDED to CONFIG_EXPERT 2011-01-20 17:02:05 -08:00
hpux [PARISC] hpux: Remove obsolete regs parameter from do_execve() in hpux_execve() 2013-01-30 13:26:57 +11:00
include parisc: use spin_lock_irqsave/spin_unlock_irqrestore for PTE updates 2013-04-25 22:37:00 +02:00
kernel parisc: use spin_lock_irqsave/spin_unlock_irqrestore for PTE updates 2013-04-25 22:37:00 +02:00
lib parisc: Provide __ucmpdi2 to resolve undefined references in 32 bit builds. 2013-04-25 22:36:15 +02:00
math-emu parisc: avoid undefined shift in cnv_float.h 2013-01-07 23:06:22 +01:00
mm parisc/mm/fault.c: Port OOM changes to do_page_fault 2013-02-20 22:51:31 +01:00
oprofile oprofile: more whitespace fixes 2008-10-15 20:55:51 +02:00
defpalo.conf
install.sh kbuild: use INSTALLKERNEL to select customized installkernel script 2009-09-20 12:18:14 +02:00
Kconfig Select VIRT_TO_BUS directly where needed 2013-03-12 11:16:40 -07:00
Kconfig.debug parisc: add strict copy size checks (v2) 2010-03-06 22:54:09 +00:00
Makefile parisc: disable -mlong-calls compiler option for kernel modules 2013-04-25 22:36:50 +02:00
nm