From owner-dev-commits-src-all@freebsd.org Sun Mar 28 00:25:15 2021 Return-Path: Delivered-To: dev-commits-src-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 807DF5ADF5E; Sun, 28 Mar 2021 00:25:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4F7Ggv3FLtz4tkB; Sun, 28 Mar 2021 00:25:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 626041695D; Sun, 28 Mar 2021 00:25:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 12S0PFIj093162; Sun, 28 Mar 2021 00:25:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 12S0PFBs093161; Sun, 28 Mar 2021 00:25:15 GMT (envelope-from git) Date: Sun, 28 Mar 2021 00:25:15 GMT Message-Id: <202103280025.12S0PFBs093161@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: 6a762cfae145 - main - powerpc: Fix powerpcspe WRT FPSCR MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6a762cfae145625e491528531709145c76228870 Auto-Submitted: auto-generated X-BeenThere: dev-commits-src-all@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Commit messages for all branches of the src repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Mar 2021 00:25:15 -0000 The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=6a762cfae145625e491528531709145c76228870 commit 6a762cfae145625e491528531709145c76228870 Author: Justin Hibbits AuthorDate: 2021-03-28 00:24:59 +0000 Commit: Justin Hibbits CommitDate: 2021-03-28 00:24:59 +0000 powerpc: Fix powerpcspe WRT FPSCR Summary: Since powerpcspe doesn't have a traditional FPU, there's no FPSCR, and no FPRs. Attempting to use them triggers an illegal instruction trap. Fix this unconditional cleanup of FPSCR by conditionalizing it on the FPU being used in the outgoing thread. Reviewed By: bdragon Differential Revision: https://reviews.freebsd.org/D29452 --- sys/powerpc/powerpc/exec_machdep.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/powerpc/powerpc/exec_machdep.c b/sys/powerpc/powerpc/exec_machdep.c index 91cc9a98f7a7..97e4caba956a 100644 --- a/sys/powerpc/powerpc/exec_machdep.c +++ b/sys/powerpc/powerpc/exec_machdep.c @@ -566,7 +566,8 @@ cleanup_power_extras(struct thread *td) if (pcb_flags & PCB_CDSCR) mtspr(SPR_DSCRP, 0); - cleanup_fpscr(); + if (pcb_flags & PCB_FPU) + cleanup_fpscr(); } /*