Date: Thu, 16 Mar 2017 19:07:39 +0100 From: Sylvain Garrigues <sylvain@sylvaingarrigues.com> To: Andrew Gierth <andrew@tao11.riddles.org.uk>, mmel@freebsd.org, freebsd-arm <freebsd-arm@freebsd.org> Subject: Re: Is CPUTYPE=cortex-A7 supposed to work? Message-ID: <FD2DA030-BDD1-49D3-8471-9DB8DE8E81D3@sylvaingarrigues.com> In-Reply-To: <87pohh2n3c.fsf@news-spur.riddles.org.uk> References: <871suc3nv8.fsf@news-spur.riddles.org.uk> <CANCZdfq4EwH%2B_9FVNai8s6Y-gdTjHJ8dNkJwSrnF%2BSAkdwvYdg@mail.gmail.com> <8737ely05c.fsf@news-spur.riddles.org.uk> <CANCZdfpftVHaPahTOP0vxB-FR%2BKtpqY9JMJr=F2DGifD0fhKMQ@mail.gmail.com> <87wpbxw3yd.fsf@news-spur.riddles.org.uk> <79EBD44B-2C2D-4394-A90C-DF494A049F20@dsl-only.net> <E6BC9F77-F65B-4918-9E22-3BFECA268E30@sylvaingarrigues.com> <674facba-68cd-8ce1-887a-1ef3c51520bc@freebsd.org> <ED8405B6-1150-4A9C-AD93-5C74306FB361@sylvaingarrigues.com> <87pohh2n3c.fsf@news-spur.riddles.org.uk>
next in thread | previous in thread | raw e-mail | index | archive | help
> Le 16 mars 2017 =C3=A0 18:27, Andrew Gierth = <andrew@tao11.riddles.org.uk> a =C3=A9crit : >=20 > tl/dr: building without CPUTYPE is a workaround that simply reduces = both > the chance and severity of failure; building with CPUTYPE currently > breaks almost everything, but with a probability that varies wildly > depending on what the application does. Got it now, thank you both Andrew and Michal. I can=E2=80=99t imagine = how lucky we are to have you guys analyze these behaviors so quickly and = accurately.=20 My conclusion of these discussions seems to be: - Andrew, you proposed a kernel patch which fixes / handles the saving = and restoring of FP registers during signal (kernel side). It seems it = greatly reduces the failure probability by allowing applications to have = FPU instructions in signal handlers. But it breaks ABI. - Michal, you mentioned you=E2=80=99d like to fix this in a way that = doesn=E2=80=99t break ABI, and that: * the "VFP part of kernel <-> userland interaction is broken from = day 1 =C2=BB <<=3D=3D was it just this signal part which was broken? * and "the struct fpreg is also wrong and I'm not sure if or how we = can to fix this in compatible way =C2=BB <<=3D=3D Andrew=E2=80=99s patch = doesn=E2=80=99t fix this right? Is this a serious problem doctor? What = are the symptoms? So what are you guys gonna do about all this, are you going to address = these issues, are you going to break the ABI in 12-CURRENT? Can wait to = hear about the next steps, the suspense is terrible :-)=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?FD2DA030-BDD1-49D3-8471-9DB8DE8E81D3>