[Meego-kernel] Error Handling for wait_for_completion_interruptible_timeout
Popescu, CatalinX
catalinx.popescu at intel.com
Tue Nov 30 08:53:07 PST 2010
I have a question regarding the synchronization mechanism wait_for_completion_interruptible_timeout. Sometimes, it just returns an ERESTARTSYS error because the scheduler detects a pending signal : TIF_SIGPENDING is set into thread_info. But looking at sigpending from task_struct there are no pending signals...
What is the driver supposed to do when receiving ERESTARTSYS in general case? Is it supposed to return EAGAIN so the signal gets handled by user space?
In this particular case, when there are no real signals pending, is the driver allowed to call recalc_sigpending or any equivalent function in order to clear flag TIF_SIGPENDING and issue another call to wait_for_completion_interruptible_timeout (this time blocking) ?
Thank you for your feedback.
---------------------------------------------------------------------
Intel Corporation SAS (French simplified joint stock company)
Registered headquarters: "Les Montalets"- 2, rue de Paris,
92196 Meudon Cedex, France
Registration Number: 302 456 199 R.C.S. NANTERRE
Capital: 4,572,000 Euros
This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.meego.com/pipermail/meego-kernel/attachments/20101130/19d7395f/attachment.html>
More information about the MeeGo-kernel
mailing list