[PATCH -next v15 08/19] riscv: Introduce struct/helpers to save/restore per-task Vector state

Björn Töpel bjorn at kernel.org
Thu Mar 23 03:21:11 PDT 2023


Andy Chiu <andy.chiu at sifive.com> writes:

> From: Greentime Hu <greentime.hu at sifive.com>
>
> Add vector state context struct to be added later in thread_struct. And
> prepare low-level helper functions to save/restore vector contexts.
>
> This include Vector Regfile and CSRs holding dynamic configuration state
> (vstart, vl, vtype, vcsr). The Vec Register width could be implementation
> defined, but same for all processes, so that is saved separately.
>
> This is not yet wired into final thread_struct - will be done when
> __switch_to actually starts doing this in later patches.
>
> Given the variable (and potentially large) size of regfile, they are
> saved in dynamically allocated memory, pointed to by datap pointer in
> __riscv_v_ext_state.
>
> Co-developed-by: Vincent Chen <vincent.chen at sifive.com>
> Signed-off-by: Vincent Chen <vincent.chen at sifive.com>
> Signed-off-by: Greentime Hu <greentime.hu at sifive.com>
> Signed-off-by: Vineet Gupta <vineetg at rivosinc.com>
> Signed-off-by: Andy Chiu <andy.chiu at sifive.com>

Thank you for doing the scratch reg change!

Reviewed-by: Björn Töpel <bjorn at rivosinc.com>



More information about the kvm-riscv mailing list