To: linux-support [blah] smlink.com Hi, I tried to manually unload the slamrkernel driver on 2.6.24.2 and I got a kernel crash (see the attachmemnt). Hope this helps you to fix the problem. I use Gentoo linux, so the "-r1" comes from that. I wonder whether the currently deprecated pci_find_device() which I have disabled in my kernel could have caused that. Please note the following in the compile output below: <quote> make[1]: Entering directory `/usr/src/linux-2.6.24.2' CC [M] /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/ungrab-winmodem-2.9.11-20080126/ungrab-winmodem.o /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/ungrab-winmodem-2.9.11-20080126/ungrab-winmodem.c: In function ‘softmodem_release_init’: /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/ungrab-winmodem-2.9.11-20080126/ungrab-winmodem.c:83: warning: ‘pci_find_device’ is deprecated (declared at include/linux/pci.h:492) </quote> Please let me know what do you think. many thanks, Martin # emerge slmodem Calculating dependencies... done! >>> Verifying ebuild Manifests... >>> Emerging (1 of 1) net-dialup/slmodem-2.9.11_pre20080126-r1 to / * slmodem-2.9.11-20080126.tar.gz RMD160 SHA1 SHA256 size ;-) ... [ ok ] * ungrab-winmodem-2.9.11-20080126.tar.gz RMD160 SHA1 SHA256 size ;-) ... [ ok ] * checking ebuild checksums ;-) ... [ ok ] * checking auxfile checksums ;-) ... [ ok ] * checking miscfile checksums ;-) ... [ ok ] * checking slmodem-2.9.11-20080126.tar.gz ;-) ... [ ok ] * checking ungrab-winmodem-2.9.11-20080126.tar.gz ;-) ... [ ok ] * Determining the location of the kernel source code * Found kernel source directory: * /usr/src/linux * Found kernel object directory: * /lib/modules/2.6.24.2/build * Found sources for kernel version: * 2.6.24.2 * Checking for suitable kernel configuration options... [ ok ] >>> Unpacking source... >>> Unpacking slmodem-2.9.11-20080126.tar.gz to /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work >>> Unpacking ungrab-winmodem-2.9.11-20080126.tar.gz to /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work * Converting ungrab-winmodem-2.9.11-20080126/Makefile to use M= instead of SUBDIRS= ... [ ok ] * Applying slmodem-ungrab-winmodem-hp500.patch ... [ ok ] * Applying slmodem-2.9.11-makefile.patch ... [ ok ] * Applying slmodem-2.9.11-kernel-2.6.24.patch ... [ ok ] * Applying slmodem-2.9.11-alsa-period-size.patch ... [ ok ] * Converting Makefile to use M= instead of SUBDIRS= ... [ ok ] >>> Source unpacked. >>> Compiling source in /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/slmodem-2.9.11-20080126 ... make -C modem all make[1]: Entering directory `/var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/slmodem-2.9.11-20080126/modem' rebuild profile... cc -O2 -march=pentium4 -mmmx -msse -msse2 -fomit-frame-pointer -pipe -Wall -finline -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1 -o modem_main.o -c modem_main.c modem_main.c: In function ‘setup_stream’: modem_main.c:429: warning: ‘snd_pcm_sw_params_set_xfer_align’ is deprecated (declared at /usr/include/alsa/pcm.h:1104) cc -O2 -march=pentium4 -mmmx -msse -msse2 -fomit-frame-pointer -pipe -Wall -finline -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1 -o modem_cmdline.o -c modem_cmdline.c cc -O2 -march=pentium4 -mmmx -msse -msse2 -fomit-frame-pointer -pipe -Wall -finline -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1 -o modem.o -c modem.c cc -O2 -march=pentium4 -mmmx -msse -msse2 -fomit-frame-pointer -pipe -Wall -finline -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1 -o modem_datafile.o -c modem_datafile.c cc -O2 -march=pentium4 -mmmx -msse -msse2 -fomit-frame-pointer -pipe -Wall -finline -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1 -o modem_at.o -c modem_at.c cc -O2 -march=pentium4 -mmmx -msse -msse2 -fomit-frame-pointer -pipe -Wall -finline -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1 -o modem_timer.o -c modem_timer.c cc -O2 -march=pentium4 -mmmx -msse -msse2 -fomit-frame-pointer -pipe -Wall -finline -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1 -o modem_pack.o -c modem_pack.c modem_pack.c: In function ‘modem_async_get_bits’: modem_pack.c:100: warning: pointer targets in passing argument 2 of ‘m->get_chars’ differ in signedness modem_pack.c: In function ‘modem_async_put_bits’: modem_pack.c:148: warning: pointer targets in passing argument 2 of ‘m->put_chars’ differ in signedness cc -O2 -march=pentium4 -mmmx -msse -msse2 -fomit-frame-pointer -pipe -Wall -finline -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1 -o modem_ec.o -c modem_ec.c modem_ec.c: In function ‘tx_info’: modem_ec.c:723: warning: pointer targets in passing argument 2 of ‘l->modem->get_chars’ differ in signedness modem_ec.c: In function ‘push_rest_data’: modem_ec.c:811: warning: pointer targets in passing argument 2 of ‘l->modem->put_chars’ differ in signedness modem_ec.c: In function ‘rx_info’: modem_ec.c:860: warning: pointer targets in passing argument 2 of ‘l->modem->put_chars’ differ in signedness cc -O2 -march=pentium4 -mmmx -msse -msse2 -fomit-frame-pointer -pipe -Wall -finline -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1 -o modem_comp.o -c modem_comp.c cc -O2 -march=pentium4 -mmmx -msse -msse2 -fomit-frame-pointer -pipe -Wall -finline -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1 -o modem_param.o -c modem_param.c cc -O2 -march=pentium4 -mmmx -msse -msse2 -fomit-frame-pointer -pipe -Wall -finline -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1 -o modem_debug.o -c modem_debug.c cc -O2 -march=pentium4 -mmmx -msse -msse2 -fomit-frame-pointer -pipe -Wall -finline -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1 -o homolog_data.o -c homolog_data.c cc -O2 -march=pentium4 -mmmx -msse -msse2 -fomit-frame-pointer -pipe -Wall -finline -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1 -o dp_sinus.o -c dp_sinus.c cc -O2 -march=pentium4 -mmmx -msse -msse2 -fomit-frame-pointer -pipe -Wall -finline -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1 -o dp_dummy.o -c dp_dummy.c cc -O2 -march=pentium4 -mmmx -msse -msse2 -fomit-frame-pointer -pipe -Wall -finline -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1 -o sysdep_common.o -c sysdep_common.c cc -o slmodemd modem_main.o modem_cmdline.o modem.o modem_datafile.o modem_at.o modem_timer.o modem_pack.o modem_ec.o modem_comp.o modem_param.o modem_debug.o homolog_data.o dp_sinus.o dp_dummy.o dsplibs.o sysdep_common.o -lasound cc -O2 -march=pentium4 -mmmx -msse -msse2 -fomit-frame-pointer -pipe -Wall -finline -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1 -o modem_test.o -c modem_test.c cc -o modem_test modem_test.o modem_cmdline.o modem.o modem_datafile.o modem_at.o modem_timer.o modem_pack.o modem_ec.o modem_comp.o modem_param.o modem_debug.o homolog_data.o dp_sinus.o dp_dummy.o dsplibs.o sysdep_common.o -lasound make[1]: Leaving directory `/var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/slmodem-2.9.11-20080126/modem' * Preparing ungrab-winmodem module make modules -C /lib/modules/2.6.24.2/build M=/var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/ungrab-winmodem-2.9.11-20080126 make[1]: Entering directory `/usr/src/linux-2.6.24.2' CC [M] /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/ungrab-winmodem-2.9.11-20080126/ungrab-winmodem.o /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/ungrab-winmodem-2.9.11-20080126/ungrab-winmodem.c: In function ‘softmodem_release_init’: /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/ungrab-winmodem-2.9.11-20080126/ungrab-winmodem.c:83: warning: ‘pci_find_device’ is deprecated (declared at include/linux/pci.h:492) Building modules, stage 2. MODPOST 1 modules CC /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/ungrab-winmodem-2.9.11-20080126/ungrab-winmodem.mod.o LD [M] /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/ungrab-winmodem-2.9.11-20080126/ungrab-winmodem.ko make[1]: Leaving directory `/usr/src/linux-2.6.24.2' * Preparing slamr module i686-pc-linux-gnu-gcc -I/lib/modules/2.6.24.2/build/include -o kernel-ver kernel-ver.c make all KERNEL_VER=2.6.24.2 make[1]: Entering directory `/var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/slmodem-2.9.11-20080126/drivers' make modules -C /lib/modules/2.6.24.2/build M=/var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/slmodem-2.9.11-20080126/drivers make[2]: Entering directory `/usr/src/linux-2.6.24.2' CC [M] /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/slmodem-2.9.11-20080126/drivers/amrmo_init.o /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/slmodem-2.9.11-20080126/drivers/amrmo_init.c: In function ‘amrmo_init’: /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/slmodem-2.9.11-20080126/drivers/amrmo_init.c:756: warning: ‘pci_find_device’ is deprecated (declared at include/linux/pci.h:492) CC [M] /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/slmodem-2.9.11-20080126/drivers/sysdep_amr.o CC [M] /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/slmodem-2.9.11-20080126/drivers/st7554.o LD [M] /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/slmodem-2.9.11-20080126/drivers/slamr.o LD [M] /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/slmodem-2.9.11-20080126/drivers/slusb.o Building modules, stage 2. MODPOST 2 modules WARNING: could not find /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/slmodem-2.9.11-20080126/drivers/.amrlibs.o.cmd for /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/slmodem-2.9.11-20080126/drivers/amrlibs.o WARNING: modpost: GPL-incompatible module slusb.ko uses future GPL-only symbol 'usb_deregister' WARNING: modpost: GPL-incompatible module slusb.ko uses future GPL-only symbol 'usb_register_driver' CC /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/slmodem-2.9.11-20080126/drivers/slamr.mod.o LD [M] /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/slmodem-2.9.11-20080126/drivers/slamr.ko CC /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/slmodem-2.9.11-20080126/drivers/slusb.mod.o LD [M] /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/slmodem-2.9.11-20080126/drivers/slusb.ko make[2]: Leaving directory `/usr/src/linux-2.6.24.2' make[1]: Leaving directory `/var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080126-r1/work/slmodem-2.9.11-20080126/drivers' >>> Source compiled.
<linux-support [blah] smlink.com>: 208.70.128.213 does not like recipient. Remote host said: 550 Email Address was not found lvl2 Giving up on 208.70.128.213. So, I have not reported this to upstream. Someone, please do so. The README distributed with the package is outdated.
So, where's some info about the kernel crash? You posted emerge log instead. Also emerge --info is missing.
Created attachment 145255 [details] dmesg output
Sorry, I forgot that somehow. ;-)
$ emerge --info Portage 2.1.4.4 (default-linux/x86/2007.0/desktop, gcc-4.2.3, glibc-2.7-r1, 2.6.24.2 i686) ================================================================= System uname: 2.6.24.2 i686 Mobile Intel(R) Pentium(R) 4 - M CPU 1.80GHz Timestamp of tree: Thu, 28 Feb 2008 14:00:01 +0000 app-shells/bash: 3.2_p33 dev-java/java-config: 1.3.7, 2.1.4 dev-lang/python: 2.3.6-r4, 2.4.4-r9, 2.5.1-r5 dev-python/pycrypto: 2.0.1-r6 sys-apps/baselayout: 1.12.11.1 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.61-r1 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1 sys-devel/binutils: 2.18-r1 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.26 virtual/os-headers: 2.6.24 ACCEPT_KEYWORDS="x86 ~x86" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=pentium4 -mmmx -msse -msse2 -fomit-frame-pointer -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /var/bind /var/qmail/alias /var/qmail/control /var/spool/torque /var/vpopmail/etc" CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-O2 -march=pentium4 -mmmx -msse -msse2 -fomit-frame-pointer -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" LINGUAS="en cs cz" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="7zip R X Xaw3d a52 aac aalib ace acl acpi alsa amr amrnb amrwb apache2 audacious audiofile bash-completion bcmath berkdb bitmap-fonts blas boost bzip2 cairo cblas cddb cdparanoia cdr clamav cli colordiff compress cpio cracklib crypt cscope css ctype cups curl curlwrappers cxx dbus dga dia directfb djbfft dri dts dv dvb dvd dvdr dvdread eds emacs emboss emf enblend encode enscript exif expat fam fame fat fbcon ffmpeg fftw firefox flac flash foomaticdb fortran fpx ftp gcj gd gdbm ggi gif gimp gimpprint glibc-compat20 glibc-omitfp glitz glut gmp gnuplot gnutls gpgme gphoto2 gpm graphviz gs gsl gstreamer gtk gtkhtml hal hdf hdf5 i8x0 icc iconv icu id3 ieee1394 ifc imagemagick imlib inifile innodb isdnlog ithreads jack java javascript jbig jikes jpeg jpeg2k kdtree kerberos lame lapack lcms leim libcaca libedit libwww live lzo lzw mad maildir matroska mhash midi mikmod mime ming mjpeg mmap mmx mng mod_python modperl modplug motif mozilla moznoirc mp2 mp3 mp4 mpeg mpi mpi_njtree mplayer mudflap mule musepack mxdatetime mysql mysqli ncurses netcdf netpbm network nls nntp nptl nptlonly nsplugin ntfs numeric ogg opengl openmp oss pam pango pcmcia pcntl pcre pdf perl plotutils plugin png pnm postproc postscript ppds pppd procmail pymol python qt3 qt3support qt4 quicktime rar raw readline real recode reflection reiserfs rpm rtc samba sasl scanner scp seamonkey server session sftp sift slp smime sndfile soap sockets spell spl sqlite srt sse sse2 ssl subtitles subversion svg svgz sysfs sysvipc t1lib tcl tcpd tetex theora threads tidy tiff tk transcode truetype truetype-fonts type1-fonts unicode urandom usb userlocales uuencode v4l v4l2 vcd vim-syntax vim-with-x vorbis wifi win32codecs wmf wxwindows x264 x86 xanim xcb xcf xfs xft xinetd xml xorg xpm xprint xsl xslt xv xvid xvmc yv12 zip zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config mem_cache mime mime_magic rewrite setenvif speling status unique_id userdir usertrack vhost_alias negotiation" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en cs cz" USERLAND="GNU" VIDEO_CARDS="radeon" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
So, does it work w/ CONFIG_PCI_LEGACY enabled? You really shouldn't disable something in kernel just because someone thought marking it as 'legacy' is a wonderful idea.
Created attachment 145257 [details] /proc/config Actually, I do have it enabled though I thought I don't. ;-) CONFIG_PCI_LEGACY=y
Check if slmodem-2.9.11-20080401 fixed your problem.
Yes, it does not complain about pci_find_device() against 2.6.24.3. Thanks.
Question is, does your kernel still crashes when you unload slamr?
Created attachment 149611 [details] dmesg-2.6.24.3 It still crashes on 'rmmod slamr'.
Created attachment 154319 [details] slmodem-2.9.11_pre20080417-crash.txt 2.6.24.7 kernel-based crash with slmodem-2.9.11_pre20080417
Created attachment 154321 [details] slmodem-2.9.11_pre20080417-crash-rmmod.txt This happened on rmmod as well.
BTW: >>> Install slmodem-2.9.11_pre20080817 into /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080817/image/ category net-dialup * Installing ungrab-winmodem module * Installing slamr module >>> Completed installing slmodem-2.9.11_pre20080817 into /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080817/image/ >>> Installing net-dialup/slmodem-2.9.11_pre20080817 * Removing net-dialup/slmodem-2.9.11_pre20080417 from moduledb. * Updating module dependencies for 2.6.29-rc7 ... [ ok ] * Adding module to moduledb. * Reloading udev rules... ... /var/tmp/portage/net-dialup/slmodem-2.9.11_pre20080817/temp/environment: line 3009: udevcontrol: command not found [ !! ] * To avoid problems, slusb/slamr have been blacklisted in /etc/modprobe.d/slmodem * You must edit /etc/conf.d/slmodem for your configuration * To add slmodem to your startup - type : rc-update add slmodem default * * I hope you have already added alsa to your startup: * otherwise type: rc-update add alsasound boot * * If you need to use snd-intel8x0m from the kernel * compile it as a module and edit /etc/modules.d/alsa * to: "alias snd-card-(number) snd-intel8x0m" * * You need to be in the uucp AND dialout group to make calls as a user. * * If you see the following in dmesg: * slamr: device 10b9:5457 is grabbed by driver serial * you need to modprobe ungrab-winmodem before slamr
I cannot reproduce this crash. Maybe a decent cleanup is still necessary: # modprobe slamr WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/. WARNING: All config files need .conf: /etc/modprobe.d/ath_pci, it will be ignored in a future release. WARNING: All config files need .conf: /etc/modprobe.d/alsa, it will be ignored in a future release. WARNING: All config files need .conf: /etc/modprobe.d/slmodem, it will be ignored in a future release. #
Created attachment 195302 [details] modprobe.conf
In version slmodem-2.9.11_pre20090222-r1, I've fixed the modprobe warning about /etc/modprobe.d/slmodem file. Closed as FIXED... finally :)