Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 47519

Summary: pppd cannot find ppp as a module in kernel 2.6.x
Product: Gentoo Linux Reporter: Stefan Lesicnik <lists>
Component: Current packagesAssignee: Gentoo Dialup Developers <net-dialup>
Status: RESOLVED TEST-REQUEST    
Severity: normal CC: brian, craig.lawson
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Stefan Lesicnik 2004-04-11 09:59:48 UTC
pppd complains with this message.

odie linux # pppd
pppd: This system lacks kernel support for PPP.  This could be because
the PPP kernel module could not be loaded, or because PPP was not
included in the kernel configuration.  If PPP was included as a
module, try `/sbin/modprobe -v ppp'.  If that fails, check that
ppp.o exists in /lib/modules/`uname -r`/net.
See README.linux file in the ppp distribution for more details.

This is a cut from my current kernel .config file.

CONFIG_PPP=m
# CONFIG_PPP_MULTILINK is not set
CONFIG_PPP_FILTER=y
CONFIG_PPP_ASYNC=m
CONFIG_PPP_SYNC_TTY=m
CONFIG_PPP_DEFLATE=m
CONFIG_PPP_BSDCOMP=m
CONFIG_PPPOE=m


If i compile ppp into the kernel, this problem is resolved, but obviously not ideal.

Reproducible: Always
Steps to Reproduce:
1.pppd
2.
3.

Actual Results:  
pppd: This system lacks kernel support for PPP.  This could be because
the PPP kernel module could not be loaded, or because PPP was not
included in the kernel configuration.  If PPP was included as a
module, try `/sbin/modprobe -v ppp'.  If that fails, check that
ppp.o exists in /lib/modules/`uname -r`/net.
See README.linux file in the ppp distribution for more details.


Expected Results:  
pppd start and all the unreadable characters

Portage 2.0.50-r3 (default-x86-1.4, gcc-3.3.3, glibc-2.3.3_pre20040207-r0,
2.6.5-gentoo)
=================================================================
System uname: 2.6.5-gentoo i686 Intel(R) Pentium(R) 4 Mobile CPU 2.00GHz
Gentoo Base System version 1.4.6
distcc 2.13 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
Autoconf: sys-devel/autoconf-2.59-r3
Automake: sys-devel/automake-1.8.3
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config
/usr/kde/3.1/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config
/usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache sandbox"
GENTOO_MIRRORS="ftp://ftp.is.co.za/linux/distributions/gentoo
http://gentoo.oregonstate.edu http://www.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X aalib acl acpi alsa apache2 apm avi berkdb bonobo cdr crypt cups dga
distcc doc dvd encode esd fbcon foomaticdb gd gdbm gif gnome gphoto2 gpm gtk
gtk2 gtkhtml guile imlib ipv6 java jpeg libg++ libwww mad mbox mikmod mmx motif
mpeg ncurses nls oggvorbis opengl oss pam pcmcia pdflib perl php png postgres
ppds pwdb python qt quicktime readline samba sasl sdl slang spell sse ssl svga
tcltk tcpd truetype usb x86 xml xml2 xmms xv zlib"
Comment 1 Torsten Veller (RETIRED) gentoo-dev 2004-04-11 12:15:40 UTC
Hi,

does `/sbin/modprobe -v ppp` load the necessary modules?

Do you use module autoloading?
Can you insmod ppp_generic? Does /dev/ppp exist? 

"If you have ppp_generic as a module, and you are using devfsd (the
devfs daemon), you will need to add a line like this to your
/etc/devfsd.conf:
LOOKUP          ppp             MODLOAD"

Did you use ppp_generic module with 2.4? Did module autoloading work?
Comment 2 Stefan Lesicnik 2004-04-11 12:48:02 UTC
modprobe -v ppp
FATAL: Module ppp not found.

odie bin # ls -la /dev/ppp 
crw-r--r--  1 root root 108, 0 Apr 10 01:24 /dev/ppp

modprobe ppp_generic gives this in dmesg

PPP generic driver version 2.4.2
devfs_mk_dev: could not append to parent for ppp
failed to register PPP device (-17)

I added the line into devfsd.conf.  Seems to make no difference.
I guess the problem lies with the dmesg error. If i compile it into the kernel it works.

Comment 3 Heinrich Wendel (RETIRED) gentoo-dev 2004-04-11 17:55:26 UTC
have you done make modules_install ?
Comment 4 Stefan Lesicnik 2004-04-11 22:06:52 UTC
Yes


odie net # pwd
/lib/modules/2.6.5-gentoo/kernel/drivers/net
odie net # ls
3c59x.ko     dummy.ko  ppp_async.ko    ppp_generic.ko  pppoe.ko  slhc.ko     wireless
bsd_comp.ko  irda      ppp_deflate.ko  ppp_synctty.ko  pppox.ko  typhoon.ko
Comment 5 Torsten Veller (RETIRED) gentoo-dev 2004-04-11 23:55:25 UTC
Devfs is selected?

