[Home]

Summary:DAHLIN-00253: Issue building DAHDI Module on Slicehost VPS - Xen .Debian Squeeze 6.0
Reporter:George Breahna (gtech1)Labels:
Date Opened:2011-09-05 11:51:45Date Closed:2011-10-17 09:24:40
Priority:BlockerRegression?
Status:Closed/CompleteComponents:dahdi (the module)
Versions:2.5.0 Frequency of
Occurrence
Constant
Related
Issues:
Environment:Slicehost VPS - Xen .Debian Squeeze 6.0 2.6.35.4-rscloud #8 SMP Mon Sep 20 15:54:33 UTC 2010 x86_64 GNU/LinuxAttachments:( 0) 0001-dahdi-Only-build-dahdi.ko-for-use-on-virtual-servers.patch
Description:We have a VPS from Slicehost and attempt to install DAHDI on it. We have the kernel source installed under /usr/src/2.6.35.4-rscloud . It was downloaded from: http://kernel.slicehost.com/2.6.35.4-rscloud/patched_source/

The regular dahdi module (2.3.0.1) failed to finish building when running: /usr/bin/m-a a-i dahdi  
with the following error:

/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.c: In function __check_modes':
/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.c:1687: error: 'modes' undeclared (first use in this function)

I reached out to Tzafrir and he suggested we try out a newer version ( 2.5.0 ) available at:
http://updates.xorcom.com/pkg-voip/repo-amd64-squeeze

We tried out that package and it also fails with this error:

/usr/src/modules/dahdi/drivers/dahdi/voicebus/voicebus.c: In function 'vb_cleanup_tx_descriptors':
/usr/src/modules/dahdi/drivers/dahdi/voicebus/voicebus.c:476: error: implicit declaration of function 'dma_pool_free'
/usr/src/modules/dahdi/drivers/dahdi/voicebus/voicebus.c: In function 'setup_descriptors':
/usr/src/modules/dahdi/drivers/dahdi/voicebus/voicebus.c:803: error: implicit declaration of function 'dma_pool_alloc'
/usr/src/modules/dahdi/drivers/dahdi/voicebus/voicebus.c:804: warning: assignment makes pointer from integer without a cast
/usr/src/modules/dahdi/drivers/dahdi/voicebus/voicebus.c:827: warning: assignment makes pointer from integer without a cast
/usr/src/modules/dahdi/drivers/dahdi/voicebus/voicebus.c: In function 'voicebus_release':
/usr/src/modules/dahdi/drivers/dahdi/voicebus/voicebus.c:1227: error: implicit declaration of function 'pci_clear_mwi'
/usr/src/modules/dahdi/drivers/dahdi/voicebus/voicebus.c:1229: error: implicit declaration of function 'dma_pool_destroy'
/usr/src/modules/dahdi/drivers/dahdi/voicebus/voicebus.c: In function 'vb_increase_latency':
/usr/src/modules/dahdi/drivers/dahdi/voicebus/voicebus.c:1267: warning: assignment makes pointer from integer without a cast
/usr/src/modules/dahdi/drivers/dahdi/voicebus/voicebus.c: In function '__voicebus_init':
/usr/src/modules/dahdi/drivers/dahdi/voicebus/voicebus.c:1843: error: implicit declaration of function 'dma_pool_create'
/usr/src/modules/dahdi/drivers/dahdi/voicebus/voicebus.c:1844: warning: assignment makes pointer from integer without a cast
/usr/src/modules/dahdi/drivers/dahdi/voicebus/voicebus.c:1861: error: implicit declaration of function 'pci_set_mwi'
make[5]: *** [/usr/src/modules/dahdi/drivers/dahdi/voicebus/voicebus.o] Error 1




Comments:By: Shaun Ruffell (sruffell) 2011-09-10 22:10:59.259-0500

My best guess based on the information you have provided here is that the VPS kernel does not include the needed PCI hardware support.

Does the attached patch "0001-dahdi-Only-build-dahdi.ko-for-use-on-virtual-servers.patch" work for you? It disables all the hardware board drivers under the assumption that you only want DAHDI installed for timing / Meetme?

By: George Breahna (gtech1) 2011-09-10 22:32:14.445-0500

I applied the patch to version 2.5.0 and I get now the same error as I was getting to version 2.3.0.1


 CC [M]  /usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.o
/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.c: In function '__check_modes':
/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.c:1691: error: 'modes' undeclared (first use in this function)
/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.c:1691: error: (Each undeclared identifier is reported only once
/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.c:1691: error: for each function it appears in.)
/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.c: At top level:
/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.c:1691: error: 'modes' undeclared here (not in a function)
/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.c:1691: warning: type defaults to 'int' in declaration of 'type name'
/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.c:1694: error: 'nt_modes' undeclared here (not in a function)
/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.c:1694: warning: type defaults to 'int' in declaration of 'type name'
/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.c:1694: warning: type defaults to 'int' in declaration of 'type name'
/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.c:1694: error: negative width in bit-field '<anonymous>'
/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.c:1694: error: 'nt_modes_count' undeclared here (not in a function)
/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.c:1694: warning: type defaults to 'int' in declaration of 'type name'
/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.c: In function '__check_force_l1_up':
/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.c:1699: error: 'force_l1_up' undeclared (first use in this function)
/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.c: At top level:
/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.c:1699: error: 'force_l1_up' undeclared here (not in a function)
/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.c:1699: warning: type defaults to 'int' in declaration of 'type name'
make[3]: *** [/usr/src/modules/dahdi/drivers/dahdi/zaphfc/base.o] Error 1
make[2]: *** [/usr/src/modules/dahdi/drivers/dahdi/zaphfc] Error 2
make[1]: *** [_module_/usr/src/modules/dahdi/drivers/dahdi] Error 2


By: Shaun Ruffell (sruffell) 2011-09-11 20:28:53.201-0500

What happens when you try to install from the normal sources?  zaphfc is a board driver for a BRI card that isn't included in the normal distribution (and if you're using VPS, you probably do not need anyway).

By: George Breahna (gtech1) 2011-09-11 21:08:09.013-0500

I downloaded dahdi-2.5.0.1
I applied the patch you provided and I did a make, make install.

everything compiled and completed properly. I got this message:


### DAHDI installed successfully.
### If you have not done so before, install the package
### dahdi-tools.


However, I don't have the usual configuration files in /etc/dahdi . How do I get those built ?

By: Shaun Ruffell (sruffell) 2011-09-11 21:38:26.398-0500

Those are installed from DAHDI-Tools.  You should be able to install DAHDI tools normally.  However, if all you want DAHDI for is timing, you don't really *need* dahdi-tools since there aren't any boards to configure.

You could just add something like "modprobe dahdi" to the end of your /etc/rc.local and not worry about the /etc/dahdi files.

By: Shaun Ruffell (sruffell) 2011-09-13 13:21:22.077-0500

I think this issue can be closed now?

By: George Breahna (gtech1) 2011-09-14 14:26:31.646-0500

the module is indeed now loaded by the kernel but we haven't had a chance to test with Asterisk. Can you leave open for 2 more days while we get that sorted ?

Thank you for all your help!

By: Shaun Ruffell (sruffell) 2011-09-14 14:30:59.424-0500

No problem, will leave this in Waiting for Feedback for a few more days.

By: Shaun Ruffell (sruffell) 2011-10-17 09:24:40.585-0500

I'm going to go ahead and close this. Feel free to open it again if you need, but otherwise I think the workaround will suffice.