x86: Add UV memory protection bios call
PATCH 6/7 x86: Add UV memory protection bios call
[PATCH 6/7] x86: Add UV memory protection bios call
Call to change memory protections on UV.
Signed-off-by Russ Anderson <[email protected]>
--- arch/x86/kernel/bios_uv.c | 8 ++++++++ include/asm-x86/uv/bios.h | 10 +++++++++- 2 files changed, 17 insertions(+), 1 deletion(-)
arch/x86/kernel/bios_uv.c +8 -0
@@ -134,6 +134,14 @@ uv_bios_mq_watchlist_free(int blade, int }EXPORT_SYMBOL_GPL (uv_bios_mq_watchlist_free); +s64 +uv_bios_change_memprotect (u64 paddr,u64 len,enum uv_memprotect perms) +{ +return uv_bios_call_irqsave (UV_BIOS_MEMPROTECT , paddr, len, + perms,0 ,0 ); +} +EXPORT_SYMBOL_GPL (uv_bios_change_memprotect); +s64 uv_bios_freq_base (u64 clock_type,u64 *ticks_per_second) { return uv_bios_call(UV_BIOS_FREQ_BASE, clock_type,
include/asm-x86/uv/bios.h +9 -1
@@ -34,7 +34,8 @@ enum uv_bios_cmd {UV_BIOS_GET_SN_INFO ,UV_BIOS_FREQ_BASE ,UV_BIOS_WATCHLIST_ALLOC , - UV_BIOS_WATCHLIST_FREE +UV_BIOS_WATCHLIST_FREE , + UV_BIOS_MEMPROTECT };/*
@@ -82,6 +83,12 @@ union uv_watchlist_u { }; }; +enum uv_memprotect { +UV_MEMPROT_RESTRICT_ACCESS , +UV_MEMPROT_ALLOW_AMO , +UV_MEMPROT_ALLOW_RW +}; +/* * bios calls have 6 parameters */
@@ -94,6 +101,7 @@ extern s64 uv_bios_freq_base(u64, u64 *)extern int uv_bios_mq_watchlist_alloc (int ,void *,unsigned int ,unsigned long *);extern int uv_bios_mq_watchlist_free (int ,int ); +extern s64 uv_bios_change_memprotect (u64 ,u64 ,enum uv_memprotect );extern void uv_bios_init (void );
Signature · 2 lines
Russ Anderson, OS RAS/Partitioning Project Lead SGI - Silicon Graphics Inc [email protected]