svn commit: r279937 - in head/sys/powerpc: include powerpc

Konstantin Belousov kostikbel at gmail.com
Thu Mar 12 21:35:36 UTC 2015


On Thu, Mar 12, 2015 at 02:29:43PM -0700, Nathan Whitehorn wrote:
> 
> On 03/12/15 14:22, Konstantin Belousov wrote:
> > On Thu, Mar 12, 2015 at 09:15:39PM +0000, Nathan Whitehorn wrote:
> >> Author: nwhitehorn
> >> Date: Thu Mar 12 21:15:38 2015
> >> New Revision: 279937
> >> URL: https://svnweb.freebsd.org/changeset/base/279937
> >>
> >> Log:
> >>    Provide VSX context in ucontext(3) API.
> >>
> >> Modified:
> >>    head/sys/powerpc/include/ucontext.h
> >>    head/sys/powerpc/powerpc/exec_machdep.c
> >>
> >> Modified: head/sys/powerpc/include/ucontext.h
> >> ==============================================================================
> >> --- head/sys/powerpc/include/ucontext.h	Thu Mar 12 20:14:48 2015	(r279936)
> >> +++ head/sys/powerpc/include/ucontext.h	Thu Mar 12 21:15:38 2015	(r279937)
> >> @@ -46,6 +46,7 @@ typedef struct __mcontext {
> >>   	uint32_t	mc_av[2];
> >>   	register_t	mc_frame[42];
> >>   	uint64_t	mc_fpreg[33];
> >> +	uint64_t	mc_vsxfpreg[32];	/* low-order half of VSR0-31 */
> >>   } mcontext_t __aligned(16);
> >>   
> >>   #if defined(_KERNEL) && defined(__powerpc64__)
> >> @@ -60,6 +61,7 @@ typedef struct __mcontext32 {
> >>   	uint32_t	mc_av[2];
> >>   	uint32_t	mc_frame[42];
> >>   	uint64_t	mc_fpreg[33];
> >> +	uint64_t	mc_vsxfpreg[32];	/* low-order half of VSR0-31 */
> >>   } mcontext32_t __aligned(16);
> >>   #endif
> > It looks as if you broken the ABI compatibility by the change.  Am I wrong ?
> >
> 
> That is correct. It's a tier-2 platform and -CURRENT, so I'm not sure 
> it's worth the compatibility shims. I'm happy to add them if you think 
> otherwise.

You are main maintainer of PowerPC port, IMO, so it is your decision.

Note that 'this is current' argument is not applicable, since the change
also breaks stable/* binaries.

I do understand the argument of PowerPC being tier 2 architecture, but this
makes me sad.  Anyway, it is yours.  For x86, I have to introduce
getcontextx(3) mechanism.


More information about the svn-src-head mailing list