Subject: [PATCH v3 4/9] powerpc/pkeys: Save the pkey registers before fork

From: Ram Pai <[email-masked]>
Date: Tue, 17 Jul 2018 06:51:05 -0700

When a thread forks the contents of AMR, IAMR, UAMOR registers in the
newly forked thread are not inherited.

Save the registers before forking, for content of those
registers to be automatically copied into the new thread.

Cc: Michael Ellerman <[email-masked]>
Cc: Florian Weimer <[email-masked]>
Cc: Andy Lutomirski <[email-masked]>
Cc: Thiago Jung Bauermann <[email-masked]>
Fixes: cf43d3b26452 ("powerpc: Enable pkey subsystem")
Cc: [email-masked] # v4.16+
Signed-off-by: Ram Pai <[email-masked]>
---
 arch/powerpc/kernel/process.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/arch/powerpc/kernel/process.c b/arch/powerpc/kernel/process.c
index 9ef4aea..991d097 100644
--- a/arch/powerpc/kernel/process.c
+++ b/arch/powerpc/kernel/process.c
@@ -583,6 +583,7 @@ static void save_all(struct task_struct *tsk)
 		__giveup_spe(tsk);
 
 	msr_check_and_clear(msr_all_available);
+	thread_pkey_regs_save(&tsk->thread);
 }
 
 void flush_all_to_thread(struct task_struct *tsk)
-- 
1.7.1