[PATCH] port-probe: make sure stored task pointer is set to NULL before completing

Carlo Lobrano c.lobrano at gmail.com
Mon Apr 11 14:56:47 UTC 2016


Hi Daniele,

it looks like the last commit introduced a some kind of problem. HE910
initialization ends with error

> Modem couldn't be initialized: couldn't load current capabilities: Failed
to determine modem capabilities

Here's the pastebin link of the logs of this test,

> http://pastebin.com/h5PkSb92

while the following's the logs of a good run made with version
8a386218690aeff7e2c923a14f91da7bbc046ed2 (HEAD~1)

> http://pastebin.com/0fqrW52k

Apparently, the parser mm-broadband-modem.c:parse_caps_gcap isn't receiving
the reply from the serial device (the last line is a debug log I added,
which prints out the content of the "response" that the function is
parsing).

<debug> [1460381746.474901] [mm-port-serial-at.c:459] debug_log():
(ttyACM0): --> 'AT+GCAP<CR>'
<debug> [1460381746.521723] [mm-port-serial-at.c:459] debug_log():
(ttyACM0): <-- '<CR><LF>'
<debug> [1460381746.550323] [mm-port-serial-at.c:459] debug_log():
(ttyACM0): <-- '+GCAP: +CGSM,+DS,+FCLASS,+MS,+ES<CR><LF><CR><LF>OK<CR><LF>'
<debug> [1460381746.583914] [mm-broadband-modem.c:448] parse_caps_gcap():
response is ''

On LE910 SV V2 the behavior's the same.

Carlo



On Mon, 11 Apr 2016 at 15:52 Daniele Palmas <dnlplm at gmail.com> wrote:

> Hi Carlo,
>
> 2016-04-11 10:55 GMT+02:00 Daniele Palmas <dnlplm at gmail.com>:
> > Hi Aleksander,
> >
> > 2016-04-08 17:14 GMT+02:00 Aleksander Morgado <aleksander at aleksander.es
> >:
> >> On Fri, Apr 8, 2016 at 4:55 PM, Daniele Palmas <dnlplm at gmail.com>
> wrote:
> >>> 2016-04-08 16:42 GMT+02:00 Aleksander Morgado <
> aleksander at aleksander.es>:
> >>>> When we were completing tasks in idle, the logic was like this:
> >>>>
> >>>>  * Schedule task completion in idle
> >>>>  * self->priv->task = NULL
> >>>>  * (idle) Task completion callback called
> >>>>
> >>>> This meant that the self->priv->task was always set to NULL before the
> >>>> completion callback was called, which is what we wanted as a new task
> may be
> >>>> scheduled in the callback itself.
> >>>>
> >>>> Now, without completing in idle, we were wrongly doing:
> >>>>
> >>>>  * Task completion callback called
> >>>>  * self->priv->task = NULL
> >>>>
> >>>> This commit fixes the logic by making sure self->priv->task = NULL
> before any
> >>>> task completion.
> >>>> ---
> >>>>
> >>>> Daniele, can you validate that this patch fixes your issue?
> >>>>
> >>>
> >>> According to a quick test I did, it seems to fix the issue on LE910.
> >>
> >> I'll get the patch merged to git master, and if your tests on Monday
> >> go well, I'll release a new rc with this fix.
> >>
> >
> > I confirm that the issue I was seeing has been fixed by your patch.
> > Thanks again!
> >
>
> Can you please also test with HE910 and LE910 V2?
>
> Thanks,
> Daniele
>
> > Regards,
> > Daniele
> >
> >> --
> >> Aleksander
> >> https://aleksander.es
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/modemmanager-devel/attachments/20160411/8a6350d7/attachment.html>


More information about the ModemManager-devel mailing list