# grep DEVFS /usr/src/linux/.config                                                       CONFIG_DEVFS_FS=y                                                                       CONFIG_DEVFS_MOUNT=y                                                                    # CONFIG_DEVFS_DEBUG is not set

Can you try if it works with sys-kernel/development-sources?
Comment 6 Stefan Lesicnik 2004-04-12 00:20:19 UTC
odie lib # grep DEVFS /usr/src/linux/.config 
CONFIG_DEVFS_FS=y
CONFIG_DEVFS_MOUNT=y
# CONFIG_DEVFS_DEBUG is not set

Emerging development-sources. Will let u know.
Comment 7 Stefan Lesicnik 2004-04-12 02:22:15 UTC
Tried development-sources. Still exactly the same error.
Comment 8 Torsten Veller (RETIRED) gentoo-dev 2004-04-12 05:59:34 UTC
I don't know what you should do next. Sorry.

I found some pages referencing "devfs_mk_cdev" (note the c):

http://www.uwsg.iu.edu/hypermail/linux/kernel/0312.0/1053.html
"> Dec 4 16:45:29 dali kernel: devfs_mk_cdev: could not append to parent for snd/hwC0D0

check that /dev/snd is not a file or link or whatever. Remove it,
remove /lib/dev-state/snd and try again. If it persists (i.e. you
have non-directory /dev/snd appearing every time on boot) try
to find out why it is created. ALSA initscript in Mandrake creates
/dev/snd as link to /proc/whatever if it believes devfs is not present. It may be one possible reason."


http://lists.debian.org/debian-user/2004/debian-user-200401/msg01821.html
"> Something restores /dev from backing store during boot; this is wrong and long 
> obsolete. The right way to do it is to add RESTORE directive to devfsd.conf:

wonderful.  this was indeed the issue.  my debian unstable
machine had a /etc/devfsd/devices.d/ppp file which contained the
directives to have devfsd create it on boot.  once i removed
this file, and rebooted my 2.6.0 kernel with modular
ppp_generic, it all worked again."


Well, i don't know if this is helpful. I am still using a 2.4 kernel. devfs is obsoleted and udev is the new tool.
Comment 9 Craig Lawson 2004-04-12 20:51:43 UTC
I have the same problem with 2.6.4. Compiling all into the kernel gets me on the network (except for PPPoE, which I believe is supposed to excluded). Otherwise, I see the same problem as the reporter.

It all works fine for me with 2.4.25 as modules.

This forum thread mentions the same problem:
  http://forums.gentoo.org/viewtopic.php?t=155415

One more thing: when compiled as modules, I ran

  modprobe -v ppp_generic

just for the heck of it, because it's supposed to be a module. modprobe reported back that it could not install ppp_generic because it was already installed in the kernel. Yet lsmod did not show it. Could the kernel somehow be confused about whether ppp_generic is truly a module or a built-in?
Comment 10 Stefan Lesicnik 2004-04-12 22:45:13 UTC
I managed to solve the problem by commenting out the line

#RESTORE         /lib/dev-state

in /etc/devfsd.conf.

pppd now works correctly. I'm not sure why or what RESTORE /lib/dev-state but everything seems to work now.

I'm happy that the bug gets closed.

Thanks for you help tove.
Comment 11 Craig Lawson 2004-04-13 10:07:35 UTC
That's great news, except that fix won't work for me because I am using udev, not devfs. Anyone have an idea of how this bug works?
Comment 12 Craig Lawson 2004-04-15 00:40:22 UTC
I ran "make clean" and rebuilt my kernel and now everything works beautifully.

Could have been a wierd build order bug. Or it could have been because I copied my 2.4 .config file to the 2.6 tree before I read that I should not do that.
Comment 13 Heinrich Wendel (RETIRED) gentoo-dev 2004-04-26 03:31:49 UTC
fine, so we can close this one
Comment 14 Seemant Kulleen (RETIRED) gentoo-dev 2004-08-10 22:41:54 UTC
*** Bug 60023 has been marked as a duplicate of this bug. ***
Comment 15 Seemant Kulleen (RETIRED) gentoo-dev 2004-08-10 22:42:14 UTC
reopening at user request
Comment 16 Martin Akselsen 2004-08-13 05:58:42 UTC
Hi,

I had the same problem. The problem was that /dev/ppp already existed, try ll /dev/ppp , if its there do rm /dev/ppp and try running pppd again or doing modprobe, that did it for me.

Good luck
Comment 17 Heinrich Wendel (RETIRED) gentoo-dev 2004-09-27 03:34:07 UTC
brian: please try martin's solution