On 1/28/20 1:53 PM, Brendan Higgins wrote: > On Tue, Jan 28, 2020 at 11:35 AM <Tim.Bird@xxxxxxxx> wrote: >> >>> -----Original Message----- >>> From: Frank Rowand on January 28, 2020 11:37 AM >>> >>> On 1/28/20 1:19 AM, Brendan Higgins wrote: >>>> On Mon, Jan 27, 2020 at 9:40 AM Frank Rowand <frowand.list@xxxxxxxxx> wrote: >> ... >>>> we could add Kconfigs to control this, but the compiler nevertheless >>>> complains because it doesn't know what phase KUnit runs in. >>>> >>>> Is there any way to tell the compiler that it is okay for non __init >>>> code to call __init code? I would prefer not to have a duplicate >>>> version of all the KUnit libraries with all the symbols marked __init. >>> >>> I'm not sure. The build messages have always been useful and valid in >>> my context, so I never thought to consider that possibility. >>> >>>> Thoughts? >> >> I'm not sure there's a restriction on non __init code calling __init >> code. In init/main.c arch_call_reset_init() is in __init, and it calls >> rest_init which is non __init, without any special handling. >> >> Is the compiler complaint mentioned above related to calling >> into __init code, or with some other issue? > > I distinctly remember having the compiler complain at me when I was > messing around with the device tree unit tests because of KUnit > calling code marked as __init. Maybe it's time to start converting > those to KUnit to force the issue? Frank, does that work for you? I have agreed to try converting the devicetree unittest to KUnit. Now that KUnit is in 5.5, I think there is a solid foundation for me to proceed. -Frank