I use an internet provider that requires pptp, so I run the net.ppp0 at start. For an unknown reason (I was tampering with the kernel, I guess), ppp could not set up connection and kept on restarting endlessly. So I had to boot again in the interactive mode and specifically choose not to run net.ppp0, to be able to log in. When I tried adding the maxfail parameter, I got an error message saying that that usage of this parameter wasn't allowed. I found that the parameter is being set to 0 in the /lib/rcscripts/net.modules.d/pppd. I changed the file for myself, but wouldn't it make sense to put a more sensible number in there, or at least let the user choose it in /etc/conf.d/net?
no can do, for the reasons explained in bug 115346. I don't undestand how net.ppp0 failure to start could keep you from logging in, except of course the case when pppd_${iface} contains "updetach" and pppd enters in an endless loop of try-and-fail (for whatever reason). If you don't specify "updetach", the net.ppp0 will go in background the split second after the pppd daemon has been launched.
I did specify updetach (thanks for the hint), but I removed it now. I also understand the point with persist maxfail 0. Is it correct that the holdoff parameter will instruct pppd to wait before reconnecting even if the previous attempt wasn't successful?
'holdoff' will put pppd to sleep no matter whether previous connection was a successfull one or not. The holdoff main purpose is to delay modem reconnection. Without it, if the modem is quick enough, the PSTN line doesn't have a chance to go through off-hook -> on-hook -> off-hook process.