lkml.org 
[lkml]   [2023]   [Jan]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: [PATCH v3 08/24] powerpc/secvar: Allow backend to populate static list of variable names
    From
    On Wed Jan 18, 2023 at 4:10 PM AEST, Andrew Donnellan wrote:
    > Currently, the list of variables is populated by calling
    > secvar_ops->get_next() repeatedly, which is explicitly modelled on the
    > OPAL API (including the keylen parameter).
    >
    > For the upcoming PLPKS backend, we have a static list of variable names.
    > It is messy to fit that into get_next(), so instead, let the backend put
    > a NULL-terminated array of variable names into secvar_ops->var_names,
    > which will be used if get_next() is undefined.
    >
    > Signed-off-by: Andrew Donnellan <ajd@linux.ibm.com>
    > Signed-off-by: Russell Currey <ruscur@russell.cc>
    >
    > ---
    >
    > v3: New patch (ajd/mpe)
    > ---
    > arch/powerpc/include/asm/secvar.h | 4 ++
    > arch/powerpc/kernel/secvar-sysfs.c | 67 ++++++++++++++++++++----------
    > 2 files changed, 50 insertions(+), 21 deletions(-)
    >
    > diff --git a/arch/powerpc/include/asm/secvar.h b/arch/powerpc/include/asm/secvar.h
    > index ebf95386d720..c8bee1834b54 100644
    > --- a/arch/powerpc/include/asm/secvar.h
    > +++ b/arch/powerpc/include/asm/secvar.h
    > @@ -23,6 +23,10 @@ struct secvar_operations {
    > ssize_t (*format)(char *buf);
    > int (*max_size)(u64 *max_size);
    > const struct attribute **config_attrs;
    > +
    > + // NULL-terminated array of fixed variable names
    > + // Only used if get_next() isn't provided
    > + const char * const *var_names;

    The other way you could go is provide a sysfs_init() ops call here,
    and export the add_var as a library function that backends can use.

    Thanks,
    Nick

    \
     
     \ /
      Last update: 2023-03-26 23:46    [W:4.370 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site