Ticket #1955 (closed defect: community)
pppd persist and holdoff does not work
| Reported by: | niccolo | Owned by: | Nytowl |
|---|---|---|---|
| Priority: | normal | Milestone: | Om2007.2 |
| Component: | Distro | Version: | |
| Severity: | normal | Keywords: | |
| Cc: | Blocked By: | ||
| Blocking: | Estimated Completion (week): | ||
| HasPatchForReview: | no | PatchReviewResult: | |
| Reproducible: | always |
Description
I configured my /etc/ppp/peers/provider with persist and holdoff 20 options, but it seems that the connection does not restart once failed.
The pppd process is running and idle on a select() call, but it does not execute the connect chatscript again.
Attachments
Change History
comment:1 Changed 5 years ago by john_lee
- Owner changed from openmoko-devel to julian_chu
- HasPatchForReview unset
- Component changed from unknown to Distro
comment:2 Changed 4 years ago by niccolo
I did forther testing and I strongly believe there is a bug in pppd. So I wrote a mail to Paul Mackerras and James Carlson (contacts in the README). This is the mail, just for the record.
I'm using pppd on the FreeRunner? phone, running the OpenMoko?
distribution. The problem is always reproducible and it is as
follow:
- start pppd with its chat script
- the chatscript fails for whatever (e.g. no GPRS signal)
- pppd waits for the "holdoff" time
- chatscript is NOT fired up again
- pppd stalls in an endless select()
this happens despite my configuration file which contains:
maxfail 0
holdoff 13
persist
If I SIGHUP pppd, it ends the select() and does a new chat
attempt.
Because I need an always-on connection on un unattended mobile
phone, you understand that this is very annoying.
Reading the source I suspec that the for() loop in main.c:494
does start chat only in the first run, not in the second.
The phone environment:
- pppd version 2.4.3-r4
- OpenMoko? 2008.12 (based on Angstrom armv4t)
- Linux om-gta02 2.6.24 #1 PREEMPT Wed Dec 17 02:13:29 CST 2008 armv4tl
I attach my configuration file and an strace of the pppd process.
Thank you very much for any hints.
