summaryrefslogtreecommitdiff
path: root/drivers/dahdi/wctdm24xxp
diff options
context:
space:
mode:
authorShaun Ruffell <sruffell@digium.com>2010-02-08 22:49:34 +0000
committerShaun Ruffell <sruffell@digium.com>2010-02-08 22:49:34 +0000
commit972195bd6c675308c18b12447163ca58e6856afa (patch)
treeaa8cc8a81d0c715bda824e0a3ebe782d29531809 /drivers/dahdi/wctdm24xxp
parentbddb25bddd81d77ab61e4fe5fe0fbe384181e724 (diff)
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. git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@8007 a0bf4364-ded3-4de4-8d8a-66a801d63aff
Diffstat (limited to 'drivers/dahdi/wctdm24xxp')
-rw-r--r--drivers/dahdi/wctdm24xxp/base.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/dahdi/wctdm24xxp/base.c b/drivers/dahdi/wctdm24xxp/base.c
index 976d744..73f0db6 100644
--- a/drivers/dahdi/wctdm24xxp/base.c
+++ b/drivers/dahdi/wctdm24xxp/base.c
@@ -3584,6 +3584,9 @@ static int wctdm_locate_modules(struct wctdm *wc)
/* 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 @@ retry:
}
}
+ if (fatal_signal_pending(current))
+ return -EINTR;
+
if (!vpmsupport) {
printk(KERN_NOTICE "VPM: Support Disabled\n");
} else if (!wctdm_vpm_init(wc)) {