Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 22 Sep 2021 20:19:34 GMT
From:      Konstantin Belousov <kib@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: e36d0e86e328 - main - Revert "linux32: add a hack to avoid redefining the type of the savefpu tag"
Message-ID:  <202109222019.18MKJYCu085755@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=e36d0e86e3282cde5a12b6a623e6deefaabfd0c4

commit e36d0e86e3282cde5a12b6a623e6deefaabfd0c4
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2021-09-22 18:54:39 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2021-09-22 20:17:47 +0000

    Revert "linux32: add a hack to avoid redefining the type of the savefpu tag"
    
    This reverts commit 0f6829488ef32142b9ea1c0806fb5ecfe0872c02.
    Also it changes the type of md_usr_fpu_save struct mdthread member
    to void *, which is what uncovered this trouble.  Now the save area
    is untyped, but since it is hidden behind accessors, it is not too
    significant.  Since apparently there are consumers affected outside
    the tree, this hack is better than one from the reverted revision.
    
    PR:     258678
    Reported by:    cy
    Reviewed by:    cy, kevans, markj
    Sponsored by:   The FreeBSD Foundation
    MFC after:      1 week
    Differential revision:  https://reviews.freebsd.org/D32060
---
 sys/amd64/include/proc.h   | 2 +-
 sys/modules/linux/Makefile | 2 +-
 sys/x86/include/fpu.h      | 2 --
 3 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/sys/amd64/include/proc.h b/sys/amd64/include/proc.h
index 94ac69d31e65..6b0d0e66d0ee 100644
--- a/sys/amd64/include/proc.h
+++ b/sys/amd64/include/proc.h
@@ -75,7 +75,7 @@ struct mdthread {
 	int	md_efirt_dis_pf;	/* (k) */
 	struct pcb md_pcb;
 	vm_offset_t md_stack_base;
-	struct savefpu *md_usr_fpu_save;
+	void *md_usr_fpu_save;
 };
 
 struct mdproc {
diff --git a/sys/modules/linux/Makefile b/sys/modules/linux/Makefile
index 6c95a548bffb..373ec3dcae91 100644
--- a/sys/modules/linux/Makefile
+++ b/sys/modules/linux/Makefile
@@ -60,7 +60,7 @@ linux${SFX}_assym.h: linux${SFX}_genassym.o
 	sh ${SYSDIR}/kern/genassym.sh linux${SFX}_genassym.o > ${.TARGET}
 
 .if ${MACHINE_CPUARCH} == "amd64"
-VDSOFLAGS=-DCOMPAT_FREEBSD32 -DCOMPAT_LINUX32 -D__M32_BROKEN_MODULE_HACK__ -m32
+VDSOFLAGS=-DCOMPAT_FREEBSD32 -DCOMPAT_LINUX32 -m32
 .else
 VDSOFLAGS=-mregparm=0
 .endif
diff --git a/sys/x86/include/fpu.h b/sys/x86/include/fpu.h
index bb8533d599dd..313a03ea55c9 100644
--- a/sys/x86/include/fpu.h
+++ b/sys/x86/include/fpu.h
@@ -123,12 +123,10 @@ struct savexmm {
 } __aligned(16);
 
 #ifdef __i386__
-#ifndef __M32_BROKEN_MODULE_HACK__
 union savefpu {
 	struct save87	sv_87;
 	struct savexmm	sv_xmm;
 };
-#endif /* __M32_BROKEN_MODULE_HACK__ */
 #else
 /* Floating point context. (amd64 fxsave/fxrstor) */
 struct savefpu {



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202109222019.18MKJYCu085755>