xref: /aosp_15_r20/external/libevent/epolltable-internal.h (revision 663afb9b963571284e0f0a60f257164ab54f64bf)
1*663afb9bSAndroid Build Coastguard Worker /*
2*663afb9bSAndroid Build Coastguard Worker  * Copyright (c) 2000-2007 Niels Provos <[email protected]>
3*663afb9bSAndroid Build Coastguard Worker  * Copyright (c) 2007-2012 Niels Provos and Nick Mathewson
4*663afb9bSAndroid Build Coastguard Worker  *
5*663afb9bSAndroid Build Coastguard Worker  * Redistribution and use in source and binary forms, with or without
6*663afb9bSAndroid Build Coastguard Worker  * modification, are permitted provided that the following conditions
7*663afb9bSAndroid Build Coastguard Worker  * are met:
8*663afb9bSAndroid Build Coastguard Worker  * 1. Redistributions of source code must retain the above copyright
9*663afb9bSAndroid Build Coastguard Worker  *    notice, this list of conditions and the following disclaimer.
10*663afb9bSAndroid Build Coastguard Worker  * 2. Redistributions in binary form must reproduce the above copyright
11*663afb9bSAndroid Build Coastguard Worker  *    notice, this list of conditions and the following disclaimer in the
12*663afb9bSAndroid Build Coastguard Worker  *    documentation and/or other materials provided with the distribution.
13*663afb9bSAndroid Build Coastguard Worker  * 3. The name of the author may not be used to endorse or promote products
14*663afb9bSAndroid Build Coastguard Worker  *    derived from this software without specific prior written permission.
15*663afb9bSAndroid Build Coastguard Worker  *
16*663afb9bSAndroid Build Coastguard Worker  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
17*663afb9bSAndroid Build Coastguard Worker  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
18*663afb9bSAndroid Build Coastguard Worker  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19*663afb9bSAndroid Build Coastguard Worker  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
20*663afb9bSAndroid Build Coastguard Worker  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
21*663afb9bSAndroid Build Coastguard Worker  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
22*663afb9bSAndroid Build Coastguard Worker  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
23*663afb9bSAndroid Build Coastguard Worker  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24*663afb9bSAndroid Build Coastguard Worker  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
25*663afb9bSAndroid Build Coastguard Worker  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26*663afb9bSAndroid Build Coastguard Worker  */
27*663afb9bSAndroid Build Coastguard Worker #ifndef EPOLLTABLE_INTERNAL_H_INCLUDED_
28*663afb9bSAndroid Build Coastguard Worker #define EPOLLTABLE_INTERNAL_H_INCLUDED_
29*663afb9bSAndroid Build Coastguard Worker 
30*663afb9bSAndroid Build Coastguard Worker /*
31*663afb9bSAndroid Build Coastguard Worker   Here are the values we're masking off to decide what operations to do.
32*663afb9bSAndroid Build Coastguard Worker   Note that since EV_READ|EV_WRITE.
33*663afb9bSAndroid Build Coastguard Worker 
34*663afb9bSAndroid Build Coastguard Worker   Note also that this table is a little sparse, since ADD+DEL is
35*663afb9bSAndroid Build Coastguard Worker   nonsensical ("xxx" in the list below.)
36*663afb9bSAndroid Build Coastguard Worker 
37*663afb9bSAndroid Build Coastguard Worker   Note also that we are shifting old_events by only 5 bits, since
38*663afb9bSAndroid Build Coastguard Worker   EV_READ is 2 and EV_WRITE is 4.
39*663afb9bSAndroid Build Coastguard Worker 
40*663afb9bSAndroid Build Coastguard Worker   The table was auto-generated with a python script, according to this
41*663afb9bSAndroid Build Coastguard Worker   pseudocode:[*0]
42*663afb9bSAndroid Build Coastguard Worker 
43*663afb9bSAndroid Build Coastguard Worker       If either the read or the write change is add+del:
44*663afb9bSAndroid Build Coastguard Worker 	 This is impossible; Set op==-1, events=0.
45*663afb9bSAndroid Build Coastguard Worker       Else, if either the read or the write change is add:
46*663afb9bSAndroid Build Coastguard Worker 	 Set events to 0.
47*663afb9bSAndroid Build Coastguard Worker 	 If the read change is add, or
48*663afb9bSAndroid Build Coastguard Worker 	    (the read change is not del, and ev_read is in old_events):
49*663afb9bSAndroid Build Coastguard Worker 	       Add EPOLLIN to events.
50*663afb9bSAndroid Build Coastguard Worker 	 If the write change is add, or
51*663afb9bSAndroid Build Coastguard Worker 	    (the write change is not del, and ev_write is in old_events):
52*663afb9bSAndroid Build Coastguard Worker 	       Add EPOLLOUT to events.
53*663afb9bSAndroid Build Coastguard Worker 
54*663afb9bSAndroid Build Coastguard Worker 	 If old_events is set:
55*663afb9bSAndroid Build Coastguard Worker 	       Set op to EPOLL_CTL_MOD [*1,*2]
56*663afb9bSAndroid Build Coastguard Worker 	Else:
57*663afb9bSAndroid Build Coastguard Worker 	       Set op to EPOLL_CTL_ADD [*3]
58*663afb9bSAndroid Build Coastguard Worker 
59*663afb9bSAndroid Build Coastguard Worker       Else, if the read or the write change is del:
60*663afb9bSAndroid Build Coastguard Worker 	 Set op to EPOLL_CTL_DEL.
61*663afb9bSAndroid Build Coastguard Worker 	 If the read change is del:
62*663afb9bSAndroid Build Coastguard Worker 	     If the write change is del:
63*663afb9bSAndroid Build Coastguard Worker 		 Set events to EPOLLIN|EPOLLOUT
64*663afb9bSAndroid Build Coastguard Worker 	     Else if ev_write is in old_events:
65*663afb9bSAndroid Build Coastguard Worker 		 Set events to EPOLLOUT
66*663afb9bSAndroid Build Coastguard Worker 		Set op to EPOLL_CTL_MOD
67*663afb9bSAndroid Build Coastguard Worker 	     Else
68*663afb9bSAndroid Build Coastguard Worker 		 Set events to EPOLLIN
69*663afb9bSAndroid Build Coastguard Worker 	 Else:
70*663afb9bSAndroid Build Coastguard Worker 	     {The write change is del.}
71*663afb9bSAndroid Build Coastguard Worker 	    If ev_read is in old_events:
72*663afb9bSAndroid Build Coastguard Worker 		 Set events to EPOLLIN
73*663afb9bSAndroid Build Coastguard Worker 		Set op to EPOLL_CTL_MOD
74*663afb9bSAndroid Build Coastguard Worker 	    Else:
75*663afb9bSAndroid Build Coastguard Worker 		Set the events to EPOLLOUT
76*663afb9bSAndroid Build Coastguard Worker 
77*663afb9bSAndroid Build Coastguard Worker       Else:
78*663afb9bSAndroid Build Coastguard Worker 	   There is no read or write change; set op to 0 and events to 0.
79*663afb9bSAndroid Build Coastguard Worker 
80*663afb9bSAndroid Build Coastguard Worker       The logic is a little tricky, since we had no events set on the fd before,
81*663afb9bSAndroid Build Coastguard Worker       we need to set op="ADD" and set events=the events we want to add.	 If we
82*663afb9bSAndroid Build Coastguard Worker       had any events set on the fd before, and we want any events to remain on
83*663afb9bSAndroid Build Coastguard Worker       the fd, we need to say op="MOD" and set events=the events we want to
84*663afb9bSAndroid Build Coastguard Worker       remain.  But if we want to delete the last event, we say op="DEL" and
85*663afb9bSAndroid Build Coastguard Worker       set events=(any non-null pointer).
86*663afb9bSAndroid Build Coastguard Worker 
87*663afb9bSAndroid Build Coastguard Worker   [*0] Actually, the Python script has gotten a bit more complicated, to
88*663afb9bSAndroid Build Coastguard Worker        support EPOLLRDHUP.
89*663afb9bSAndroid Build Coastguard Worker 
90*663afb9bSAndroid Build Coastguard Worker   [*1] This MOD is only a guess.  MOD might fail with ENOENT if the file was
91*663afb9bSAndroid Build Coastguard Worker        closed and a new file was opened with the same fd.  If so, we'll retry
92*663afb9bSAndroid Build Coastguard Worker        with ADD.
93*663afb9bSAndroid Build Coastguard Worker 
94*663afb9bSAndroid Build Coastguard Worker   [*2] We can't replace this with a no-op even if old_events is the same as
95*663afb9bSAndroid Build Coastguard Worker        the new events: if the file was closed and reopened, we need to retry
96*663afb9bSAndroid Build Coastguard Worker        with an ADD.  (We do a MOD in this case since "no change" is more
97*663afb9bSAndroid Build Coastguard Worker        common than "close and reopen", so we'll usually wind up doing 1
98*663afb9bSAndroid Build Coastguard Worker        syscalls instead of 2.)
99*663afb9bSAndroid Build Coastguard Worker 
100*663afb9bSAndroid Build Coastguard Worker   [*3] This ADD is only a guess.  There is a fun Linux kernel issue where if
101*663afb9bSAndroid Build Coastguard Worker        you have two fds for the same file (via dup) and you ADD one to an
102*663afb9bSAndroid Build Coastguard Worker        epfd, then close it, then re-create it with the same fd (via dup2 or an
103*663afb9bSAndroid Build Coastguard Worker        unlucky dup), then try to ADD it again, you'll get an EEXIST, since the
104*663afb9bSAndroid Build Coastguard Worker        struct epitem is not actually removed from the struct eventpoll until
105*663afb9bSAndroid Build Coastguard Worker        the file itself is closed.
106*663afb9bSAndroid Build Coastguard Worker 
107*663afb9bSAndroid Build Coastguard Worker   EV_CHANGE_ADD==1
108*663afb9bSAndroid Build Coastguard Worker   EV_CHANGE_DEL==2
109*663afb9bSAndroid Build Coastguard Worker   EV_READ      ==2
110*663afb9bSAndroid Build Coastguard Worker   EV_WRITE     ==4
111*663afb9bSAndroid Build Coastguard Worker   EV_CLOSED    ==0x80
112*663afb9bSAndroid Build Coastguard Worker 
113*663afb9bSAndroid Build Coastguard Worker   Bit 0: close change is add
114*663afb9bSAndroid Build Coastguard Worker   Bit 1: close change is del
115*663afb9bSAndroid Build Coastguard Worker   Bit 2: read change is add
116*663afb9bSAndroid Build Coastguard Worker   Bit 3: read change is del
117*663afb9bSAndroid Build Coastguard Worker   Bit 4: write change is add
118*663afb9bSAndroid Build Coastguard Worker   Bit 5: write change is del
119*663afb9bSAndroid Build Coastguard Worker   Bit 6: old events had EV_READ
120*663afb9bSAndroid Build Coastguard Worker   Bit 7: old events had EV_WRITE
121*663afb9bSAndroid Build Coastguard Worker   Bit 8: old events had EV_CLOSED
122*663afb9bSAndroid Build Coastguard Worker */
123*663afb9bSAndroid Build Coastguard Worker 
124*663afb9bSAndroid Build Coastguard Worker #define EPOLL_OP_TABLE_INDEX(c) \
125*663afb9bSAndroid Build Coastguard Worker 	(   (((c)->close_change&(EV_CHANGE_ADD|EV_CHANGE_DEL))) |		\
126*663afb9bSAndroid Build Coastguard Worker 	    (((c)->read_change&(EV_CHANGE_ADD|EV_CHANGE_DEL)) << 2) |	\
127*663afb9bSAndroid Build Coastguard Worker 	    (((c)->write_change&(EV_CHANGE_ADD|EV_CHANGE_DEL)) << 4) |	\
128*663afb9bSAndroid Build Coastguard Worker 	    (((c)->old_events&(EV_READ|EV_WRITE)) << 5) |		\
129*663afb9bSAndroid Build Coastguard Worker 	    (((c)->old_events&(EV_CLOSED)) << 1)				\
130*663afb9bSAndroid Build Coastguard Worker 	    )
131*663afb9bSAndroid Build Coastguard Worker 
132*663afb9bSAndroid Build Coastguard Worker #if EV_READ != 2 || EV_WRITE != 4 || EV_CLOSED != 0x80 || EV_CHANGE_ADD != 1 || EV_CHANGE_DEL != 2
133*663afb9bSAndroid Build Coastguard Worker #error "Libevent's internals changed!  Regenerate the op_table in epolltable-internal.h"
134*663afb9bSAndroid Build Coastguard Worker #endif
135*663afb9bSAndroid Build Coastguard Worker 
136*663afb9bSAndroid Build Coastguard Worker static const struct operation {
137*663afb9bSAndroid Build Coastguard Worker 	int events;
138*663afb9bSAndroid Build Coastguard Worker 	int op;
139*663afb9bSAndroid Build Coastguard Worker } epoll_op_table[] = {
140*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:  0, read:  0, close:  0 */
141*663afb9bSAndroid Build Coastguard Worker 	{ 0, 0 },
142*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:  0, read:  0, close:add */
143*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_ADD },
144*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:  0, read:  0, close:del */
145*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_DEL },
146*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:  0, read:  0, close:xxx */
147*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
148*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:  0, read:add, close:  0 */
149*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_ADD },
150*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:  0, read:add, close:add */
151*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_ADD },
152*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:  0, read:add, close:del */
153*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_ADD },
154*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:  0, read:add, close:xxx */
155*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
156*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:  0, read:del, close:  0 */
157*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_DEL },
158*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:  0, read:del, close:add */
159*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_ADD },
160*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:  0, read:del, close:del */
161*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_DEL },
162*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:  0, read:del, close:xxx */
163*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
164*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:  0, read:xxx, close:  0 */
165*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
166*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:  0, read:xxx, close:add */
167*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
168*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:  0, read:xxx, close:del */
169*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
170*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:  0, read:xxx, close:xxx */
171*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
172*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:add, read:  0, close:  0 */
173*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_ADD },
174*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:add, read:  0, close:add */
175*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_ADD },
176*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:add, read:  0, close:del */
177*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_ADD },
178*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:add, read:  0, close:xxx */
179*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
180*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:add, read:add, close:  0 */
181*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_ADD },
182*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:add, read:add, close:add */
183*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_ADD },
184*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:add, read:add, close:del */
185*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_ADD },
186*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:add, read:add, close:xxx */
187*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
188*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:add, read:del, close:  0 */
189*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_ADD },
190*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:add, read:del, close:add */
191*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_ADD },
192*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:add, read:del, close:del */
193*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_ADD },
194*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:add, read:del, close:xxx */
195*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
196*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:add, read:xxx, close:  0 */
197*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
198*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:add, read:xxx, close:add */
199*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
200*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:add, read:xxx, close:del */
201*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
202*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:add, read:xxx, close:xxx */
203*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
204*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:del, read:  0, close:  0 */
205*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_DEL },
206*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:del, read:  0, close:add */
207*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_ADD },
208*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:del, read:  0, close:del */
209*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
210*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:del, read:  0, close:xxx */
211*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
212*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:del, read:add, close:  0 */
213*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_ADD },
214*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:del, read:add, close:add */
215*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_ADD },
216*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:del, read:add, close:del */
217*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_ADD },
218*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:del, read:add, close:xxx */
219*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
220*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:del, read:del, close:  0 */
221*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_DEL },
222*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:del, read:del, close:add */
223*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_ADD },
224*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:del, read:del, close:del */
225*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
226*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:del, read:del, close:xxx */
227*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
228*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:del, read:xxx, close:  0 */
229*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
230*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:del, read:xxx, close:add */
231*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
232*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:del, read:xxx, close:del */
233*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
234*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:del, read:xxx, close:xxx */
235*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
236*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:xxx, read:  0, close:  0 */
237*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
238*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:xxx, read:  0, close:add */
239*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
240*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:xxx, read:  0, close:del */
241*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
242*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:xxx, read:  0, close:xxx */
243*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
244*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:xxx, read:add, close:  0 */
245*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
246*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:xxx, read:add, close:add */
247*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
248*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:xxx, read:add, close:del */
249*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
250*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:xxx, read:add, close:xxx */
251*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
252*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:xxx, read:del, close:  0 */
253*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
254*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:xxx, read:del, close:add */
255*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
256*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:xxx, read:del, close:del */
257*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
258*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:xxx, read:del, close:xxx */
259*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
260*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:xxx, read:xxx, close:  0 */
261*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
262*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:xxx, read:xxx, close:add */
263*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
264*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:xxx, read:xxx, close:del */
265*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
266*663afb9bSAndroid Build Coastguard Worker 	/* old=  0, write:xxx, read:xxx, close:xxx */
267*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
268*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:  0, read:  0, close:  0 */
269*663afb9bSAndroid Build Coastguard Worker 	{ 0, 0 },
270*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:  0, read:  0, close:add */
271*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
272*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:  0, read:  0, close:del */
273*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
274*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:  0, read:  0, close:xxx */
275*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
276*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:  0, read:add, close:  0 */
277*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
278*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:  0, read:add, close:add */
279*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
280*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:  0, read:add, close:del */
281*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
282*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:  0, read:add, close:xxx */
283*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
284*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:  0, read:del, close:  0 */
285*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_DEL },
286*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:  0, read:del, close:add */
287*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
288*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:  0, read:del, close:del */
289*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_DEL },
290*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:  0, read:del, close:xxx */
291*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
292*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:  0, read:xxx, close:  0 */
293*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
294*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:  0, read:xxx, close:add */
295*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
296*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:  0, read:xxx, close:del */
297*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
298*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:  0, read:xxx, close:xxx */
299*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
300*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:add, read:  0, close:  0 */
301*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
302*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:add, read:  0, close:add */
303*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
304*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:add, read:  0, close:del */
305*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
306*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:add, read:  0, close:xxx */
307*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
308*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:add, read:add, close:  0 */
309*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
310*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:add, read:add, close:add */
311*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
312*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:add, read:add, close:del */
313*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
314*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:add, read:add, close:xxx */
315*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
316*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:add, read:del, close:  0 */
317*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
318*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:add, read:del, close:add */
319*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
320*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:add, read:del, close:del */
321*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
322*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:add, read:del, close:xxx */
323*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
324*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:add, read:xxx, close:  0 */
325*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
326*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:add, read:xxx, close:add */
327*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
328*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:add, read:xxx, close:del */
329*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
330*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:add, read:xxx, close:xxx */
331*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
332*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:del, read:  0, close:  0 */
333*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
334*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:del, read:  0, close:add */
335*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
336*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:del, read:  0, close:del */
337*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
338*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:del, read:  0, close:xxx */
339*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
340*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:del, read:add, close:  0 */
341*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
342*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:del, read:add, close:add */
343*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
344*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:del, read:add, close:del */
345*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
346*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:del, read:add, close:xxx */
347*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
348*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:del, read:del, close:  0 */
349*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_DEL },
350*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:del, read:del, close:add */
351*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
352*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:del, read:del, close:del */
353*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
354*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:del, read:del, close:xxx */
355*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
356*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:del, read:xxx, close:  0 */
357*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
358*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:del, read:xxx, close:add */
359*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
360*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:del, read:xxx, close:del */
361*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
362*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:del, read:xxx, close:xxx */
363*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
364*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:xxx, read:  0, close:  0 */
365*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
366*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:xxx, read:  0, close:add */
367*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
368*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:xxx, read:  0, close:del */
369*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
370*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:xxx, read:  0, close:xxx */
371*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
372*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:xxx, read:add, close:  0 */
373*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
374*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:xxx, read:add, close:add */
375*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
376*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:xxx, read:add, close:del */
377*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
378*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:xxx, read:add, close:xxx */
379*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
380*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:xxx, read:del, close:  0 */
381*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
382*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:xxx, read:del, close:add */
383*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
384*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:xxx, read:del, close:del */
385*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
386*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:xxx, read:del, close:xxx */
387*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
388*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:xxx, read:xxx, close:  0 */
389*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
390*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:xxx, read:xxx, close:add */
391*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
392*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:xxx, read:xxx, close:del */
393*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
394*663afb9bSAndroid Build Coastguard Worker 	/* old=  r, write:xxx, read:xxx, close:xxx */
395*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
396*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:  0, read:  0, close:  0 */
397*663afb9bSAndroid Build Coastguard Worker 	{ 0, 0 },
398*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:  0, read:  0, close:add */
399*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
400*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:  0, read:  0, close:del */
401*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
402*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:  0, read:  0, close:xxx */
403*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
404*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:  0, read:add, close:  0 */
405*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
406*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:  0, read:add, close:add */
407*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
408*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:  0, read:add, close:del */
409*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
410*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:  0, read:add, close:xxx */
411*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
412*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:  0, read:del, close:  0 */
413*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
414*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:  0, read:del, close:add */
415*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
416*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:  0, read:del, close:del */
417*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
418*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:  0, read:del, close:xxx */
419*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
420*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:  0, read:xxx, close:  0 */
421*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
422*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:  0, read:xxx, close:add */
423*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
424*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:  0, read:xxx, close:del */
425*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
426*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:  0, read:xxx, close:xxx */
427*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
428*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:add, read:  0, close:  0 */
429*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
430*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:add, read:  0, close:add */
431*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
432*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:add, read:  0, close:del */
433*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
434*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:add, read:  0, close:xxx */
435*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
436*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:add, read:add, close:  0 */
437*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
438*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:add, read:add, close:add */
439*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
440*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:add, read:add, close:del */
441*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
442*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:add, read:add, close:xxx */
443*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
444*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:add, read:del, close:  0 */
445*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
446*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:add, read:del, close:add */
447*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
448*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:add, read:del, close:del */
449*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
450*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:add, read:del, close:xxx */
451*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
452*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:add, read:xxx, close:  0 */
453*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
454*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:add, read:xxx, close:add */
455*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
456*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:add, read:xxx, close:del */
457*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
458*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:add, read:xxx, close:xxx */
459*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
460*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:del, read:  0, close:  0 */
461*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_DEL },
462*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:del, read:  0, close:add */
463*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
464*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:del, read:  0, close:del */
465*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
466*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:del, read:  0, close:xxx */
467*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
468*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:del, read:add, close:  0 */
469*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
470*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:del, read:add, close:add */
471*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
472*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:del, read:add, close:del */
473*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
474*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:del, read:add, close:xxx */
475*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
476*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:del, read:del, close:  0 */
477*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_DEL },
478*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:del, read:del, close:add */
479*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
480*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:del, read:del, close:del */
481*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
482*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:del, read:del, close:xxx */
483*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
484*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:del, read:xxx, close:  0 */
485*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
486*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:del, read:xxx, close:add */
487*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
488*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:del, read:xxx, close:del */
489*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
490*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:del, read:xxx, close:xxx */
491*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
492*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:xxx, read:  0, close:  0 */
493*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
494*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:xxx, read:  0, close:add */
495*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
496*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:xxx, read:  0, close:del */
497*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
498*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:xxx, read:  0, close:xxx */
499*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
500*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:xxx, read:add, close:  0 */
501*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
502*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:xxx, read:add, close:add */
503*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
504*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:xxx, read:add, close:del */
505*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
506*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:xxx, read:add, close:xxx */
507*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
508*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:xxx, read:del, close:  0 */
509*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
510*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:xxx, read:del, close:add */
511*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
512*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:xxx, read:del, close:del */
513*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
514*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:xxx, read:del, close:xxx */
515*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
516*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:xxx, read:xxx, close:  0 */
517*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
518*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:xxx, read:xxx, close:add */
519*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
520*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:xxx, read:xxx, close:del */
521*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
522*663afb9bSAndroid Build Coastguard Worker 	/* old=  w, write:xxx, read:xxx, close:xxx */
523*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
524*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:  0, read:  0, close:  0 */
525*663afb9bSAndroid Build Coastguard Worker 	{ 0, 0 },
526*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:  0, read:  0, close:add */
527*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
528*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:  0, read:  0, close:del */
529*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
530*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:  0, read:  0, close:xxx */
531*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
532*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:  0, read:add, close:  0 */
533*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
534*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:  0, read:add, close:add */
535*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
536*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:  0, read:add, close:del */
537*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
538*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:  0, read:add, close:xxx */
539*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
540*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:  0, read:del, close:  0 */
541*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
542*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:  0, read:del, close:add */
543*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
544*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:  0, read:del, close:del */
545*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
546*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:  0, read:del, close:xxx */
547*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
548*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:  0, read:xxx, close:  0 */
549*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
550*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:  0, read:xxx, close:add */
551*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
552*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:  0, read:xxx, close:del */
553*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
554*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:  0, read:xxx, close:xxx */
555*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
556*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:add, read:  0, close:  0 */
557*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
558*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:add, read:  0, close:add */
559*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
560*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:add, read:  0, close:del */
561*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
562*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:add, read:  0, close:xxx */
563*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
564*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:add, read:add, close:  0 */
565*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
566*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:add, read:add, close:add */
567*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
568*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:add, read:add, close:del */
569*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
570*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:add, read:add, close:xxx */
571*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
572*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:add, read:del, close:  0 */
573*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
574*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:add, read:del, close:add */
575*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
576*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:add, read:del, close:del */
577*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
578*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:add, read:del, close:xxx */
579*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
580*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:add, read:xxx, close:  0 */
581*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
582*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:add, read:xxx, close:add */
583*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
584*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:add, read:xxx, close:del */
585*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
586*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:add, read:xxx, close:xxx */
587*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
588*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:del, read:  0, close:  0 */
589*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
590*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:del, read:  0, close:add */
591*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
592*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:del, read:  0, close:del */
593*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
594*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:del, read:  0, close:xxx */
595*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
596*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:del, read:add, close:  0 */
597*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
598*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:del, read:add, close:add */
599*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
600*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:del, read:add, close:del */
601*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
602*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:del, read:add, close:xxx */
603*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
604*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:del, read:del, close:  0 */
605*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_DEL },
606*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:del, read:del, close:add */
607*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
608*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:del, read:del, close:del */
609*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
610*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:del, read:del, close:xxx */
611*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
612*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:del, read:xxx, close:  0 */
613*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
614*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:del, read:xxx, close:add */
615*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
616*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:del, read:xxx, close:del */
617*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
618*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:del, read:xxx, close:xxx */
619*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
620*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:xxx, read:  0, close:  0 */
621*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
622*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:xxx, read:  0, close:add */
623*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
624*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:xxx, read:  0, close:del */
625*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
626*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:xxx, read:  0, close:xxx */
627*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
628*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:xxx, read:add, close:  0 */
629*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
630*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:xxx, read:add, close:add */
631*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
632*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:xxx, read:add, close:del */
633*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
634*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:xxx, read:add, close:xxx */
635*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
636*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:xxx, read:del, close:  0 */
637*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
638*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:xxx, read:del, close:add */
639*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
640*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:xxx, read:del, close:del */
641*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
642*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:xxx, read:del, close:xxx */
643*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
644*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:xxx, read:xxx, close:  0 */
645*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
646*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:xxx, read:xxx, close:add */
647*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
648*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:xxx, read:xxx, close:del */
649*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
650*663afb9bSAndroid Build Coastguard Worker 	/* old= rw, write:xxx, read:xxx, close:xxx */
651*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
652*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:  0, read:  0, close:  0 */
653*663afb9bSAndroid Build Coastguard Worker 	{ 0, 0 },
654*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:  0, read:  0, close:add */
655*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
656*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:  0, read:  0, close:del */
657*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_DEL },
658*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:  0, read:  0, close:xxx */
659*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
660*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:  0, read:add, close:  0 */
661*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
662*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:  0, read:add, close:add */
663*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
664*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:  0, read:add, close:del */
665*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
666*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:  0, read:add, close:xxx */
667*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
668*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:  0, read:del, close:  0 */
669*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
670*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:  0, read:del, close:add */
671*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
672*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:  0, read:del, close:del */
673*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_DEL },
674*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:  0, read:del, close:xxx */
675*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
676*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:  0, read:xxx, close:  0 */
677*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
678*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:  0, read:xxx, close:add */
679*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
680*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:  0, read:xxx, close:del */
681*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
682*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:  0, read:xxx, close:xxx */
683*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
684*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:add, read:  0, close:  0 */
685*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
686*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:add, read:  0, close:add */
687*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
688*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:add, read:  0, close:del */
689*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
690*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:add, read:  0, close:xxx */
691*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
692*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:add, read:add, close:  0 */
693*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
694*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:add, read:add, close:add */
695*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
696*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:add, read:add, close:del */
697*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
698*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:add, read:add, close:xxx */
699*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
700*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:add, read:del, close:  0 */
701*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
702*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:add, read:del, close:add */
703*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
704*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:add, read:del, close:del */
705*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
706*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:add, read:del, close:xxx */
707*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
708*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:add, read:xxx, close:  0 */
709*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
710*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:add, read:xxx, close:add */
711*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
712*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:add, read:xxx, close:del */
713*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
714*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:add, read:xxx, close:xxx */
715*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
716*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:del, read:  0, close:  0 */
717*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
718*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:del, read:  0, close:add */
719*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
720*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:del, read:  0, close:del */
721*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
722*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:del, read:  0, close:xxx */
723*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
724*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:del, read:add, close:  0 */
725*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
726*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:del, read:add, close:add */
727*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
728*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:del, read:add, close:del */
729*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
730*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:del, read:add, close:xxx */
731*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
732*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:del, read:del, close:  0 */
733*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
734*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:del, read:del, close:add */
735*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
736*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:del, read:del, close:del */
737*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
738*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:del, read:del, close:xxx */
739*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
740*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:del, read:xxx, close:  0 */
741*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
742*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:del, read:xxx, close:add */
743*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
744*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:del, read:xxx, close:del */
745*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
746*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:del, read:xxx, close:xxx */
747*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
748*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:xxx, read:  0, close:  0 */
749*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
750*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:xxx, read:  0, close:add */
751*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
752*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:xxx, read:  0, close:del */
753*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
754*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:xxx, read:  0, close:xxx */
755*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
756*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:xxx, read:add, close:  0 */
757*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
758*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:xxx, read:add, close:add */
759*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
760*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:xxx, read:add, close:del */
761*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
762*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:xxx, read:add, close:xxx */
763*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
764*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:xxx, read:del, close:  0 */
765*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
766*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:xxx, read:del, close:add */
767*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
768*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:xxx, read:del, close:del */
769*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
770*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:xxx, read:del, close:xxx */
771*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
772*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:xxx, read:xxx, close:  0 */
773*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
774*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:xxx, read:xxx, close:add */
775*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
776*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:xxx, read:xxx, close:del */
777*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
778*663afb9bSAndroid Build Coastguard Worker 	/* old=  c, write:xxx, read:xxx, close:xxx */
779*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
780*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:  0, read:  0, close:  0 */
781*663afb9bSAndroid Build Coastguard Worker 	{ 0, 0 },
782*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:  0, read:  0, close:add */
783*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
784*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:  0, read:  0, close:del */
785*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
786*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:  0, read:  0, close:xxx */
787*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
788*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:  0, read:add, close:  0 */
789*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
790*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:  0, read:add, close:add */
791*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
792*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:  0, read:add, close:del */
793*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
794*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:  0, read:add, close:xxx */
795*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
796*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:  0, read:del, close:  0 */
797*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
798*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:  0, read:del, close:add */
799*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
800*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:  0, read:del, close:del */
801*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_DEL },
802*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:  0, read:del, close:xxx */
803*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
804*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:  0, read:xxx, close:  0 */
805*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
806*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:  0, read:xxx, close:add */
807*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
808*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:  0, read:xxx, close:del */
809*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
810*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:  0, read:xxx, close:xxx */
811*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
812*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:add, read:  0, close:  0 */
813*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
814*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:add, read:  0, close:add */
815*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
816*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:add, read:  0, close:del */
817*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
818*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:add, read:  0, close:xxx */
819*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
820*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:add, read:add, close:  0 */
821*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
822*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:add, read:add, close:add */
823*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
824*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:add, read:add, close:del */
825*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
826*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:add, read:add, close:xxx */
827*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
828*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:add, read:del, close:  0 */
829*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
830*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:add, read:del, close:add */
831*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
832*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:add, read:del, close:del */
833*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
834*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:add, read:del, close:xxx */
835*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
836*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:add, read:xxx, close:  0 */
837*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
838*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:add, read:xxx, close:add */
839*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
840*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:add, read:xxx, close:del */
841*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
842*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:add, read:xxx, close:xxx */
843*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
844*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:del, read:  0, close:  0 */
845*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
846*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:del, read:  0, close:add */
847*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
848*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:del, read:  0, close:del */
849*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
850*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:del, read:  0, close:xxx */
851*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
852*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:del, read:add, close:  0 */
853*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
854*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:del, read:add, close:add */
855*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
856*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:del, read:add, close:del */
857*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
858*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:del, read:add, close:xxx */
859*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
860*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:del, read:del, close:  0 */
861*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
862*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:del, read:del, close:add */
863*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
864*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:del, read:del, close:del */
865*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
866*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:del, read:del, close:xxx */
867*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
868*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:del, read:xxx, close:  0 */
869*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
870*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:del, read:xxx, close:add */
871*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
872*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:del, read:xxx, close:del */
873*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
874*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:del, read:xxx, close:xxx */
875*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
876*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:xxx, read:  0, close:  0 */
877*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
878*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:xxx, read:  0, close:add */
879*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
880*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:xxx, read:  0, close:del */
881*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
882*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:xxx, read:  0, close:xxx */
883*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
884*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:xxx, read:add, close:  0 */
885*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
886*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:xxx, read:add, close:add */
887*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
888*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:xxx, read:add, close:del */
889*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
890*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:xxx, read:add, close:xxx */
891*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
892*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:xxx, read:del, close:  0 */
893*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
894*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:xxx, read:del, close:add */
895*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
896*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:xxx, read:del, close:del */
897*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
898*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:xxx, read:del, close:xxx */
899*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
900*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:xxx, read:xxx, close:  0 */
901*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
902*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:xxx, read:xxx, close:add */
903*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
904*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:xxx, read:xxx, close:del */
905*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
906*663afb9bSAndroid Build Coastguard Worker 	/* old= cr, write:xxx, read:xxx, close:xxx */
907*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
908*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:  0, read:  0, close:  0 */
909*663afb9bSAndroid Build Coastguard Worker 	{ 0, 0 },
910*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:  0, read:  0, close:add */
911*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
912*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:  0, read:  0, close:del */
913*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
914*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:  0, read:  0, close:xxx */
915*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
916*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:  0, read:add, close:  0 */
917*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
918*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:  0, read:add, close:add */
919*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
920*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:  0, read:add, close:del */
921*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
922*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:  0, read:add, close:xxx */
923*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
924*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:  0, read:del, close:  0 */
925*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
926*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:  0, read:del, close:add */
927*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
928*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:  0, read:del, close:del */
929*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
930*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:  0, read:del, close:xxx */
931*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
932*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:  0, read:xxx, close:  0 */
933*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
934*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:  0, read:xxx, close:add */
935*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
936*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:  0, read:xxx, close:del */
937*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
938*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:  0, read:xxx, close:xxx */
939*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
940*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:add, read:  0, close:  0 */
941*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
942*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:add, read:  0, close:add */
943*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
944*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:add, read:  0, close:del */
945*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
946*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:add, read:  0, close:xxx */
947*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
948*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:add, read:add, close:  0 */
949*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
950*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:add, read:add, close:add */
951*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
952*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:add, read:add, close:del */
953*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
954*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:add, read:add, close:xxx */
955*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
956*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:add, read:del, close:  0 */
957*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
958*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:add, read:del, close:add */
959*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
960*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:add, read:del, close:del */
961*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
962*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:add, read:del, close:xxx */
963*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
964*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:add, read:xxx, close:  0 */
965*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
966*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:add, read:xxx, close:add */
967*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
968*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:add, read:xxx, close:del */
969*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
970*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:add, read:xxx, close:xxx */
971*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
972*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:del, read:  0, close:  0 */
973*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
974*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:del, read:  0, close:add */
975*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
976*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:del, read:  0, close:del */
977*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
978*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:del, read:  0, close:xxx */
979*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
980*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:del, read:add, close:  0 */
981*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
982*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:del, read:add, close:add */
983*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
984*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:del, read:add, close:del */
985*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
986*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:del, read:add, close:xxx */
987*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
988*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:del, read:del, close:  0 */
989*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
990*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:del, read:del, close:add */
991*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
992*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:del, read:del, close:del */
993*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
994*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:del, read:del, close:xxx */
995*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
996*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:del, read:xxx, close:  0 */
997*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
998*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:del, read:xxx, close:add */
999*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1000*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:del, read:xxx, close:del */
1001*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1002*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:del, read:xxx, close:xxx */
1003*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1004*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:xxx, read:  0, close:  0 */
1005*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1006*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:xxx, read:  0, close:add */
1007*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1008*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:xxx, read:  0, close:del */
1009*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1010*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:xxx, read:  0, close:xxx */
1011*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1012*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:xxx, read:add, close:  0 */
1013*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1014*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:xxx, read:add, close:add */
1015*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1016*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:xxx, read:add, close:del */
1017*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1018*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:xxx, read:add, close:xxx */
1019*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1020*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:xxx, read:del, close:  0 */
1021*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1022*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:xxx, read:del, close:add */
1023*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1024*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:xxx, read:del, close:del */
1025*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1026*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:xxx, read:del, close:xxx */
1027*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1028*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:xxx, read:xxx, close:  0 */
1029*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1030*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:xxx, read:xxx, close:add */
1031*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1032*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:xxx, read:xxx, close:del */
1033*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1034*663afb9bSAndroid Build Coastguard Worker 	/* old= cw, write:xxx, read:xxx, close:xxx */
1035*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1036*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:  0, read:  0, close:  0 */
1037*663afb9bSAndroid Build Coastguard Worker 	{ 0, 0 },
1038*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:  0, read:  0, close:add */
1039*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1040*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:  0, read:  0, close:del */
1041*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
1042*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:  0, read:  0, close:xxx */
1043*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1044*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:  0, read:add, close:  0 */
1045*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1046*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:  0, read:add, close:add */
1047*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1048*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:  0, read:add, close:del */
1049*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
1050*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:  0, read:add, close:xxx */
1051*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1052*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:  0, read:del, close:  0 */
1053*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1054*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:  0, read:del, close:add */
1055*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1056*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:  0, read:del, close:del */
1057*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
1058*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:  0, read:del, close:xxx */
1059*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1060*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:  0, read:xxx, close:  0 */
1061*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1062*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:  0, read:xxx, close:add */
1063*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1064*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:  0, read:xxx, close:del */
1065*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1066*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:  0, read:xxx, close:xxx */
1067*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1068*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:add, read:  0, close:  0 */
1069*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1070*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:add, read:  0, close:add */
1071*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1072*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:add, read:  0, close:del */
1073*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
1074*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:add, read:  0, close:xxx */
1075*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1076*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:add, read:add, close:  0 */
1077*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1078*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:add, read:add, close:add */
1079*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1080*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:add, read:add, close:del */
1081*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT, EPOLL_CTL_MOD },
1082*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:add, read:add, close:xxx */
1083*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1084*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:add, read:del, close:  0 */
1085*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1086*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:add, read:del, close:add */
1087*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_MOD },
1088*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:add, read:del, close:del */
1089*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLOUT, EPOLL_CTL_MOD },
1090*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:add, read:del, close:xxx */
1091*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1092*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:add, read:xxx, close:  0 */
1093*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1094*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:add, read:xxx, close:add */
1095*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1096*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:add, read:xxx, close:del */
1097*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1098*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:add, read:xxx, close:xxx */
1099*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1100*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:del, read:  0, close:  0 */
1101*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
1102*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:del, read:  0, close:add */
1103*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
1104*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:del, read:  0, close:del */
1105*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
1106*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:del, read:  0, close:xxx */
1107*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1108*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:del, read:add, close:  0 */
1109*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
1110*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:del, read:add, close:add */
1111*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLRDHUP, EPOLL_CTL_MOD },
1112*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:del, read:add, close:del */
1113*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN, EPOLL_CTL_MOD },
1114*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:del, read:add, close:xxx */
1115*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1116*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:del, read:del, close:  0 */
1117*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
1118*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:del, read:del, close:add */
1119*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLRDHUP, EPOLL_CTL_MOD },
1120*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:del, read:del, close:del */
1121*663afb9bSAndroid Build Coastguard Worker 	{ EPOLLIN|EPOLLOUT|EPOLLRDHUP, EPOLL_CTL_DEL },
1122*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:del, read:del, close:xxx */
1123*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1124*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:del, read:xxx, close:  0 */
1125*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1126*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:del, read:xxx, close:add */
1127*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1128*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:del, read:xxx, close:del */
1129*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1130*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:del, read:xxx, close:xxx */
1131*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1132*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:xxx, read:  0, close:  0 */
1133*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1134*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:xxx, read:  0, close:add */
1135*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1136*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:xxx, read:  0, close:del */
1137*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1138*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:xxx, read:  0, close:xxx */
1139*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1140*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:xxx, read:add, close:  0 */
1141*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1142*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:xxx, read:add, close:add */
1143*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1144*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:xxx, read:add, close:del */
1145*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1146*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:xxx, read:add, close:xxx */
1147*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1148*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:xxx, read:del, close:  0 */
1149*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1150*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:xxx, read:del, close:add */
1151*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1152*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:xxx, read:del, close:del */
1153*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1154*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:xxx, read:del, close:xxx */
1155*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1156*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:xxx, read:xxx, close:  0 */
1157*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1158*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:xxx, read:xxx, close:add */
1159*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1160*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:xxx, read:xxx, close:del */
1161*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1162*663afb9bSAndroid Build Coastguard Worker 	/* old=crw, write:xxx, read:xxx, close:xxx */
1163*663afb9bSAndroid Build Coastguard Worker 	{ 0, 255 },
1164*663afb9bSAndroid Build Coastguard Worker };
1165*663afb9bSAndroid Build Coastguard Worker 
1166*663afb9bSAndroid Build Coastguard Worker #endif
1167