Re: [PATCH v12 11/20] target/riscv: introduce ssp and enabling controls for zicfiss

2024-08-30 Thread Deepak Gupta
On Thu, Aug 29, 2024 at 10:56:41PM -0700, Deepak Gupta wrote: On Fri, Aug 30, 2024 at 03:20:04PM +1000, Richard Henderson wrote: On 8/30/24 09:34, Deepak Gupta wrote: +bool cpu_get_bcfien(CPURISCVState *env) It occurs to me that a better name would be "cpu_get_sspen". The backward cfi is mere

Re: [PATCH v12 11/20] target/riscv: introduce ssp and enabling controls for zicfiss

2024-08-29 Thread Deepak Gupta
On Fri, Aug 30, 2024 at 03:20:04PM +1000, Richard Henderson wrote: On 8/30/24 09:34, Deepak Gupta wrote: +bool cpu_get_bcfien(CPURISCVState *env) It occurs to me that a better name would be "cpu_get_sspen". The backward cfi is merely a consequence of the shadow stack. Want me to change cpu_g

Re: [PATCH v12 11/20] target/riscv: introduce ssp and enabling controls for zicfiss

2024-08-29 Thread Richard Henderson
On 8/30/24 09:34, Deepak Gupta wrote: +bool cpu_get_bcfien(CPURISCVState *env) It occurs to me that a better name would be "cpu_get_sspen". The backward cfi is merely a consequence of the shadow stack. +{ +/* no cfi extension, return false */ +if (!env_archcpu(env)->cfg.ext_zicfiss) {

[PATCH v12 11/20] target/riscv: introduce ssp and enabling controls for zicfiss

2024-08-29 Thread Deepak Gupta
zicfiss introduces a new state ssp ("shadow stack register") in cpu. ssp is expressed as a new unprivileged csr (CSR_SSP=0x11) and holds virtual address for shadow stack as programmed by software. Shadow stack (for each mode) is enabled via bit3 in *envcfg CSRs. Shadow stack can be enabled for a m