[PATCH v3 11/34] lsm: get rid of the lsm_names list and do some cleanup
Paul Moore
paul at paul-moore.com
Mon Sep 8 23:05:56 UTC 2025
On Mon, Sep 8, 2025 at 9:07 AM Tetsuo Handa
<penguin-kernel at i-love.sakura.ne.jp> wrote:
> On 2025/09/07 16:35, Tetsuo Handa wrote:
> > On 2025/09/05 2:52, Paul Moore wrote:
> >> + if (!str) {
> >> + str = str_tmp;
> >> + len = len_tmp - 1;
> >
> > This needs to be
> >
> > len = len_tmp - 1;
> > mb();
> > str = str_tmp;
> >
> > , or concurrent access might reach simple_read_from_buffer()
> > with str != 0 and len == 0. (If you don't want mb(), you can use
> >
> > - if (unlikely(!str)) {
> > + if (unlikely(!str || !len)) {
Good catch, thanks. I'm going to go with the approach above as it is
rather straightforward.
> Well, memory barrier is more complicated; it will be
>
> len = len_tmp - 1;
> wmb();
> str = str_tmp;
>
> and
>
> }
> rmb();
> return simple_read_from_buffer(buf, count, ppos, str, len);
>
> pair.
>
> Just splitting the whole { } block that follows "if (unlikely(!str))"
> out as an initcall function is much simpler ...
I would very much prefer to get the string generation out of the boot,
and generate it on demand.
--
paul-moore.com
More information about the Linux-security-module-archive
mailing list