Carsten Otte 402b08622d s390: KVM preparation: provide hook to enable pgstes in user pagetable
The SIE instruction on s390 uses the 2nd half of the page table page to
virtualize the storage keys of a guest. This patch offers the s390_enable_sie
function, which reorganizes the page tables of a single-threaded process to
reserve space in the page table:
s390_enable_sie makes sure that the process is single threaded and then uses
dup_mm to create a new mm with reorganized page tables. The old mm is freed
and the process has now a page status extended field after every page table.

Code that wants to exploit pgstes should SELECT CONFIG_PGSTE.

This patch has a small common code hit, namely making dup_mm non-static.

Edit (Carsten): I've modified Martin's patch, following Jeremy Fitzhardinge's
review feedback. Now we do have the prototype for dup_mm in
include/linux/sched.h. Following Martin's suggestion, s390_enable_sie() does now
call task_lock() to prevent race against ptrace modification of mm_users.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Carsten Otte <cotte@de.ibm.com>
Acked-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Avi Kivity <avi@qumranet.com>
2008-04-27 12:00:40 +03:00
..
2008-04-25 00:25:08 +02:00
2008-02-14 21:13:33 -08:00
2008-04-19 09:59:43 +10:00
2007-10-18 14:37:24 -07:00
2008-03-30 14:18:41 -07:00
2008-03-30 14:18:41 -07:00
2008-01-25 21:08:29 +01:00
2007-07-16 09:05:50 -07:00
2008-04-02 15:28:19 -07:00
2008-02-08 09:22:31 -08:00
2008-02-08 09:22:31 -08:00
2008-04-21 15:53:41 -07:00
2008-01-25 21:08:24 +01:00
2008-02-13 16:21:18 -08:00
2008-01-25 21:08:24 +01:00
2008-04-19 19:45:01 +02:00
2008-04-19 19:45:00 +02:00
2008-04-19 19:45:00 +02:00
2007-07-16 09:05:50 -07:00
2008-04-17 10:43:01 -04:00
2008-04-21 22:15:06 +00:00
2008-01-30 13:31:20 +01:00
2008-02-06 10:41:02 -08:00
2008-02-05 09:44:07 -08:00
2008-04-21 19:45:12 -07:00
2008-04-17 12:22:31 +02:00
2008-02-08 09:22:31 -08:00