Re: [PATCH net-next v3 01/16] mctp: Add MCTP base

From: Jeremy Kerr
Date: Thu Aug 12 2021 - 07:25:17 EST


Hi Geert,

Thanks for the testing!

> When building an allmodconfig kernel, I got:

[...]

I don't see this on a clean allmodconfig build, nor when building the
previous commit then the MCTP commit with something like:

git checkout bc49d81^
make O=obj.allmodconfig allmodconfig
make O=obj.allmodconfig -j16
git checkout bc49d81
make O=obj.allmodconfig -j16

- but it seems like it might be up to the ordering of a parallel build.

>From your description, it does sound like it's not regenerating flask.h;
the kbuild rules would seem to have a classmap.h -> flask.h dependency:

$(addprefix $(obj)/,$(selinux-y)): $(obj)/flask.h

quiet_cmd_flask = GEN $(obj)/flask.h $(obj)/av_permissions.h
cmd_flask = scripts/selinux/genheaders/genheaders $(obj)/flask.h $(obj)/av_permissions.h

targets += flask.h av_permissions.h
$(obj)/flask.h: $(src)/include/classmap.h FORCE
$(call if_changed,flask)

however, classmap.h is #include-ed as part of the genheaders binary
build, rather than read at runtime; maybe $(obj)/flask.h should depend
on the genheaders binary, rather than $(src)/include/classmap.h ?

If you can reproduce, can you compare the ctimes with:

stat scripts/selinux/genheaders/genheaders security/selinux/flask.h

in your object dir?

Cheers,


Jeremy