Messages in this thread | | | Date | Mon, 16 Jul 2001 20:09:25 -0400 | From | Alex Ivchenko <> | Subject | Porting char driving from 2.2 to 2.4 : changes in API to know |
| |
All,
I'm porting dataq driver from 2.2 to 2.4 and found a problem with using interruptible_sleep_on_timeout() and wake_up_interruptible().
Knowing that wait queue was reorganized in 2.4 I declared queue head as:
static DECLARE_WAIT_QUEUE_HEAD(wqhead);
and then in ioctl routine
.. // put request on hold interruptible_sleep_on_timeout(&wqhead, jiffies); ...
and
.. // release process wake_up_interruptible(&wqhead);
interruptible_sleep_on_timeout() works correctly and releases process when timeout expires. However wake_up_interruptible() doesn't work.
Questions: 1. Is "interruptible" functions still recommended for use under 2.4? 2. What other changes made can potentially affect this mechanism? 3. Should I use some special options/flags to compile modules under 2.4 (beyond discussed in lkml FAQ)?
-- Regards, Alex
-- Alex Ivchenko, Ph.D. United Electronic Industries, Inc. "The High-Performance Alternative (tm)" -- 10 Dexter Avenue Watertown, Massachusetts 02472 Tel: (617) 924-1155 x 222 Fax: (617) 924-1441 http://www.ueidaq.com - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |