init stuck on PD session from platform_drv

Boris Mulder boris.mulder at ...434...
Tue Feb 20 12:34:35 CET 2018


Oops, I acidentally hit reply instead of reply list. Here it is again.

> that is very likely the case.
>
> All session arguments including the label are passed as a single
> 'Rpc_in_buffer<160>' argument to the `Parent::session` RPC function.
> Whenever the session request is forwarded to a parent, the parent
> prefixes the label with the originating child's name. Eventually, when
> the nesting level becomes very deep, the resulting label might not fit
> into the argument anymore.
>
> The message "Error: corrupted string" is not directly printed by the
> session-creation code path but by the log service [1], but it is
> plausible that it is caused by a truncated label.
>
> I wonder, have you tried to synthetically reproduce the problem outside
> your actual scenario? This would greatly ease the diagnosis.
>
> [1] src/core/include/log_session_component.h
>
> Cheers
> Norman
>
A bare run script with a wifi_drv on top of many inits gives the
reattempted PD session too, as well as rom_session denied errors for
boot modules. Which errors it gives seems to be dependant on the length
of the label. This confirms it, since the session request with the
longer labels seem to be rejected.

In that case I will try to perhaps move init_wifi down one or two
levels, see if that works.

Thanks for your reply.

P.S. Perhaps it would be nice if the session arguments are actually
checked for length and a warning is given if they do not fit into the
rpc buffer? It took me some time to identify the problem in this case.

-- 

Met vriendelijke groet / kind regards,

Boris Mulder

Cyber Security Labs B.V. | Gooimeer 6-31 | 1411 DD Naarden | The Netherlands
+31 35 631 3253 (office)





More information about the users mailing list