Red Hat Bugzilla – Bug 68177
[HZ=1000] pppd can't call out with kernel > 2.4.18-5.47
Last modified: 2015-01-04 17:01:52 EST
Description of Problem:
With kernel rpm versions 2.4.18-5.55 and -5.61, pppd exits after the chat script
fails to establish an outgoing connection.
Version-Release number of selected component (if applicable):
2.4.18-5.55 and 2.4.18-5.61, so far.
Steps to Reproduce:
1. Install a kernel newer than 2.4.18-5.47 (tried with -5.55 and -5.61) and reboot.
2. Start pppd.
After the chat script sends ATDT<phone number> to the modem, nothing happens (no
connection, not even a click signifying an opened phone line). After the timeout
period (30 secs), pppd exits.
After sending the modem the ATDT<phone number> sequence, the modem should after
a while respond with a CONNECT answer and pppd should take over from there,
establishing the ppp0 interface.
The first two commands sent to the modem ('AT' and 'ATH0') do result in 'OK'
Adding an extra 'ATH0' command before the 'ATDT' sequence fails to produce the
Minicom has no problem at all communicating with the modem or calling out.
It would be interesting to see if the i586 kernels DO work. If they do, well,
then I know what to look for (just not quite yet where to look)
Yup, kernel-2.4.18-5.61.i586.rpm doesn't have the bug. I'm glad I didn't try
that for nothing (took an hour to download). Now do you know what the problem is?
The i686 kernels have HZ (the internal kernel clock) set to 1000 while the i586
kernels (and the 2.4 kernels form kernel.org) have it set to 100. We do this
because it improves "interactive feel" and it should be fine (in theory ;)
because other architectures have different HZ already (Alpha has 1024 for example).
It seems something in the ppp path doesn't take HZ != 100 into account;