[ovs-dev] [PATCH v2 3/4] netlink: support for asynchronous NL transactions

Nithin Raju nithin at vmware.com
Wed May 20 18:03:58 UTC 2015


Sorin/Eitan,
Do we need this patch or not?

Eitan tells me that if return status is STATUS_PENDING, then the context is blocked in the kernel. If that is true, we probably don’t need this patch since control won’t return to userspace at all, till the IRP is complete. This is especially true since we are passing NULL for the ‘lpOverlapped’ parameter to DeviceIoControl().

Pls. see the following documentation on MSDN:
======
https://msdn.microsoft.com/en-us/library/windows/desktop/aa363216%28v=vs.85%29.aspx

lpOverlapped [in, out, optional]:
For overlapped operations, DeviceIoControl returns immediately, and the event object is signaled when the operation has been completed. Otherwise, the function does not return until the operation has been completed or an error occurs.
======

Based on this, my belief is that the call to DeviceIoControl() would block indefinitely until the IRP is completed.

In your testing, did you think this patch was necessary?

thanks,
-- Nithin


More information about the dev mailing list