[asterisk-users] problems inserting dahdi modules using Debian Leni

Shaun Ruffell sruffell at digium.com
Wed Jan 5 01:19:22 CST 2011


On 1/5/11 12:46 AM, covici at ccs.covici.com wrote:
> Shaun Ruffell<sruffell at digium.com>  wrote:
>
>> On 1/4/11 9:26 PM, covici at ccs.covici.com wrote:
>>>
>>> Shaun Ruffell<sruffell at digium.com>   wrote:
>>>
>>>> On 01/04/2011 05:09 PM, covici at ccs.covici.com wrote:
>>>>> Hi.  I have a Debian Leni system  with asterisk-1.8.  I was trying to
>>>>> get meetme to work and it depends on dahdi, so I compiled dahdi-trunk
>>>>> and dahdi-tools-trunk, however, when trying to insert dahdi_dummy, it
>>>>> complained about symbol crc_ccitt_table, although the module was
>>>>> actually there in the kernel tree.  So, I took the Debian source, and I
>>>>> had the config and I did make Bzimage, make modules and make
>>>>> modules_install, but dahdi_dummy still complains about the same symbol,
>>>>> it says no version for that symbol, so I am confused as to how to
>>>>> resolve this so I can modprobe dahdi_dummy properly.
>>>>>
>>>>> Any ideas would be appreciated.
>>>>>
>>>>
>>>> First off, I recommend using dahdi-linux 2.4.0 *without* compiling
>>>> dahdi_dummy.  A dummy span is no longer needed for DAHDI to provide a
>>>> timing source to asterisk.
>>>>
>>>> But you'll still need crc_ccitt module for dahdi to load, so that
>>>> doesn't fix the problem as you describe here.
>>>>
>>>> If you rebuilt your kernel (which probably wasn't necessary...) you need
>>>> to reboot into the new kernel, then rebuild DAHDI against your running
>>>> kernel in order to load.  Sounds like you have built DAHDI against one
>>>> version of the kernel and you're running against another one.
>>>>
>>>> Also...make sure you're using "modprobe" and not "insmod" to load the
>>>> driver...so that crc_ccitt will automatically be loaded as a dependency.
>>>>
>>>> For example you can see it automatically loaded here (and how
>>>> dahdi_dummy isn't needed for timing).
>>>>
>>>> ]# lsmod | grep crc_ccitt
>>>> ]# dahdi_test -c 1
>>>> Unable to open dahdi interface: No such file or directory
>>>> ]# modprobe dahdi
>>>> ]# lsmod | grep crc_ccitt
>>>> crc_ccitt              10240  1 dahdi
>>>> ]# dahdi_test -c 5
>>>> Opened pseudo dahdi interface, measuring accuracy...
>>>> 99.998% 99.981% 99.990% 99.990% 99.991%
>>>> --- Results after 5 passes ---
>>>> Best: 99.998 -- Worst: 99.981 -- Average: 99.990100, Difference: 99.990101
>>>> ]#
>>>
>>> I did rebuild the kernel, it has the same version and the same config as
>>> the old one and it did build a crc_ccitt module, and I even rebooted the
>>> system with the new modules, but no joy at all.  Igot the same results
>>> whether I rebuilt the kernel or not, so this is what is confusing to me.
>>>
>>
>> What you get from the following commands:
>>
>> ]# lsmod | grep crc_ccitt
> I had to modprobe it, but I got:
> crc_ccitt               2080  0
>
>
>> ]# modinfo crc_ccitt
> filename:       /lib/modules/2.6.26-2-686/kernel/lib/crc-ccitt.ko
> license:        GPL
> description:    CRC-CCITT calculations
> depends:
> vermagic:       2.6.26-2-686 SMP mod_unload modversions 686
>
>> ]# uname -a
> Linux eirasterisk 2.6.26-2-686 #3 SMP Tue Jan 4 15:29:02 EST 2011 i686
> GNU/Linux
>
>> ]# cat /proc/kallsyms | grep crc_ccitt
> 00000000 a crc-ccitt.c  [crc_ccitt]
> f8c6d284 ? __mod_license69      [crc_ccitt]
> f8c6d290 ? __mod_description68  [crc_ccitt]
> f8c72250 r __ksymtab_crc_ccitt  [crc_ccitt]
> f8c72268 r __kstrtab_crc_ccitt  [crc_ccitt]
> f8c72260 r __kcrctab_crc_ccitt  [crc_ccitt]
> f8c72258 r __ksymtab_crc_ccitt_table    [crc_ccitt]
> f8c72272 r __kstrtab_crc_ccitt_table    [crc_ccitt]
> f8c72264 r __kcrctab_crc_ccitt_table    [crc_ccitt]
> 00000000 a crc-ccitt.mod.c      [crc_ccitt]
> f8c6d2b4 ? __module_depends     [crc_ccitt]
> f8c6d32c ? ____versions [crc_ccitt]
> f8c6d2c0 ? __mod_vermagic5      [crc_ccitt]
> f8c725e0 d __this_module        [crc_ccitt]
> 3771b461 a __crc_crc_ccitt      [crc_ccitt]
> f8c72000 T crc_ccitt    [crc_ccitt]
> 75811312 a __crc_crc_ccitt_table        [crc_ccitt]
> f8c72050 R crc_ccitt_table      [crc_ccitt]
>
>> ]# modinfo dahdi
> filename:       /lib/modules/2.6.26-2-686/dahdi/dahdi.ko
> version:        SVN-trunk-r9614
> alias:          dahdi_dummy
> license:        GPL v2
> description:    DAHDI Telephony Interface
> author:         Mark Spencer<markster at digium.com>
> srcversion:     A63E42F5ADDDE39777BCC24
> depends:
> vermagic:       2.6.26-2-686 SMP mod_unload modversions 686
> parm:           debug:Sets debugging verbosity as a bitfield, to see
> general debugging set this to 1. To see RBS debugging set this to 32
> (int)
> parm:           deftaps:int
> parm:           max_pseudo_channels:Maximum number of pseudo
> channels. (int)
>

And with the crc_ccitt module loaded you still cannot run "modprobe dahdi"?

If so, what is the output of:

[]# cat /lib/modules/`uname -r`/modules.dep | grep dahdi.ko:

and

[]# dmesg -c > /dev/null; modprobe dahdi; dmesg; lsmod | grep dahdi


-- 
Shaun Ruffell
Digium, Inc. | Linux Kernel Developer
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
Check us out at: www.digium.com & www.asterisk.org



More information about the asterisk-users mailing list