bug in lis_stropen?
[email protected] Sat, 10 Dec 2005 21:50:10 -0500
| Newsgroups | gmane.linux.kernel.streams |
|---|---|
| Message-ID | <[email protected]> |
Hello, Question about particular code in LiS-2.18. In lis_stropen() function the following 2 lines: if ((err = lis_set_q_sync(head->sd_wq, LIS_QLOCK_QUEUE)) == 0) err = lis_set_q_sync(head->sd_wq->q_next, LIS_DEVST(maj).f_qlock_option) ; The f_qlock_option passed to lis_set_q_sync() in 2nd line can be -1. In fact it is -1. The lis_set_q_sync() will do nasty thing if -1 is passed to it. It will just free existing queue lock and return. I also have doubts that it is a good thing to manipulate with queue lock of the q_next queue without freezing that q_next queue somehow. [What if it is queuerun'ed at the moment?] The question is: what would be a good fix for that 2nd call with f_qlock_option parameter? Guess I should check f_qlock_option and if it is -1 then what? Skip that lis_set_q_sync() call or call it with LIS_QLOCK_QUEUE instead? -- Eugene ___________________________________________________ Try the New Netscape Mail Today! Virtually Spam-Free | More Storage | Import Your Contact List http://mail.netscape.com