diff options
author | Shaun Ruffell <sruffell@digium.com> | 2010-02-25 19:10:02 +0000 |
---|---|---|
committer | Shaun Ruffell <sruffell@digium.com> | 2010-02-25 19:10:02 +0000 |
commit | 9e42acddf0f25ca9c17bf370bb008be0799fc44f (patch) | |
tree | a8b8b40eb01eee47fe29583af71edd2ebe73ceac /drivers/dahdi/Kbuild | |
parent | feef9550b093994d23a6e3eecd96db1708be408d (diff) |
dahdi_dynamic: Add TDMoE Multi-Frame support.
Add TDMoE Multi-Frame support as described in the article at the following URL:
http://www.thrallingpenguin.com/articles/tdmoe-mf.htm
TDMoE-MF is known to be implemented in hardware solutions from Redfone
Communications.
This patch additionally implements RCU within dahdi_dynamic to decrease lock
contention, latency, and context switching. Because of the use of RCU locking,
all prior known issues with loading and unloading of the modules are resolved,
providing the spans are shutdown with "dahdi_cfg -s".
It also contains an attempt, which works, at fixing a kernel change with
skb_linearize(). The use of kernel version number does not work with SuSE SLES
10, as it appears they have backported the 2.6.18 change in to their 2.6.16
version.
This merges in the work Jbenden did at:
http://svn.digium.com/svn/dahdi/team/jbenden/tdmoe-mf@8102
(issue #13483)
Patch by: JBenden
Reported by: JBenden
Tested by: JBenden
git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8103 a0bf4364-ded3-4de4-8d8a-66a801d63aff
Diffstat (limited to 'drivers/dahdi/Kbuild')
-rw-r--r-- | drivers/dahdi/Kbuild | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/dahdi/Kbuild b/drivers/dahdi/Kbuild index 9335be8..f0af285 100644 --- a/drivers/dahdi/Kbuild +++ b/drivers/dahdi/Kbuild @@ -3,6 +3,7 @@ obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI) += dahdi.o obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DYNAMIC) += dahdi_dynamic.o obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DYNAMIC_LOC) += dahdi_dynamic_loc.o obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DYNAMIC_ETH) += dahdi_dynamic_eth.o +obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DYNAMIC_ETHMF) += dahdi_dynamic_ethmf.o obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_TRANSCODE) += dahdi_transcode.o obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_WCT4XXP) += wct4xxp/ @@ -63,6 +64,14 @@ ifeq (1,$(shell fgrep -q ' hrtimer_set_expires' include/linux/hrtimer.h 2>/dev/n EXTRA_CFLAGS+=-DHAVE_HRTIMER_ACCESSORS=1 endif +# In 2.6.18 skb_linearize changed; however, some distros backported the change +ifneq (,$(wildcard $(srctree)/include/linux/skbuff.h)) +ifeq ($(shell grep "skb_linearize.*(.*, .* gfp)" $(srctree)/include/linux/skbuff.h),) +CFLAGS_dahdi_dynamic_eth.o := -DNEW_SKB_LINEARIZE +CFLAGS_dahdi_dynamic_ethmf.o := -DNEW_SKB_LINEARIZE +endif +endif + dahdi-objs := dahdi-base.o ############################################################################### |