Hi Michael,
On Tue, Jul 05, 2016 at 03:40:40PM +1000, Michael Ellerman wrote:
> On Wed, 2016-06-04 at 07:00:12 UTC, Simon Guo wrote:
> > These 2 fields track whether user process has used Altivec/VSX
> > registers or not. They are used by kernel to setup signal frame
> > on user stack correctly regarding vector part.
> > 
> > CRIU(Checkpoint and Restore In User space) builds signal frame
> > for restored process. It will need this export information to
> > setup signal frame correctly. And CRIU will need to restore these
> > 2 fields for the restored process.
> > 
> > Signed-off-by: Simon Guo <wei.guo.si...@gmail.com>
> > Reviewed-by: Laurent Dufour <lduf...@linux.vnet.ibm.com>
> > @@ -176,6 +176,17 @@ struct pt_regs {
> >  #define PTRACE_GETREGS64     0x16
> >  #define PTRACE_SETREGS64     0x17
> >  
> > +/*
> > + * Get or set some register used bit.
> > + * The flags will be saved in a 32 bit data.
> > + * Currently it is only used for VR/VSR usage.
> > + */
> > +#define PTRACE_GET_REGS_USAGE        0x1e
> > +#define PTRACE_SET_REGS_USAGE        0x1f
> > +
> > +#define PTRACE_REGS_USAGE_VR_BIT  0x00000001
> > +#define PTRACE_REGS_USAGE_VSR_BIT 0x00000002
> 
> 
> It looks like you just made up this new ptrace ABI ?
> 
> Or is it used on other arches ? (no AFAICS)
> 
> How do other arches handle this ?
> 
> I'm a bit wary of adding new ptrace ABIs.
> 
> If we do want to do this, I'd at least think the mask should be u64, to give 
> us
> more capacity to add new registers.
> 
> cheers

It is only used on PowerPc currently. I had better rename
it to:
#define PPC_PTRACE_GET_REGS_USAGE        0x96
#define PPC_PTRACE_SET_REGS_USAGE        0x97

I will change the mask into u64. 

Thanks,
- Simon

_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to