On Sun, Feb 9, 2014 at 7:36 AM, Paolo Bonzini <pbonz...@redhat.com> wrote:
> Il 08/02/2014 18:46, Peter Maydell ha scritto:
>
>>> This adds parameter "argv0" in calling path from main() to
>>> > module_call_init(). So that module loader knows the location of
>>> > executable.
>>
>> This patch looks kind of odd to me. Why are there so many
>> different places calling module_call_init() and passing in an
>> argv0? I would have expected that vl.c (and the equivalent main
>> functions for the tools) would just initialise the module system
>> once, passing in the argv0 at that point.
>
>
> I'm ambivalent about this.
>
>
>> It's not obvious why
>> the block layer should be handing argv0 around through bdrv_init
>> in order to (re-?) initialise modules.
>
>
> The executable directory is not found once and for all, it's recomputed on
> any call to module_load or os_find_datadir.
>

How about compute it for once in main() and load in module_call_init()?

Fam

Reply via email to