Revert "win: unmask evtchn before checking if libvchan_wait is needed"
This reverts commit f7ce10db8f76f752cf9d65b420de352e70bdb048. This should be fixed by doing 0-length reads in qrexec main loop (instead of real read of fired port number).
This commit is contained in:
parent
7c1dfe9266
commit
4fcaf3e7b7
12
vchan/io.c
12
vchan/io.c
@ -125,12 +125,6 @@ int libvchan_write(struct libvchan *ctrl, char *data, int size)
|
||||
{
|
||||
int avail, avail_contig;
|
||||
int real_idx;
|
||||
#ifdef WINNT
|
||||
// because of mask-on-fire and do_notify called previously, evtchn must be
|
||||
// unmasked before libvchan_wait. Do it before checking if data is
|
||||
// available to prevent race
|
||||
libvchan_prepare_to_select(ctrl);
|
||||
#endif
|
||||
while ((avail = libvchan_buffer_space(ctrl)) == 0)
|
||||
if (libvchan_wait(ctrl) < 0)
|
||||
return -1;
|
||||
@ -156,12 +150,6 @@ int libvchan_read(struct libvchan *ctrl, char *data, int size)
|
||||
{
|
||||
int avail, avail_contig;
|
||||
int real_idx;
|
||||
#ifdef WINNT
|
||||
// because of mask-on-fire and do_notify called previously, evtchn must be
|
||||
// unmasked before libvchan_wait. Do it before checking if data is
|
||||
// available to prevent race
|
||||
libvchan_prepare_to_select(ctrl);
|
||||
#endif
|
||||
while ((avail = libvchan_data_ready(ctrl)) == 0)
|
||||
if (libvchan_wait(ctrl) < 0)
|
||||
return -1;
|
||||
|
Loading…
Reference in New Issue
Block a user