[Feisty & Gutsy Tribe] sl-modem module doesn't compile

Bug #103072 reported by bleuvoss
26
Affects Status Importance Assigned to Milestone
sl-modem (Baltix)
Undecided
Unassigned
sl-modem (Ubuntu)
Medium
Rolf Leggewie
Declined for Gutsy by Henrik Nilsen Omma
Nominated for Hardy by Marco Cimmino
Nominated for Intrepid by Stephan Wienczny

Bug Description

sl-modem module doesn't compile (with module-assistant) on feisty and Gutsy. Package from debian sid compiles ok.
Other bugs reports with the same (I think) error : bug #92777, bug #103705

===================================================
Modem: SGS Thomson Microelectronics|56k SoftModem [Communications] (vendor:0483 device:7554)

When I plugin it, nothing happens: no /dev/slusb0 created, no /dev/ttySL0 created, nothing. On edgy I was able to run this modem using debian debs for sl-modem and editing
 - /etc/default/sl-modem-daemon. Editing:
SLMODEMD_DEVICE=slusb0
SLMODEMD_COUNTRY=SPAIN

 - /etc/modprobe.d/sl-modem-daemon.modutils. Adding:
install slusb modprobe --ignore-install ungrab-winmodem ; modprobe --ignore-install slusb; test -e /dev/slusb0 || (/bin/mknod -m 660 /dev/slusb0 c 243 0 2>/dev/null && chgrp dialout /dev/slusb0)

 - /etc/udev/sl-modem-daemon.rules. Adding:
BUS=="usb", SYSFS{idVendor}=="0483", SYSFS{idProduct}=="7554", GROUP="dialout", ACTION=="add", RUN+="/etc/init.d/slmodem-usb restart"

 - And, evidently, creating my own /etc/init.d/slmodem-usb (borrowed from Debian):
#!/bin/sh
#
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
test -x /usr/sbin/slmodemd || exit 0

start() {
/sbin/modprobe slusb
if ! [ -e /dev/slusb0 ]; then
mknod /dev/slusb0 c 243 0
fi
echo -n "Starting SmartLink Modem driver for: slusb0"
/sbin/start-stop-daemon --start --pidfile /var/run/slmodemd.pid
--exec /usr/sbin/slmodemd --make-pidfile --background --quiet -- -c SPAIN /dev/slusb0
RETVAL=$?
if [ "$RETVAL" = 0 ] ; then
echo "Creating /dev/modem symlink, pointing to: /dev/ttySL0."
ln -sf /dev/ttySL0 /dev/modem
fi
}

stop() {
echo -n "Shutting down SmartLink Modem driver normally"
RETVAL=0
if [ "`pidof slmodemd`" ] ; then
if /sbin/start-stop-daemon --stop --quiet --pidfile
/var/run/slmodemd.pid --exec /usr/sbin/slmodemd --retry 1 ; then
echo .
else
echo " probably failed."
echo "Trying it the hard way (send SIGKILL all slmodemd
processes): "
/usr/bin/killall -KILL slmodemd || RETVAL=1
fi
else
echo " ... no slmodemd daemon running."
fi
if [ "$RETVAL" = 0 ] ; then
rm -f "/var/run/slmodemd.pid"
rm -f /dev/modem
rm -f /dev/slusb0
echo -n "Unloading modem driver from kernel ... "
msg="none found."
if grep -l -q slusb /proc/modules ; then
/sbin/modprobe -r slusb 2>/dev/null && msg="slusb." || msg="failed."
fi
echo $msg
fi
}

status() {
echo -n "Status of SmartLink modem daemon: "
if [ ! -r "/var/run/slmodemd.pid" ]; then
echo "slmodemd is not running."
exit 3
fi
if read pid < "/var/run/slmodemd.pid" && ps -p "$pid" > /dev/null 2>&1; then
echo "slmodemd is running."
exit 0
else
echo "slmodemd is not running but /var/run/slmodemd.pid exists."
exit 1
fi
}

# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
status
;;
*)
echo "Usage: /etc/init.d/slmodem-usb {start|stop|restart|status}"
exit 1
esac
===================================================

But with feisty nothing works.

If I try "sudo module-assistant auto-install sl-modem" (from https://help.ubuntu.com/community/DialupModemHowto/Smartlink) I get this error:
make[2]: se ingresa al directorio `/usr/src/modules/sl-modem/drivers'
gcc-4.1 -I/lib/modules/2.6.20-13-generic/build/include -o kernel-ver
kernel-ver.c
kernel-ver.c: En la función ‘main’:
kernel-ver.c:11: error: ‘UTS_RELEASE’ no se declaró aquí (primer uso en esta función)
kernel-ver.c:11: error: (Cada identificador no declarado solamente se reporta una vez
kernel-ver.c:11: error: ara cada funcion en la que aparece.)
make[2]: *** [kernel-ver] Error 1
make[2]: se sale del directorio `/usr/src/modules/sl-modem/drivers'
make[1]: *** [binary-modules] Error 2
make[1]: se sale del directorio `/usr/src/modules/sl-modem'
make: *** [kdist_build] Error 2

In Edgy I made module-assistant serveral times and I didn't get errors, so it's possible that sl-modem and kernel 2.6.20 aren't compatible?

Thanks and sorry my poor English

Revision history for this message
bleuvoss (bleuvoss-deactivatedaccount) wrote :

Maybe dupe (see bug report 92777)

Revision history for this message
Izak Burger (isburger) wrote :

The error you're getting is because the source for the module is for kernel version 2.6.18 and later. It happens because UTS_RELEASE was moved to a different header in newer kernels. Apply the attached patch to make it work with kernels before 2.6.18 (tested with 2.6.17). The patch simply avoids #including utsrelease.h if UTS_RELEASE was defined in version.h.

Revision history for this message
Izak Burger (isburger) wrote :

It seems my previous note is wrong. Your problem seems to be exactly the reverse, your kernel is newer than the sl-modem sour ce you're using. To fix it, you could either get the latest version from packages.debian.org and build it, or just #include utsrelease.h right below version.h in the same file.

Sorry about that, I don't do Spanish, only Englishm Afrikaans and a bit of german... so when I saw UTS_RELEASE I thought you were having the same problem as I was.

Revision history for this message
Mirsal Ennaime (mirsal-ennaime) wrote :

I can confirm this bug.
It doesn't build against a 2.6.19 or newer kernel source tree,

UTS_VERSION has been removed and linux/config.h has been renamed linux/autoconf.h

Revision history for this message
NoWhereMan (e.vacchi) (uncommonnonsense) wrote :

confirming. unfortunately suggested changes did not work

Changed in sl-modem:
status: New → Confirmed
Revision history for this message
Motin (motin) wrote :

I put together a recipe of how to work around this on https://help.ubuntu.com/community/DialupModemHowto/Smartlink, section named "Feisty 7.04 Special Instructions"

Revision history for this message
wodz (wodz) wrote :

Special instruction doesn't work for me but it putted me on the right track. m-a seems to unpack source tarball everytime before compilation so You have to prepare tarball after updating files in /usr/src/modules/sl-modem and moreover You have to comment out line #include <linux/config.h> in /usr/src/modules/sl-modem/ungrab-winmodem/ungrab-winmodem.c (of course after updating driver and before preparation of tarball).

Revision history for this message
Motin (motin) wrote :

> wodz said:
> You have to comment out line #include <linux/config.h> in /usr/src/modules/sl-modem/ungrab-winmodem/ungrab-winmodem.c

This instruction found in the mentioned "Special instructions" should make modifying ungrab-winmodem.c unnecessary:
sudo touch /usr/src/linux-headers-`uname -r`/linux/config.h # Compile-fix*

Feel free to update the special Feisty instructions with appropriate corrections if necessary.

Revision history for this message
bleuvoss (bleuvoss-deactivatedaccount) wrote : [Gutsy Tribe 5] sl-modem doesn't work.

Tested on Gutsy [Linux kmain 2.6.22-11-generic #1 SMP Fri Sep 7 05:07:05 GMT 2007 i686 GNU/Linux] completaly updated and it has not been fixed: the same problem occurred when you try to do "sudo module-assistant auto-install sl-modem", so the module doesn't compile.
I'll try to follow the Motin's recipe on https://help.ubuntu.com/community/DialupModemHowto/Smartlink but:
- I think that this bug should be fixed without any manual workaround before Gutsy is out because, if you don't have a modem working, how could you go web and read the workaround?
- I have a PC with Debian Sid with 2.9.9d+e-pre2-10 version of sl-modem-* and it compiles with 2.6.22.x kernel, so how about update Gutsy version to Debian Sid one?

Revision history for this message
bleuvoss (bleuvoss-deactivatedaccount) wrote :

Just for try, I've downloaded and installed sl-modem-daemon_2.9.9d+e-pre2-10_i386.deb and sl-modem-source_2.9.9d+e-pre2-10_i386.deb, executed module-assistant and depmod -a and finally I have the sl-modem modules for Gutsy 2.6.22 kernel, so please, update sl-modem packages in order to avoid manual workarounds

Revision history for this message
bleuvoss (bleuvoss-deactivatedaccount) wrote :

Tried new version 2.9.10+2.9.9d+e-pre2-5ubuntu3 with no luck: the module doesn't compile under 2.6.22-12-generic kernel. Still the same UTS_RELEASE error

description: updated
description: updated
Revision history for this message
bleuvoss (bleuvoss-deactivatedaccount) wrote : Importance?

Why is this bug confirmed but it doesn't have an importance decided or assigned to anyone? Gutsy is almost here and this bug report is confirmed since pre-Feisty release

Revision history for this message
NoWhereMan (e.vacchi) (uncommonnonsense) wrote :

@Th3n3k: because no dev has been assigned to this bug, yet; maybe somebody might join #ubuntu+1 on irc.freenode.org to tell some dev to have a look?

Revision history for this message
bleuvoss (bleuvoss-deactivatedaccount) wrote :

Still the same problem with 2.9.10+2.9.9d+e-pre2-5ubuntu4 version

@NoWhereMan: Thank you for the tip, although I don't know anything about IRC and my skills with real-time English conversation are near null, so I suppose I'll wait someone take a look at this bug by himself: sl-modem-* packages are regularly updated as I can see so they must have an active maintainer.

Revision history for this message
Marco Cimmino (cimmo) wrote :

confirming Th3n3k last comment for Gutsy :(

I marked bug #103705 as duplicate because obviously is and because reporter isn't so much detailed.
bug #92777 is for me invalid because talk about missing module that misses not for a bug but for a license issue imo.

Revision history for this message
Marco Cimmino (cimmo) wrote :

Anyway also the patch attached here seems autodated because applying it to the source module then go ahead but fails to compile after. So I think it is very important to update this source package because totally broken for Gutsy.

Revision history for this message
Marco Cimmino (cimmo) wrote :

I have tried also the debian one and it fails in the same way, who have compiled successfully under Gutsy can try again with updated Gutsy?

Revision history for this message
Dan Quade (danquade) wrote :

Still nothing... Is there ANY way to make this piece of crap work?

Revision history for this message
Marco Cimmino (cimmo) wrote :

package maintainer seems totally uninterested in this package

Revision history for this message
Henrik Nilsen Omma (henrik) wrote :

Modem support needs to improve generally. This dial-up spec for Hardy will focus on that: https://blueprints.launchpad.net/ubuntu/+spec/dial-up-support

This bug was nominated for Gutsy but does currently not qualify for a 7.10 stable release update (SRU) and the nomination is therefore declined.
According the the SRU policy, the fix should already be deployed and tested in the current development version before an update to the stable releases will be considered. With 7.10 now released, that policy applies to this bug. See: https://wiki.ubuntu.com/StableReleaseUpdates .
The bug is not being closed as work will continue on fixing it for the next release, Hardy Heron (8.04). If the state of this bug should change such that it qualifies for the SRU process, please contact the person who originally declined it and ask them to re-evaluate it. To help improve the state of this bug see: https://wiki.ubuntu.com/Bugs/HowToTriage .

Changed in sl-modem:
importance: Undecided → Medium
Revision history for this message
Vincenzo Ciancia (vincenzo-ml) wrote :

There is no sl-modem-source in hardy different from that of gutsy, I am leaving for christmas, and after 10 years of linux will have to switch back to windows to connect from my mother's home who has no DSL and no modem at all. This for me is very bad news. Having to switch back to windows is more injurying than anything else, since I have always been an active supporter and first-time-aid for newbies and so on.

When I'll be back, if somebody cares, I will be happy to cooperate as much as you please in solving this 8 months old regression. For now, it's just very bad news,

Revision history for this message
Marco Cimmino (cimmo) wrote :

Vincenzo:
1st: why your mom use an alpha version of Linux? :P
2nd: http://packages.ubuntu.com/hardy/misc/sl-modem-source (yes there is, have you enabled multiverse?)
3rd (alternative): grab the source from http://linmodems.technion.ac.il/packages/smartlink/ and compile by yourself

Revision history for this message
Vincenzo Ciancia (vincenzo-ml) wrote :

1) My mom has no modem at all by now :) So I have to use the one in my laptop

2) Ok agreed and sorry for confusion!

3) I did exactly the latter, and got "no such device" for /dev/slamr0, so that I suspect, my modem is not slmodem at all.

Happy new year to all ubuntu developers and thanks for your work.

Revision history for this message
Barteq (barteqpl) wrote :

This bug makes sl-modem-source doesn't compile under Hardy! This distro uses kernel newer that 2.6.18 from the very beginning so sl-modem-source should be patched not ot use UTS_RELEASE from old place.

Revision history for this message
Steve Langasek (vorlon) wrote :

I notice that the description of sl-modem-daemon says:

 It needs a kernel driver to access the hardware. This can be either
 recent ALSA (shipped with a newer kernel (>=2.6.4) with Alsa support
 and intel8x0m module) which is sufficient for basic operation and
 data/Internet connection, or the SmartLink kernel driver which is
 provided by separate packages which you can build using the source from
 the sl-modem-source package.

Is there a reason that the in-kernel driver solution isn't sufficient?

Use of alsa is documented in /usr/share/doc/sl-modem-source/README.gz. Can people confirm that the solution described there is sufficient?

Revision history for this message
DjMix (ilario-gottardello) wrote :

I can't confirm what I'm saying now, but some modem like external USB one's have nothing to do with alsa.. so they won't work at all. Also, I don't know if alsa support AMR modems.

Revision history for this message
berg (berg-foss) wrote :
Download full text (7.6 KiB)

I can confirme in hardy. the compilation from sources from http://linmodems.technion.ac.il/packages/smartlink/slmodem-2.9.11-20080417.tar.gz and http://linmodems.technion.ac.il/packages/smartlink/ungrab-winmodem-20080126.tar.gz works fine

This binaries should be put at restricted-modules

root@fran-desktop:/home/fran# dpkg -l module-assi*
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Installed/Config-f/Unpacked/Failed-cfg/Half-inst/t-aWait/T-pend
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Nome Versão Descrição
+++-================-================-================================================
ii module-assistant 0.10.11ubuntu1 tool to make module package creation easier
root@fran-desktop:/home/fran#
root@fran-desktop:/# dpkg -l sl-*
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Installed/Config-f/Unpacked/Failed-cfg/Half-inst/t-aWait/T-pend
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Nome Versão Descrição
+++-================-================-================================================
ii sl-modem-daemon 2.9.10+2.9.9d+e- SmartLink software modem daemon
un sl-modem-modules <nenhuma> (nenhuma descrição disponível)
ii sl-modem-source 2.9.10+2.9.9d+e- SmartLink software modem driver - module buildin
root@fran-desktop:/#

root@fran-desktop:/# module-assistant auto-install sl-modem -tv
Atualizando informações sobre sl-modem-source

Informações sobre 1 pacotes atualizadas
Getting source for kernel version: 2.6.24-16-generic
Cabeçalhos de kernel disponíveis em /usr/src/linux-headers-2.6.24-16-generic
Criando ligação simbólica ...
apt-get install build-essential
Lendo lista de pacotes... Pronto
Construindo árvore de dependências
Lendo estado da informação... Pronto
build-essential já é a versão mais nova.
0 pacotes atualizados, 0 pacotes novos instalados, 0 a serem removidos e 0 não atualizados.

Feito !
unpack
Extracting the package tarball, /usr/src/sl-modem.tar.bz2, please wait...
 action tar --bzip2 -x -f /usr/src/sl-modem.tar.bz2
 tar --bzip2 -x -f /usr/src/sl-modem.tar.bz2
"/usr/share/modass/packages/default.sh" build KVERS=2.6.24-16-generic KSRC=/usr/src/linux KDREV=2.6.24-16.30 kdist_image
 debian/rules kdist_clean
dh_testdir
dh_testroot
rm -f build-arch-stamp build-indep-stamp configure-stamp
# Add here commands to clean up after the build process.
/usr/bin/make clean SUPPORT_ALSA=1
make[1]: Entrando no diretório `/usr/src/modules/sl-modem'
/usr/bin/make -C modem clean && /usr/bin/make -C drivers clean && echo "done."
make[2]: Entrando no diretório `/usr/src/modules/sl-modem/modem'
rm -f slmodemd modem_test modem_main.o modem_cmdline.o modem_test.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 sysdep_common.o
rm -f *~ *.orig *.rej
make[2]: Saindo do diretório `/usr/src/modules/sl-modem/modem'
make[2]: Entrando no diretório `/usr/src/modules/sl-modem/drivers'
rm -f kernel-ver slamr.o slusb.o slamr.ko slusb.ko *st7554.o amrmo_init.o sysdep_amr.o *.mod.* .*....

Read more...

Revision history for this message
أحمد المحمودي (Ahmed El-Mahmoudy) (aelmahmoudy) wrote : New package available

Hello,

  I prepared a package for the latest upstream release of sl-modem.
  The package can be found on mentors.debian.net:
  - URL: http://mentors.debian.net/debian/pool/non-free/s/sl-modem
  - Source repository: deb-src http://mentors.debian.net/debian unstable main contrib non-free
  - dget http://mentors.debian.net/debian/pool/non-free/s/sl-modem/sl-modem_2.9.11~20080817-1.dsc

  Please test it and report if your bugs got solved and any suggestions you've got.

  Thanks.

--
 أحمد المحمودي (Ahmed El-Mahmoudy)
  Digital design engineer
  SySDSoft, Inc.
 GPG KeyID: 0x9DCA0B27 (@ subkeys.pgp.net)
 GPG Fingerprint: 087D 3767 8CAC 65B1 8F6C 156E D325 C3C8 9DCA 0B27

Revision history for this message
أحمد المحمودي (Ahmed El-Mahmoudy) (aelmahmoudy) wrote :

Hello,

  For those who need a binary package, I have uploaded the package to my
  PPA (https://launchpad.net/~aelmahmoudy/+archive), also fixed an FTBFS
  for Intrepid. Binary packages for Hardy and Intrepid are available.

--
 أحمد المحمودي (Ahmed El-Mahmoudy)
  Digital design engineer
  SySDSoft, Inc.
 GPG KeyID: 0x9DCA0B27 (@ subkeys.pgp.net)
 GPG Fingerprint: 087D 3767 8CAC 65B1 8F6C 156E D325 C3C8 9DCA 0B27

Revision history for this message
Ivan Ivanoff (spammeroff) wrote :

 Hello أحمد المحمودي!
You forgot to mention - we have to do this:
apt-get install quilt
And after all I get such info:
cp: impossible to stat for `drivers/slub.ko': No such file directory
Is it right?

Revision history for this message
Sergio Callegari (callegar) wrote :

Here, PPA package not working:

1) Missing dependency on quilt... and probably shouldn't need quilt anyway.
2) Shell errors ([: 1: Illegal number:)... maybe build scripts assume that sh is bash, when it is not
3) Possible incompatibility with recent gcc: /usr/src/modules/sl-modem/drivers/st7554.c:1332: error: implicit declaration of function ‘class_device_create’
4) Again: /usr/src/modules/sl-modem/drivers/st7554.c:1360: error: implicit declaration of function ‘class_device_destroy’

BTW, apart from the PPA that is a commendable effort, does it make any sense at all to keep sl-modem-source around in the multiverse repos, since it has been broken for a few distributions now? IMHO it is better not to ship something, than to insist in shipping it broken.

Revision history for this message
dansheen (dansheen) wrote :

Hello,

Have there been any changes to the sl-modem-source that make it compile on Intrepid with 2.6.27-11-generic?
Any solutions to the error:
/usr/src/modules/sl-modem/drivers/st7554.c:1360: error: implicit declaration of function ‘class_device_destroy’?

Thanks

Revision history for this message
jaduncan (jaduncan) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better. You reported this bug a while ago and there hasn't been any activity in it recently. We were wondering is this still an issue for you? Can you try with latest Ubuntu release? Thanks in advance.

Revision history for this message
Rolf Leggewie (r0lf) wrote :

assuming this is no longer a problem. sl-modem uses dkms now (which has given me more headaches than anything before it). I don't think this issue is valid anymore in Jaunty and later. Closing, but feel free to reopen with more informatin.

Changed in sl-modem (Ubuntu):
assignee: nobody → Rolf Leggewie (r0lf)
status: Confirmed → Invalid
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers