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>