[packages/dahdi-linux] - fix building with linux 3.18 - rel 2

baggins baggins at pld-linux.org
Mon Jan 26 00:32:23 CET 2015


commit 50a1dcfa53d889e07f2c946d4966bc2a8a86e254
Author: Jan Rękorajski <baggins at pld-linux.org>
Date:   Mon Jan 26 00:32:08 2015 +0100

    - fix building with linux 3.18
    - rel 2

 dahdi-linux.spec |  4 ++-
 linux-3.18.patch | 85 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 88 insertions(+), 1 deletion(-)
---
diff --git a/dahdi-linux.spec b/dahdi-linux.spec
index 9c9ff56..0aa1002 100644
--- a/dahdi-linux.spec
+++ b/dahdi-linux.spec
@@ -55,7 +55,7 @@ exit 1
 %define		kpkg	%(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo %%kernel_pkg ; done)
 %define		bkpkg	%(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo %%build_kernel_pkg ; done)
 
-%define		rel	1
+%define		rel	2
 %define		pname	dahdi-linux
 %define		FIRMWARE_URL http://downloads.digium.com/pub/telephony/firmware/releases
 Summary:	DAHDI telephony device support
@@ -77,6 +77,7 @@ Source6:	%{FIRMWARE_URL}/dahdi-fw-tc400m-MR6.12.tar.gz
 # Source6-md5:	2ea860bb8a9d8ede2858b9557b74ee3c
 Source7:	%{FIRMWARE_URL}/dahdi-fw-hx8-2.06.tar.gz
 # Source7-md5:	a7f3886942bb3e9fed349a41b3390c9f
+Patch0:		linux-3.18.patch
 URL:		http://www.asterisk.org/
 BuildRequires:	rpmbuild(macros) >= 1.678
 %{?with_dist_kernel:%{expand:%kbrs}}
@@ -179,6 +180,7 @@ cd ../..\
 
 %prep
 %setup -q -n %{pname}-%{version}
+%patch0 -p1
 
 for a in %{SOURCE3} %{SOURCE4} %{SOURCE5} %{SOURCE6} %{SOURCE7}; do
 	ln -s $a drivers/dahdi/firmware
diff --git a/linux-3.18.patch b/linux-3.18.patch
new file mode 100644
index 0000000..03cecdd
--- /dev/null
+++ b/linux-3.18.patch
@@ -0,0 +1,85 @@
+--- dahdi-linux-2.10.0.1/drivers/dahdi/wcte43x-base.c~	2014-09-22 20:40:19.000000000 +0200
++++ dahdi-linux-2.10.0.1/drivers/dahdi/wcte43x-base.c	2015-01-26 00:29:29.559216394 +0100
+@@ -3581,7 +3581,11 @@
+ 		return;
+ 
+ 	wc->not_ready = 1;
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 18, 0)
+ 	smp_mb__after_clear_bit();
++#else
++	smp_mb__after_atomic();
++#endif
+ 
+ 	/* Stop everything */
+ 	wcxb_stop(&wc->xb);
+--- dahdi-linux-2.10.0.1/drivers/dahdi/wcaxx-base.c~	2014-09-22 20:40:19.000000000 +0200
++++ dahdi-linux-2.10.0.1/drivers/dahdi/wcaxx-base.c	2015-01-26 00:30:14.289214817 +0100
+@@ -3823,7 +3823,11 @@
+ 	unsigned long flags;
+ 
+ 	clear_bit(INITIALIZED, &wc->bit_flags);
+-	smp_mb__after_clear_bit();
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 18, 0)
++ 	smp_mb__after_clear_bit();
++#else
++	smp_mb__after_atomic();
++#endif
+ 
+ 	/* Make sure we're not on the card list anymore. */
+ 	mutex_lock(&card_list_lock);
+--- dahdi-linux-2.10.0.1/drivers/dahdi/wcte12xp/base.c~	2014-09-22 20:40:19.000000000 +0200
++++ dahdi-linux-2.10.0.1/drivers/dahdi/wcte12xp/base.c	2015-01-26 00:30:47.229213654 +0100
+@@ -2110,7 +2110,11 @@
+ 	 * them. */
+ 	clear_bit(INITIALIZED, &wc->bit_flags);
+ 	synchronize_irq(wc->vb.pdev->irq);
+-	smp_mb__after_clear_bit();
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 18, 0)
++ 	smp_mb__after_clear_bit();
++#else
++	smp_mb__after_atomic();
++#endif
+ 	del_timer_sync(&wc->timer);
+ 	flush_workqueue(wc->wq);
+ 
+@@ -3076,7 +3080,11 @@
+ 	remove_sysfs_files(wc);
+ 
+ 	clear_bit(INITIALIZED, &wc->bit_flags);
+-	smp_mb__after_clear_bit();
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 18, 0)
++ 	smp_mb__after_clear_bit();
++#else
++	smp_mb__after_atomic();
++#endif
+ 
+ 	del_timer_sync(&wc->timer);
+ 	flush_workqueue(wc->wq);
+--- dahdi-linux-2.10.0.1/drivers/dahdi/wcte13xp-base.c~	2014-09-22 20:40:19.000000000 +0200
++++ dahdi-linux-2.10.0.1/drivers/dahdi/wcte13xp-base.c	2015-01-26 00:31:17.379212592 +0100
+@@ -1849,7 +1849,11 @@
+ 	clear_bit(INITIALIZED, &wc->bit_flags);
+ 	disable_irq(wc->xb.pdev->irq);
+ 
+-	smp_mb__after_clear_bit();
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 18, 0)
++ 	smp_mb__after_clear_bit();
++#else
++	smp_mb__after_atomic();
++#endif
+ 	del_timer_sync(&wc->timer);
+ 	flush_workqueue(wc->wq);
+ 
+@@ -2725,7 +2729,11 @@
+ 		return;
+ 
+ 	clear_bit(INITIALIZED, &wc->bit_flags);
+-	smp_mb__after_clear_bit();
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 18, 0)
++ 	smp_mb__after_clear_bit();
++#else
++	smp_mb__after_atomic();
++#endif
+ 
+ 	/* Quiesce DMA engine interrupts */
+ 	wcxb_stop(&wc->xb);
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/dahdi-linux.git/commitdiff/50a1dcfa53d889e07f2c946d4966bc2a8a86e254



More information about the pld-cvs-commit mailing list