Re: filemon: weird full-time build although filemon enabled

From: O. Hartmann <ohartmann_at_walstatt.org>
Date: Mon, 8 May 2017 17:37:09 +0200
Am Sun, 7 May 2017 23:24:55 -0700
"Simon J. Gerraty" <sjg_at_juniper.net> schrieb:

> Hi,
> 
> > I build CURRENT on two technically similar systems on a almost daily basis.
> > Therefore, it was a great relief having WITH_META_MODE=yes set in /etc/src-env.conf
> > for incremental builds. To make my understanding of this clear (just in case I'm
> > wrong): setting WITH_META_MODE builds only portions that does not need to be build in
> > the make context.  
> 
> I'm not sure I parsed that correctly, so let me just say;
> With MK_META_MODE=yes, bmake should be put into meta mode.
> 
> This simply means that most targets get a .meta file, that records the
> expanded command line, any command output and a syscall trace.
> These can be very useful for debugging.
> 
> More important; on an update build bmake can use them to make targets
> out-of-date that the normal rules miss.
> Any change to the expanded command line, makes the target out-of-date.
> Any change to any file read or executed makes the target out-of-date.
>  
> > Well, the reason writing this email is: on one system, I run almost every reboot into
> > a "full build" and this puzzles me a bit. The long-lasting and time exhausting builds
> > are  
> 
> You can add -dM to your build flags to have meta_oodate() - the function
> that does the above, explain why it decided the target is out-of-date.
> The results can be enlightening.
> 
> Note, if a target rebuilds without -dM saying why - then the normal make
> rules decided it was out-of-date.
> 
> > within the LLVM/CLANG tree. They consume a lot of time. The box in
> > question does have a  
> 
> Yes, building clang takes a while...
> 
> > Well, having said this, I need to mention that both systems use almost
> > identical /etc/src.conf setting - except the order of appearance of
> > the WITH_ tags.  
> 
> That should not matter, bsd.mkopt.mk processes them in a specified
> order.
> 
> > The problem: to make my point clear: the "weak" box starts compiling almost everytime
> > now the LLVM/CLANG tree while the XEON box does not. This is spooky.  
> 
> Add -dM, and see if that tells you why.
> Also confirm that filemon is getting loaded after each reboot.
> If that comes and goes, that could cause the behavior you see.
> 
> > I think there is something missing an I'd like to ask what is the suggested way to
> > initially restart a full build to ensure that WITH_META_MODE gets initialised
> > correctly.  
> 
> I think Bryan has set that up so that it should take care of itself
> pretty well - even toggling bewteen non-meta and meta builds should
> DTRT - which is why it matters if filemon was used that it is there for
> next build.
> 
> > Well, I'm not a developer, so please be patient with my naive report.  
> 
> No problem.  Adding -dM to your build (will add a fair bit of output),
> will hopefully tell you what's up.
> 
> From what you describe, I'd not be surprised if you see some
> "a build command has changed" and it only takes a few to trigger a
> cascade of targets out-of-date.
> 
> --sjg
> 


It is weird!

Today, after yesterday's built, I face the same 90 minutes build horror again, this time
I switched on "-dM" with the make command.

This happens:

[...]
/usr/obj/usr/src/lib/clang/libllvm/_usr_obj_usr_src_lib_clang_libllvm_CodeGen_SelectionDAG_LegalizeDAG.o.meta:
15: file '/usr/local/etc/libmap.d/nvidia.conf' is newer than the target...

This box has the following lines in /etc/src.conf to rebuild the nvidia kernel module
every time:

PORTS_MODULES+=     x11/nvidia-driver

I do not know what is going on here ... :-(

-- 
O. Hartmann

Ich widerspreche der Nutzung oder Übermittlung meiner Daten für
Werbezwecke oder für die Markt- oder Meinungsforschung (§ 28 Abs. 4 BDSG).

Received on Mon May 08 2017 - 13:37:24 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:11 UTC