svn commit: r210987 - projects/ofed/head/sys/ofed/include/linux

Jeff Roberson jeff at FreeBSD.org
Sat Aug 7 02:07:41 UTC 2010


Author: jeff
Date: Sat Aug  7 02:07:40 2010
New Revision: 210987
URL: http://svn.freebsd.org/changeset/base/210987

Log:
   - Don't call taskqueue_cancel if the queue hasn't been assigned.
  
  Sponsored by:	Isilon Systems, iX Systems, and Panasas.

Modified:
  projects/ofed/head/sys/ofed/include/linux/workqueue.h

Modified: projects/ofed/head/sys/ofed/include/linux/workqueue.h
==============================================================================
--- projects/ofed/head/sys/ofed/include/linux/workqueue.h	Sat Aug  7 01:49:44 2010	(r210986)
+++ projects/ofed/head/sys/ofed/include/linux/workqueue.h	Sat Aug  7 02:07:40 2010	(r210987)
@@ -166,7 +166,8 @@ flush_taskqueue(struct taskqueue *tq)
 }
 
 #define	cancel_work_sync(work)						\
-	taskqueue_cancel((work)->taskqueue, &(work)->work_task)
+	(work)->taskqueue ?						\
+	taskqueue_cancel((work)->taskqueue, &(work)->work_task) : 0
 
 static inline int
 cancel_delayed_work(struct delayed_work *work)
@@ -174,7 +175,7 @@ cancel_delayed_work(struct delayed_work 
 	int error;
 
 	error = callout_drain(&work->timer);
-	if (error == 0)
+	if (error == 0 && work->work.taskqueue)
 		error = taskqueue_cancel(work->work.taskqueue,
 		    &work->work.work_task);
 	return error;


More information about the svn-src-projects mailing list