On Mon, 1 Oct 2018, Kees Cook wrote: > LSM initialization failures have traditionally been ignored. We should > at least WARN when something goes wrong. I guess we could have a boot param which specifies what to do if any LSM fails to init, as I think some folks will want to stop execution at that point. Thoughts? > > Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx> > Reviewed-by: Casey Schaufler <casey@xxxxxxxxxxxxxxxx> > Reviewed-by: John Johansen <john.johansen@xxxxxxxxxxxxx> > --- > security/security.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/security/security.c b/security/security.c > index 395f804f6a91..2055af907eba 100644 > --- a/security/security.c > +++ b/security/security.c > @@ -55,10 +55,12 @@ static __initdata bool debug; > static void __init major_lsm_init(void) > { > struct lsm_info *lsm; > + int ret; > > for (lsm = __start_lsm_info; lsm < __end_lsm_info; lsm++) { > init_debug("initializing %s\n", lsm->name); > - lsm->init(); > + ret = lsm->init(); > + WARN(ret, "%s failed to initialize: %d\n", lsm->name, ret); > } > } > > -- James Morris <jmorris@xxxxxxxxx>