[svn-commits] sruffell: linux/trunk r8007 - in /linux/trunk: drivers/dahdi/wctdm24xxp/ driv...
SVN commits to the Digium repositories
svn-commits at lists.digium.com
Mon Feb 8 16:49:38 CST 2010
Author: sruffell
Date: Mon Feb 8 16:49:34 2010
New Revision: 8007
URL: http://svnview.digium.com/svn/dahdi?view=rev&rev=8007
Log:
wctdm24xxp, wcte12xp: Abort the search for modules if killed.
If the user kills the modprobe process that is initializing the modules, exit as
soon as possible and do not look for any other modules.
Modified:
linux/trunk/drivers/dahdi/wctdm24xxp/base.c
linux/trunk/drivers/dahdi/wcte12xp/base.c
linux/trunk/include/dahdi/kernel.h
Modified: linux/trunk/drivers/dahdi/wctdm24xxp/base.c
URL: http://svnview.digium.com/svn/dahdi/linux/trunk/drivers/dahdi/wctdm24xxp/base.c?view=diff&rev=8007&r1=8006&r2=8007
==============================================================================
--- linux/trunk/drivers/dahdi/wctdm24xxp/base.c (original)
+++ linux/trunk/drivers/dahdi/wctdm24xxp/base.c Mon Feb 8 16:49:34 2010
@@ -3584,6 +3584,9 @@
/* Reset modules */
for (x=0;x<wc->cards;x++) {
int sane=0,ret=0,readi=0;
+
+ if (fatal_signal_pending(current))
+ break;
retry:
/* Init with Auto Calibration */
if (!(ret = wctdm_init_proslic(wc, x, 0, 0, sane))) {
@@ -3645,6 +3648,9 @@
}
}
+ if (fatal_signal_pending(current))
+ return -EINTR;
+
if (!vpmsupport) {
printk(KERN_NOTICE "VPM: Support Disabled\n");
} else if (!wctdm_vpm_init(wc)) {
Modified: linux/trunk/drivers/dahdi/wcte12xp/base.c
URL: http://svnview.digium.com/svn/dahdi/linux/trunk/drivers/dahdi/wcte12xp/base.c?view=diff&rev=8007&r1=8006&r2=8007
==============================================================================
--- linux/trunk/drivers/dahdi/wcte12xp/base.c (original)
+++ linux/trunk/drivers/dahdi/wcte12xp/base.c Mon Feb 8 16:49:34 2010
@@ -38,6 +38,7 @@
#include <linux/interrupt.h>
#include <linux/workqueue.h>
#include <linux/delay.h>
+#include <linux/sched.h>
#include <dahdi/kernel.h>
@@ -1395,7 +1396,7 @@
t1_setleds(wc, wc->ledstate);
#ifdef VPM_SUPPORT
- if (vpmsupport) {
+ if (!fatal_signal_pending(current) && vpmsupport) {
memset(&options, 0, sizeof(options));
options.debug = debug;
options.vpmnlptype = vpmnlptype;
Modified: linux/trunk/include/dahdi/kernel.h
URL: http://svnview.digium.com/svn/dahdi/linux/trunk/include/dahdi/kernel.h?view=diff&rev=8007&r1=8006&r2=8007
==============================================================================
--- linux/trunk/include/dahdi/kernel.h (original)
+++ linux/trunk/include/dahdi/kernel.h Mon Feb 8 16:49:34 2010
@@ -1176,6 +1176,11 @@
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 31)
#define KERN_CONT ""
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 25)
+static inline int fatal_signal_pending(struct task_struct *p)
+{
+ return signal_pending(p) && sigismember(&p->pending.signal, SIGKILL);
+}
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 18)
static inline void list_replace(struct list_head *old, struct list_head *new)
{
@@ -1202,6 +1207,7 @@
#endif /* 2.6.11 */
#endif /* 2.6.14 */
#endif /* 2.6.18 */
+#endif /* 2.6.25 */
#endif /* 2.6.31 */
#ifndef DMA_BIT_MASK
More information about the svn-commits
mailing list