Linux MIPS Architecture development
 help / color / mirror / Atom feed
From: James Hogan <james.hogan@imgtec.com>
To: Paul Burton <paul.burton@imgtec.com>
Cc: Ralf Baechle <ralf@linux-mips.org>, <linux-mips@linux-mips.org>,
	<stable@vger.kernel.org>
Subject: Re: [PATCH] MIPS: Force o32 fp64 support on 32bit MIPS64r6 kernels
Date: Thu, 23 Feb 2017 12:52:36 +0000	[thread overview]
Message-ID: <20170223125236.GC996@jhogan-linux.le.imgtec.org> (raw)
In-Reply-To: <1648905.7UokBy1sI6@np-p-burton>

[-- Attachment #1: Type: text/plain, Size: 1129 bytes --]

Hi Paul,

On Fri, Feb 17, 2017 at 10:29:11AM -0800, Paul Burton wrote:
> > This results in userland FP breakage as CP0_Status.FR is read-only 1
> > since r6 (when an FPU is present) but CP0_Config5.FRE won't be set to
> > emulate FR=0.
> 
> Perhaps it would be worth clarifying that what it breaks is FPU emulation or 
> pre-r6 FP code running atop MIPS32r6 kernels. Since FR=1 context switching 
> should work fine for r6 user code, and it would only be impacted if it 
> requires emulation for some reason (which is probably why we haven't hit this 
> earlier in our CI testing).

Thanks Paul, it does indeed invoke the FPU emulator as it fails to set
FR=0. I'll update that paragraph to say this:
> This results in userland FP breakage as CP0_Status.FR is read-only 1
> since r6 (when an FPU is present) so __enable_fpu() will fail to clear
> FR. This causes the FPU emulator to get used which will incorrectly
> emulate 32-bit FPU registers.


> Besides possibly clarifying the commit message above this looks good to me so:
> 
>     Reviewed-by: Paul Burton <paul.burton@imgtec.com>

Thanks
James

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 801 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: James Hogan <james.hogan@imgtec.com>
To: Paul Burton <paul.burton@imgtec.com>
Cc: Ralf Baechle <ralf@linux-mips.org>,
	linux-mips@linux-mips.org, stable@vger.kernel.org
Subject: Re: [PATCH] MIPS: Force o32 fp64 support on 32bit MIPS64r6 kernels
Date: Thu, 23 Feb 2017 12:52:36 +0000	[thread overview]
Message-ID: <20170223125236.GC996@jhogan-linux.le.imgtec.org> (raw)
Message-ID: <20170223125236.9qrC2RKFtJ_37iYMXgmR3ualiYy0ZwXRFn6zJfn-e9o@z> (raw)
In-Reply-To: <1648905.7UokBy1sI6@np-p-burton>

[-- Attachment #1: Type: text/plain, Size: 1129 bytes --]

Hi Paul,

On Fri, Feb 17, 2017 at 10:29:11AM -0800, Paul Burton wrote:
> > This results in userland FP breakage as CP0_Status.FR is read-only 1
> > since r6 (when an FPU is present) but CP0_Config5.FRE won't be set to
> > emulate FR=0.
> 
> Perhaps it would be worth clarifying that what it breaks is FPU emulation or 
> pre-r6 FP code running atop MIPS32r6 kernels. Since FR=1 context switching 
> should work fine for r6 user code, and it would only be impacted if it 
> requires emulation for some reason (which is probably why we haven't hit this 
> earlier in our CI testing).

Thanks Paul, it does indeed invoke the FPU emulator as it fails to set
FR=0. I'll update that paragraph to say this:
> This results in userland FP breakage as CP0_Status.FR is read-only 1
> since r6 (when an FPU is present) so __enable_fpu() will fail to clear
> FR. This causes the FPU emulator to get used which will incorrectly
> emulate 32-bit FPU registers.


> Besides possibly clarifying the commit message above this looks good to me so:
> 
>     Reviewed-by: Paul Burton <paul.burton@imgtec.com>

Thanks
James

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 801 bytes --]

  parent reply	other threads:[~2017-02-23 12:52 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-16 12:39 [PATCH] MIPS: Force o32 fp64 support on 32bit MIPS64r6 kernels James Hogan
2017-02-16 12:39 ` James Hogan
2017-02-17 18:29 ` Paul Burton
2017-02-17 18:29   ` Paul Burton
2017-02-23 12:52   ` James Hogan [this message]
2017-02-23 12:52     ` James Hogan

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=20170223125236.GC996@jhogan-linux.le.imgtec.org \
    --to=james.hogan@imgtec.com \
    --cc=linux-mips@linux-mips.org \
    --cc=paul.burton@imgtec.com \
    --cc=ralf@linux-mips.org \
    --cc=stable@vger.kernel.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: link
Be 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