From bzolnier@gmail.com Mon Aug 17 14:10:25 2009 From: Bartlomiej Zolnierkiewicz Date: Sun, 16 Aug 2009 21:30:12 +0200 Subject: Staging: rtxxx0: PID checking fixes To: "Greg Kroah-Hartman" Cc: devel@driverdev.osuosl.org, Bartlomiej Zolnierkiewicz , linux-kernel@vger.kernel.org Message-ID: <20090816193012.3789.83965.sendpatchset@localhost.localdomain> From: Bartlomiej Zolnierkiewicz Subject: [PATCH] Staging: rtxxx0: PID checking fixes * rt3070: - add missing pid_nr() invocations * rt{28,30}70: - do not treat PID 0 as valid Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: Greg Kroah-Hartman --- drivers/staging/rt2860/rt_linux.h | 2 +- drivers/staging/rt2870/2870_main_dev.c | 6 +++--- drivers/staging/rt2870/rt2870.h | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) --- a/drivers/staging/rt2860/rt_linux.h +++ b/drivers/staging/rt2860/rt_linux.h @@ -163,7 +163,7 @@ typedef struct pid * THREAD_PID; #define THREAD_PID_INIT_VALUE NULL #define GET_PID(_v) find_get_pid(_v) #define GET_PID_NUMBER(_v) pid_nr(_v) -#define CHECK_PID_LEGALITY(_pid) if (pid_nr(_pid) >= 0) +#define CHECK_PID_LEGALITY(_pid) if (pid_nr(_pid) > 0) #define KILL_THREAD_PID(_A, _B, _C) kill_pid(_A, _B, _C) #endif --- a/drivers/staging/rt2870/2870_main_dev.c +++ b/drivers/staging/rt2870/2870_main_dev.c @@ -1063,7 +1063,7 @@ VOID RT28xxThreadTerminate( } #endif #ifdef RT30xx - if (pObj->MLMEThr_pid) + if (pid_nr(pObj->MLMEThr_pid) > 0) { printk("Terminate the MLMEThr_pid=%d!\n", pid_nr(pObj->MLMEThr_pid)); mb(); @@ -1084,7 +1084,7 @@ VOID RT28xxThreadTerminate( } } - if (pObj->RTUSBCmdThr_pid >= 0) + if (pid_nr(pObj->RTUSBCmdThr_pid) > 0) { printk("Terminate the RTUSBCmdThr_pid=%d!\n", pid_nr(pObj->RTUSBCmdThr_pid)); mb(); @@ -1106,7 +1106,7 @@ VOID RT28xxThreadTerminate( pObj->RTUSBCmdThr_pid = NULL; } } - if (pObj->TimerQThr_pid >= 0) + if (pid_nr(pObj->TimerQThr_pid) > 0) { POS_COOKIE pObj = (POS_COOKIE)pAd->OS_Cookie; printk("Terminate the TimerQThr_pid=%d!\n", pid_nr(pObj->TimerQThr_pid)); --- a/drivers/staging/rt2870/rt2870.h +++ b/drivers/staging/rt2870/rt2870.h @@ -460,14 +460,14 @@ VOID RTUSBBulkRxComplete(purbb_t pUrb, s #define RTUSBMlmeUp(pAd) \ { \ POS_COOKIE pObj = (POS_COOKIE) pAd->OS_Cookie; \ - if(pObj->MLMEThr_pid>0) \ + if (pid_nr(pObj->MLMEThr_pid) > 0) \ up(&(pAd->mlme_semaphore)); \ } #define RTUSBCMDUp(pAd) \ { \ POS_COOKIE pObj = (POS_COOKIE) pAd->OS_Cookie; \ - if(pObj->RTUSBCmdThr_pid>0) \ + if (pid_nr(pObj->RTUSBCmdThr_pid) > 0) \ up(&(pAd->RTUSBCmd_semaphore)); \ } #endif