> On June 5, 2018, 2:02 p.m., Andrew Schwartzmeyer wrote: > > 3rdparty/stout/include/stout/os/windows/fd.hpp > > Lines 183-184 (patched) > > <https://reviews.apache.org/r/67385/diff/1/?file=2032269#file2032269line185> > > > > Is there ever a case where `iocp_handle_` hasn't been allocated? Right > > now, this is implicitly relying on the fact that we chose to make the > > default constructor construct off the `HANDLE` ctor with > > `INVALID_HANDLE_VALUE`, and that ctor uses `make_shared`. Just wondering if > > we should refactor to make the allocation more explicit and certain (like > > maybe to `make_shared` in the default ctor, and ensure all ctors call it > > too, I don't know yet). > > Akash Gupta wrote: > THere isn't a case, although an allocated `iocp_handle_` is only needed > for the "valid" `HANDLE/SOCKET` constructors. I think it makes sense to have > the most general (most params) constructor call `make_shared` and the > narrower constructors call the more general one like how it works now.
That makes sense. - Andrew ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/67385/#review204345 ----------------------------------------------------------- On May 30, 2018, 11:58 a.m., Akash Gupta wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/67385/ > ----------------------------------------------------------- > > (Updated May 30, 2018, 11:58 a.m.) > > > Review request for mesos, Andrew Schwartzmeyer, Benjamin Mahler, Eric Mumau, > John Kordich, Joseph Wu, and Radhika Jandhyala. > > > Bugs: MESOS-5371 and MESOS-8668 > https://issues.apache.org/jira/browse/MESOS-5371 > https://issues.apache.org/jira/browse/MESOS-8668 > > > Repository: mesos > > > Description > ------- > > Mesos/Libprocess uses `os::nonblock()` in a way that assumes that it is > idempotent. Unfortunately, `CreateIoCompletionPort` is not idempotent, > so we need to wrap the function around our own code to make it so. We > need to keep it inside the `WindowsFD` class, because there isn't a way > to determine if a HANDLE is associated with an IOCP through the Win32 > API. > > > Diffs > ----- > > 3rdparty/stout/include/stout/os/windows/dup.hpp > 5bda095e676b038cdaea04f7be23ba2a1aca9015 > 3rdparty/stout/include/stout/os/windows/fd.hpp > 5dbdff2680370d123579c5e3fdd9b0e0adaf512e > > > Diff: https://reviews.apache.org/r/67385/diff/1/ > > > Testing > ------- > > > Thanks, > > Akash Gupta > >