From: "Maciej W. Rozycki" <macro@imgtec.com> To: Ralf Baechle <ralf@linux-mips.org> Cc: Paul Burton <paul.burton@imgtec.com>, James Hogan <james.hogan@imgtec.com>, <linux-mips@linux-mips.org>, <linux-kernel@vger.kernel.org> Subject: [PATCH 1/2] MIPS: ptrace: Also initialize the FP context on individual FCSR writes Date: Fri, 28 Oct 2016 08:20:09 +0100 [thread overview] Message-ID: <alpine.DEB.2.00.1610272243220.31859@tp.orcam.me.uk> (raw) In-Reply-To: <alpine.DEB.2.00.1610272159160.31859@tp.orcam.me.uk> Complement commit ac9ad83bc318 ("MIPS: prevent FP context set via ptrace being discarded") and also initialize the FP context whenever FCSR alone is written with a PTRACE_POKEUSR request addressing FPC_CSR, rather than along with the full FPU register set in the case of the PTRACE_SETFPREGS request. Signed-off-by: Maciej W. Rozycki <macro@imgtec.com> --- Hi, This is tricky to verify with modern user software as these days it all uses PTRACE_SETFPREGS. I suppose I could tweak and rebuild `gdbserver' to disable modern code and let it use fallback legacy support still present there, but frankly I think the change is obviously correct. Please apply. Maciej linux-mips-ptrace-fcsr-init-fp-ctx.diff Index: linux-sfr-test/arch/mips/kernel/ptrace.c =================================================================== --- linux-sfr-test.orig/arch/mips/kernel/ptrace.c 2016-10-22 01:29:44.000000000 +0100 +++ linux-sfr-test/arch/mips/kernel/ptrace.c 2016-10-22 01:44:38.740202000 +0100 @@ -817,6 +818,7 @@ long arch_ptrace(struct task_struct *chi break; #endif case FPC_CSR: + init_fp_ctx(child); ptrace_setfcr31(child, data); break; case DSP_BASE ... DSP_BASE + 5: {
WARNING: multiple messages have this Message-ID (diff)
From: "Maciej W. Rozycki" <macro@imgtec.com> To: Ralf Baechle <ralf@linux-mips.org> Cc: Paul Burton <paul.burton@imgtec.com>, James Hogan <james.hogan@imgtec.com>, linux-mips@linux-mips.org, linux-kernel@vger.kernel.org Subject: [PATCH 1/2] MIPS: ptrace: Also initialize the FP context on individual FCSR writes Date: Fri, 28 Oct 2016 08:20:09 +0100 [thread overview] Message-ID: <alpine.DEB.2.00.1610272243220.31859@tp.orcam.me.uk> (raw) Message-ID: <20161028072009.mhMptL0SdYAnejDHoEoGZdqgBUoD6BTpqI5gVJMlxm0@z> (raw) In-Reply-To: <alpine.DEB.2.00.1610272159160.31859@tp.orcam.me.uk> Complement commit ac9ad83bc318 ("MIPS: prevent FP context set via ptrace being discarded") and also initialize the FP context whenever FCSR alone is written with a PTRACE_POKEUSR request addressing FPC_CSR, rather than along with the full FPU register set in the case of the PTRACE_SETFPREGS request. Signed-off-by: Maciej W. Rozycki <macro@imgtec.com> --- Hi, This is tricky to verify with modern user software as these days it all uses PTRACE_SETFPREGS. I suppose I could tweak and rebuild `gdbserver' to disable modern code and let it use fallback legacy support still present there, but frankly I think the change is obviously correct. Please apply. Maciej linux-mips-ptrace-fcsr-init-fp-ctx.diff Index: linux-sfr-test/arch/mips/kernel/ptrace.c =================================================================== --- linux-sfr-test.orig/arch/mips/kernel/ptrace.c 2016-10-22 01:29:44.000000000 +0100 +++ linux-sfr-test/arch/mips/kernel/ptrace.c 2016-10-22 01:44:38.740202000 +0100 @@ -817,6 +818,7 @@ long arch_ptrace(struct task_struct *chi break; #endif case FPC_CSR: + init_fp_ctx(child); ptrace_setfcr31(child, data); break; case DSP_BASE ... DSP_BASE + 5: {
next prev parent reply other threads:[~2016-10-28 7:20 UTC|newest] Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-10-28 7:19 [PATCH 0/2] More FCSR handling fixes Maciej W. Rozycki 2016-10-28 7:19 ` Maciej W. Rozycki 2016-10-28 7:20 ` Maciej W. Rozycki [this message] 2016-10-28 7:20 ` [PATCH 1/2] MIPS: ptrace: Also initialize the FP context on individual FCSR writes Maciej W. Rozycki 2016-10-28 7:21 ` [PATCH 2/2] MIPS: Fix FCSR Cause bit handling for correct SIGFPE issue Maciej W. Rozycki 2016-10-28 7:21 ` Maciej W. Rozycki
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=alpine.DEB.2.00.1610272243220.31859@tp.orcam.me.uk \ --to=macro@imgtec.com \ --cc=james.hogan@imgtec.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mips@linux-mips.org \ --cc=paul.burton@imgtec.com \ --cc=ralf@linux-mips.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).