1*1f5207b7SJohn Levon{'accept4': [{'call': 'syncfs', 'reason': set([('fd', 'file')])},
2*1f5207b7SJohn Levon             {'call': 'vmsplice', 'reason': set([('fd', 'file')])},
3*1f5207b7SJohn Levon             {'call': 'pwritev64', 'reason': set([('fd', 'file')])},
4*1f5207b7SJohn Levon             {'call': 'fremovexattr', 'reason': set([('fd', 'file')])},
5*1f5207b7SJohn Levon             {'call': 'readahead', 'reason': set([('fd', 'file')])},
6*1f5207b7SJohn Levon             {'call': 'getdents', 'reason': set([('fd', 'file')])},
7*1f5207b7SJohn Levon             {'call': 'writev', 'reason': set([('fd', 'file')])},
8*1f5207b7SJohn Levon             {'call': 'preadv64', 'reason': set([('fd', 'file')])},
9*1f5207b7SJohn Levon             {'call': 'fchmod', 'reason': set([('fd', 'file')])},
10*1f5207b7SJohn Levon             {'call': 'pread64', 'reason': set([('fd', 'file')])},
11*1f5207b7SJohn Levon             {'call': 'signalfd4', 'reason': set([('fd', 'file')])},
12*1f5207b7SJohn Levon             {'call': 'read', 'reason': set([('fd', 'file')])},
13*1f5207b7SJohn Levon             {'call': 'fchown', 'reason': set([('fd', 'file')])},
14*1f5207b7SJohn Levon             {'call': 'mq_timedreceive', 'reason': set([('fd', 'file')])},
15*1f5207b7SJohn Levon             {'call': 'utime', 'reason': set([('fd', 'file')])},
16*1f5207b7SJohn Levon             {'call': 'fsync', 'reason': set([('fd', 'file')])},
17*1f5207b7SJohn Levon             {'call': 'bpf', 'reason': set([('fd', 'file')])},
18*1f5207b7SJohn Levon             {'call': 'recvfrom', 'reason': set([('fd', 'file')])},
19*1f5207b7SJohn Levon             {'call': 'fsetxattr', 'reason': set([('fd', 'file')])},
20*1f5207b7SJohn Levon             {'call': 'sendto', 'reason': set([('fd', 'file')])},
21*1f5207b7SJohn Levon             {'call': 'tee', 'reason': set([('fd', 'file')])},
22*1f5207b7SJohn Levon             {'call': 'sync_file_range', 'reason': set([('fd', 'file')])},
23*1f5207b7SJohn Levon             {'call': 'lseek', 'reason': set([('fd', 'file')])},
24*1f5207b7SJohn Levon             {'call': 'connect', 'reason': set([('fd', 'file')])},
25*1f5207b7SJohn Levon             {'call': 'getsockname', 'reason': set([('fd', 'file')])},
26*1f5207b7SJohn Levon             {'call': 'epoll_ctl', 'reason': set([('fd', 'file')])},
27*1f5207b7SJohn Levon             {'call': 'flock', 'reason': set([('fd', 'file')])},
28*1f5207b7SJohn Levon             {'call': 'pwritev', 'reason': set([('fd', 'file')])},
29*1f5207b7SJohn Levon             {'call': 'fchdir', 'reason': set([('fd', 'file')])},
30*1f5207b7SJohn Levon             {'call': 'accept4', 'reason': set([('fd', 'file')])},
31*1f5207b7SJohn Levon             {'call': 'old_readdir', 'reason': set([('fd', 'file')])},
32*1f5207b7SJohn Levon             {'call': 'inotify_rm_watch', 'reason': set([('fd', 'file')])},
33*1f5207b7SJohn Levon             {'call': 'utimensat', 'reason': set([('fd', 'file')])},
34*1f5207b7SJohn Levon             {'call': 'inotify_add_watch', 'reason': set([('fd', 'file')])},
35*1f5207b7SJohn Levon             {'call': 'preadv2', 'reason': set([('fd', 'file')])},
36*1f5207b7SJohn Levon             {'call': 'splice', 'reason': set([('fd', 'file')])},
37*1f5207b7SJohn Levon             {'call': 'ftruncate', 'reason': set([('fd', 'file')])},
38*1f5207b7SJohn Levon             {'call': 'preadv', 'reason': set([('fd', 'file')])},
39*1f5207b7SJohn Levon             {'call': 'getpeername', 'reason': set([('fd', 'file')])},
40*1f5207b7SJohn Levon             {'call': 'setsockopt', 'reason': set([('fd', 'file')])},
41*1f5207b7SJohn Levon             {'call': 'fcntl', 'reason': set([('fd', 'file')])},
42*1f5207b7SJohn Levon             {'call': 'ioctl', 'reason': set([('fd', 'file')])},
43*1f5207b7SJohn Levon             {'call': 'pwrite64', 'reason': set([('fd', 'file')])},
44*1f5207b7SJohn Levon             {'call': 'perf_event_open', 'reason': set([('fd', 'file')])},
45*1f5207b7SJohn Levon             {'call': 'pwritev64v2', 'reason': set([('fd', 'file')])},
46*1f5207b7SJohn Levon             {'call': 'futimesat', 'reason': set([('fd', 'file')])},
47*1f5207b7SJohn Levon             {'call': 'pwritev2', 'reason': set([('fd', 'file')])},
48*1f5207b7SJohn Levon             {'call': 'shutdown', 'reason': set([('fd', 'file')])},
49*1f5207b7SJohn Levon             {'call': 'getsockopt', 'reason': set([('fd', 'file')])},
50*1f5207b7SJohn Levon             {'call': 'mq_getsetattr', 'reason': set([('fd', 'file')])},
51*1f5207b7SJohn Levon             {'call': 'fdatasync', 'reason': set([('fd', 'file')])},
52*1f5207b7SJohn Levon             {'call': 'getdents64', 'reason': set([('fd', 'file')])},
53*1f5207b7SJohn Levon             {'call': 'listen', 'reason': set([('fd', 'file')])},
54*1f5207b7SJohn Levon             {'call': 'copy_file_range', 'reason': set([('fd', 'file')])},
55*1f5207b7SJohn Levon             {'call': 'mq_timedsend', 'reason': set([('fd', 'file')])},
56*1f5207b7SJohn Levon             {'call': 'fgetxattr', 'reason': set([('fd', 'file')])},
57*1f5207b7SJohn Levon             {'call': 'fcntl64', 'reason': set([('fd', 'file')])},
58*1f5207b7SJohn Levon             {'call': 'fallocate', 'reason': set([('fd', 'file')])},
59*1f5207b7SJohn Levon             {'call': 'epoll_wait', 'reason': set([('fd', 'file')])},
60*1f5207b7SJohn Levon             {'call': 'llseek', 'reason': set([('fd', 'file')])},
61*1f5207b7SJohn Levon             {'call': 'preadv64v2', 'reason': set([('fd', 'file')])},
62*1f5207b7SJohn Levon             {'call': 'readv', 'reason': set([('fd', 'file')])},
63*1f5207b7SJohn Levon             {'call': 'fstatfs', 'reason': set([('fd', 'file')])},
64*1f5207b7SJohn Levon             {'call': 'fstatfs64', 'reason': set([('fd', 'file')])},
65*1f5207b7SJohn Levon             {'call': 'write', 'reason': set([('fd', 'file')])},
66*1f5207b7SJohn Levon             {'call': 'mq_notify', 'reason': set([('fd', 'file')])},
67*1f5207b7SJohn Levon             {'call': 'sendfile', 'reason': set([('fd', 'file')])},
68*1f5207b7SJohn Levon             {'call': 'bind', 'reason': set([('fd', 'file')])},
69*1f5207b7SJohn Levon             {'call': 'flistxattr', 'reason': set([('fd', 'file')])},
70*1f5207b7SJohn Levon             {'call': 'sendfile64', 'reason': set([('fd', 'file')])}],
71*1f5207b7SJohn Levon 'acct': [{'call': 'eventfd2', 'reason': set([('file', 'f_mode')])},
72*1f5207b7SJohn Levon          {'call': 'swapoff', 'reason': set([('file', 'f_mode')])},
73*1f5207b7SJohn Levon          {'call': 'memfd_create', 'reason': set([('file', 'f_mode')])},
74*1f5207b7SJohn Levon          {'call': 'remap_file_pages', 'reason': set([('file', 'f_mode')])},
75*1f5207b7SJohn Levon          {'call': 'dup3', 'reason': set([('file', 'f_mode')])},
76*1f5207b7SJohn Levon          {'call': 'epoll_create1', 'reason': set([('file', 'f_mode')])},
77*1f5207b7SJohn Levon          {'call': 'epoll_ctl', 'reason': set([('file', 'f_mode')])},
78*1f5207b7SJohn Levon          {'call': 'flock', 'reason': set([('file', 'f_mode')])},
79*1f5207b7SJohn Levon          {'call': 'openat', 'reason': set([('file', 'f_mode')])},
80*1f5207b7SJohn Levon          {'call': 'uselib', 'reason': set([('file', 'f_mode')])},
81*1f5207b7SJohn Levon          {'call': 'accept4', 'reason': set([('file', 'f_mode')])},
82*1f5207b7SJohn Levon          {'call': 'socketpair', 'reason': set([('file', 'f_mode')])},
83*1f5207b7SJohn Levon          {'call': 'shmat', 'reason': set([('file', 'f_mode')])},
84*1f5207b7SJohn Levon          {'call': 'socket', 'reason': set([('file', 'f_mode')])},
85*1f5207b7SJohn Levon          {'call': 'pipe2', 'reason': set([('file', 'f_mode')])},
86*1f5207b7SJohn Levon          {'call': 'perf_event_open', 'reason': set([('file', 'f_mode')])},
87*1f5207b7SJohn Levon          {'call': 'shmdt', 'reason': set([('file', 'f_mode')])},
88*1f5207b7SJohn Levon          {'call': 'acct', 'reason': set([('file', 'f_mode')])},
89*1f5207b7SJohn Levon          {'call': 'open', 'reason': set([('file', 'f_mode')])},
90*1f5207b7SJohn Levon          {'call': 'dup', 'reason': set([('file', 'f_mode')])},
91*1f5207b7SJohn Levon          {'call': 'setns', 'reason': set([('file', 'f_mode')])},
92*1f5207b7SJohn Levon          {'call': 'shmctl', 'reason': set([('file', 'f_mode')])},
93*1f5207b7SJohn Levon          {'call': 'swapon', 'reason': set([('file', 'f_mode')])},
94*1f5207b7SJohn Levon          {'call': 'mmap_pgoff', 'reason': set([('file', 'f_mode')])},
95*1f5207b7SJohn Levon          {'call': 'mq_open', 'reason': set([('file', 'f_mode')])},
96*1f5207b7SJohn Levon          {'call': 'open_by_handle_at', 'reason': set([('file', 'f_mode')])}],
97*1f5207b7SJohn Levon 'alarm': [{'call': 'waitid',
98*1f5207b7SJohn Levon            'reason': set([('timeval', 'tv_sec'), ('timeval', 'tv_usec')])},
99*1f5207b7SJohn Levon           {'call': 'settimeofday',
100*1f5207b7SJohn Levon            'reason': set([('timeval', 'tv_sec'), ('timeval', 'tv_usec')])},
101*1f5207b7SJohn Levon           {'call': 'adjtimex',
102*1f5207b7SJohn Levon            'reason': set([('timeval', 'tv_sec'), ('timeval', 'tv_usec')])},
103*1f5207b7SJohn Levon           {'call': 'getitimer',
104*1f5207b7SJohn Levon            'reason': set([('timeval', 'tv_sec'), ('timeval', 'tv_usec')])},
105*1f5207b7SJohn Levon           {'call': 'select',
106*1f5207b7SJohn Levon            'reason': set([('timeval', 'tv_sec'), ('timeval', 'tv_usec')])},
107*1f5207b7SJohn Levon           {'call': 'wait4',
108*1f5207b7SJohn Levon            'reason': set([('timeval', 'tv_sec'), ('timeval', 'tv_usec')])},
109*1f5207b7SJohn Levon           {'call': 'getrusage',
110*1f5207b7SJohn Levon            'reason': set([('timeval', 'tv_sec'), ('timeval', 'tv_usec')])},
111*1f5207b7SJohn Levon           {'call': 'setitimer',
112*1f5207b7SJohn Levon            'reason': set([('timeval', 'tv_sec'), ('timeval', 'tv_usec')])},
113*1f5207b7SJohn Levon           {'call': 'clock_adjtime',
114*1f5207b7SJohn Levon            'reason': set([('timeval', 'tv_sec'), ('timeval', 'tv_usec')])},
115*1f5207b7SJohn Levon           {'call': 'alarm',
116*1f5207b7SJohn Levon            'reason': set([('timeval', 'tv_sec'), ('timeval', 'tv_usec')])},
117*1f5207b7SJohn Levon           {'call': 'ppoll',
118*1f5207b7SJohn Levon            'reason': set([('timeval', 'tv_sec'), ('timeval', 'tv_usec')])}],
119*1f5207b7SJohn Levon 'bind': [{'call': 'syncfs', 'reason': set([('fd', 'file')])},
120*1f5207b7SJohn Levon          {'call': 'vmsplice', 'reason': set([('fd', 'file')])},
121*1f5207b7SJohn Levon          {'call': 'pwritev64', 'reason': set([('fd', 'file')])},
122*1f5207b7SJohn Levon          {'call': 'fremovexattr', 'reason': set([('fd', 'file')])},
123*1f5207b7SJohn Levon          {'call': 'readahead', 'reason': set([('fd', 'file')])},
124*1f5207b7SJohn Levon          {'call': 'getdents', 'reason': set([('fd', 'file')])},
125*1f5207b7SJohn Levon          {'call': 'writev', 'reason': set([('fd', 'file')])},
126*1f5207b7SJohn Levon          {'call': 'preadv64', 'reason': set([('fd', 'file')])},
127*1f5207b7SJohn Levon          {'call': 'fchmod', 'reason': set([('fd', 'file')])},
128*1f5207b7SJohn Levon          {'call': 'pread64', 'reason': set([('fd', 'file')])},
129*1f5207b7SJohn Levon          {'call': 'signalfd4', 'reason': set([('fd', 'file')])},
130*1f5207b7SJohn Levon          {'call': 'read', 'reason': set([('fd', 'file')])},
131*1f5207b7SJohn Levon          {'call': 'fchown', 'reason': set([('fd', 'file')])},
132*1f5207b7SJohn Levon          {'call': 'mq_timedreceive', 'reason': set([('fd', 'file')])},
133*1f5207b7SJohn Levon          {'call': 'utime', 'reason': set([('fd', 'file')])},
134*1f5207b7SJohn Levon          {'call': 'fsync', 'reason': set([('fd', 'file')])},
135*1f5207b7SJohn Levon          {'call': 'bpf', 'reason': set([('fd', 'file')])},
136*1f5207b7SJohn Levon          {'call': 'recvfrom', 'reason': set([('fd', 'file')])},
137*1f5207b7SJohn Levon          {'call': 'fsetxattr', 'reason': set([('fd', 'file')])},
138*1f5207b7SJohn Levon          {'call': 'sendto', 'reason': set([('fd', 'file')])},
139*1f5207b7SJohn Levon          {'call': 'tee', 'reason': set([('fd', 'file')])},
140*1f5207b7SJohn Levon          {'call': 'sync_file_range', 'reason': set([('fd', 'file')])},
141*1f5207b7SJohn Levon          {'call': 'lseek', 'reason': set([('fd', 'file')])},
142*1f5207b7SJohn Levon          {'call': 'connect', 'reason': set([('fd', 'file')])},
143*1f5207b7SJohn Levon          {'call': 'getsockname', 'reason': set([('fd', 'file')])},
144*1f5207b7SJohn Levon          {'call': 'epoll_ctl', 'reason': set([('fd', 'file')])},
145*1f5207b7SJohn Levon          {'call': 'flock', 'reason': set([('fd', 'file')])},
146*1f5207b7SJohn Levon          {'call': 'pwritev', 'reason': set([('fd', 'file')])},
147*1f5207b7SJohn Levon          {'call': 'fchdir', 'reason': set([('fd', 'file')])},
148*1f5207b7SJohn Levon          {'call': 'accept4', 'reason': set([('fd', 'file')])},
149*1f5207b7SJohn Levon          {'call': 'old_readdir', 'reason': set([('fd', 'file')])},
150*1f5207b7SJohn Levon          {'call': 'inotify_rm_watch', 'reason': set([('fd', 'file')])},
151*1f5207b7SJohn Levon          {'call': 'utimensat', 'reason': set([('fd', 'file')])},
152*1f5207b7SJohn Levon          {'call': 'inotify_add_watch', 'reason': set([('fd', 'file')])},
153*1f5207b7SJohn Levon          {'call': 'preadv2', 'reason': set([('fd', 'file')])},
154*1f5207b7SJohn Levon          {'call': 'splice', 'reason': set([('fd', 'file')])},
155*1f5207b7SJohn Levon          {'call': 'ftruncate', 'reason': set([('fd', 'file')])},
156*1f5207b7SJohn Levon          {'call': 'preadv', 'reason': set([('fd', 'file')])},
157*1f5207b7SJohn Levon          {'call': 'getpeername', 'reason': set([('fd', 'file')])},
158*1f5207b7SJohn Levon          {'call': 'setsockopt', 'reason': set([('fd', 'file')])},
159*1f5207b7SJohn Levon          {'call': 'fcntl', 'reason': set([('fd', 'file')])},
160*1f5207b7SJohn Levon          {'call': 'ioctl', 'reason': set([('fd', 'file')])},
161*1f5207b7SJohn Levon          {'call': 'pwrite64', 'reason': set([('fd', 'file')])},
162*1f5207b7SJohn Levon          {'call': 'perf_event_open', 'reason': set([('fd', 'file')])},
163*1f5207b7SJohn Levon          {'call': 'pwritev64v2', 'reason': set([('fd', 'file')])},
164*1f5207b7SJohn Levon          {'call': 'futimesat', 'reason': set([('fd', 'file')])},
165*1f5207b7SJohn Levon          {'call': 'pwritev2', 'reason': set([('fd', 'file')])},
166*1f5207b7SJohn Levon          {'call': 'shutdown', 'reason': set([('fd', 'file')])},
167*1f5207b7SJohn Levon          {'call': 'getsockopt', 'reason': set([('fd', 'file')])},
168*1f5207b7SJohn Levon          {'call': 'mq_getsetattr', 'reason': set([('fd', 'file')])},
169*1f5207b7SJohn Levon          {'call': 'fdatasync', 'reason': set([('fd', 'file')])},
170*1f5207b7SJohn Levon          {'call': 'getdents64', 'reason': set([('fd', 'file')])},
171*1f5207b7SJohn Levon          {'call': 'listen', 'reason': set([('fd', 'file')])},
172*1f5207b7SJohn Levon          {'call': 'copy_file_range', 'reason': set([('fd', 'file')])},
173*1f5207b7SJohn Levon          {'call': 'mq_timedsend', 'reason': set([('fd', 'file')])},
174*1f5207b7SJohn Levon          {'call': 'fgetxattr', 'reason': set([('fd', 'file')])},
175*1f5207b7SJohn Levon          {'call': 'fcntl64', 'reason': set([('fd', 'file')])},
176*1f5207b7SJohn Levon          {'call': 'fallocate', 'reason': set([('fd', 'file')])},
177*1f5207b7SJohn Levon          {'call': 'epoll_wait', 'reason': set([('fd', 'file')])},
178*1f5207b7SJohn Levon          {'call': 'llseek', 'reason': set([('fd', 'file')])},
179*1f5207b7SJohn Levon          {'call': 'preadv64v2', 'reason': set([('fd', 'file')])},
180*1f5207b7SJohn Levon          {'call': 'readv', 'reason': set([('fd', 'file')])},
181*1f5207b7SJohn Levon          {'call': 'fstatfs', 'reason': set([('fd', 'file')])},
182*1f5207b7SJohn Levon          {'call': 'fstatfs64', 'reason': set([('fd', 'file')])},
183*1f5207b7SJohn Levon          {'call': 'write', 'reason': set([('fd', 'file')])},
184*1f5207b7SJohn Levon          {'call': 'mq_notify', 'reason': set([('fd', 'file')])},
185*1f5207b7SJohn Levon          {'call': 'sendfile', 'reason': set([('fd', 'file')])},
186*1f5207b7SJohn Levon          {'call': 'bind', 'reason': set([('fd', 'file')])},
187*1f5207b7SJohn Levon          {'call': 'flistxattr', 'reason': set([('fd', 'file')])},
188*1f5207b7SJohn Levon          {'call': 'sendfile64', 'reason': set([('fd', 'file')])}],
189*1f5207b7SJohn Levon 'bpf': [{'call': 'syncfs', 'reason': set([('fd', 'file')])},
190*1f5207b7SJohn Levon         {'call': 'keyctl', 'reason': set([('mm_segment_t', 'seg')])},
191*1f5207b7SJohn Levon         {'call': 'rt_sigtimedwait',
192*1f5207b7SJohn Levon          'reason': set([('mm_segment_t', 'seg')])},
193*1f5207b7SJohn Levon         {'call': 'vmsplice', 'reason': set([('fd', 'file')])},
194*1f5207b7SJohn Levon         {'call': 'msgrcv', 'reason': set([('mm_segment_t', 'seg')])},
195*1f5207b7SJohn Levon         {'call': 'eventfd2',
196*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
197*1f5207b7SJohn Levon         {'call': 'pwritev64', 'reason': set([('fd', 'file')])},
198*1f5207b7SJohn Levon         {'call': 'kill', 'reason': set([('mm_segment_t', 'seg')])},
199*1f5207b7SJohn Levon         {'call': 'swapoff',
200*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
201*1f5207b7SJohn Levon         {'call': 'fremovexattr', 'reason': set([('fd', 'file')])},
202*1f5207b7SJohn Levon         {'call': 'readahead', 'reason': set([('fd', 'file')])},
203*1f5207b7SJohn Levon         {'call': 'getdents', 'reason': set([('fd', 'file')])},
204*1f5207b7SJohn Levon         {'call': 'sched_getaffinity',
205*1f5207b7SJohn Levon          'reason': set([('mm_segment_t', 'seg')])},
206*1f5207b7SJohn Levon         {'call': 'writev', 'reason': set([('fd', 'file')])},
207*1f5207b7SJohn Levon         {'call': 'preadv64', 'reason': set([('fd', 'file')])},
208*1f5207b7SJohn Levon         {'call': 'sched_setparam', 'reason': set([('mm_segment_t', 'seg')])},
209*1f5207b7SJohn Levon         {'call': 'fchmod', 'reason': set([('fd', 'file')])},
210*1f5207b7SJohn Levon         {'call': 'pread64', 'reason': set([('fd', 'file')])},
211*1f5207b7SJohn Levon         {'call': 'signalfd4', 'reason': set([('fd', 'file')])},
212*1f5207b7SJohn Levon         {'call': 'memfd_create',
213*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
214*1f5207b7SJohn Levon         {'call': 'ioprio_set', 'reason': set([('mm_segment_t', 'seg')])},
215*1f5207b7SJohn Levon         {'call': 'remap_file_pages',
216*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
217*1f5207b7SJohn Levon         {'call': 'dup3',
218*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
219*1f5207b7SJohn Levon         {'call': 'read', 'reason': set([('fd', 'file')])},
220*1f5207b7SJohn Levon         {'call': 'getppid', 'reason': set([('mm_segment_t', 'seg')])},
221*1f5207b7SJohn Levon         {'call': 'fchown', 'reason': set([('fd', 'file')])},
222*1f5207b7SJohn Levon         {'call': 'ioperm', 'reason': set([('mm_segment_t', 'seg')])},
223*1f5207b7SJohn Levon         {'call': 'mq_timedreceive',
224*1f5207b7SJohn Levon          'reason': set([('fd', 'file'), ('mm_segment_t', 'seg')])},
225*1f5207b7SJohn Levon         {'call': 'capget', 'reason': set([('mm_segment_t', 'seg')])},
226*1f5207b7SJohn Levon         {'call': 'utime', 'reason': set([('fd', 'file')])},
227*1f5207b7SJohn Levon         {'call': 'sched_setaffinity',
228*1f5207b7SJohn Levon          'reason': set([('mm_segment_t', 'seg')])},
229*1f5207b7SJohn Levon         {'call': 'fsync', 'reason': set([('fd', 'file')])},
230*1f5207b7SJohn Levon         {'call': 'bpf',
231*1f5207b7SJohn Levon          'reason': set([('bpf_attr', 'bpf_fd'),
232*1f5207b7SJohn Levon                         ('bpf_attr', 'flags'),
233*1f5207b7SJohn Levon                         ('bpf_attr', 'insn_cnt'),
234*1f5207b7SJohn Levon                         ('bpf_attr', 'kern_version'),
235*1f5207b7SJohn Levon                         ('bpf_attr', 'prog_flags'),
236*1f5207b7SJohn Levon                         ('bpf_map', 'key_size'),
237*1f5207b7SJohn Levon                         ('bpf_map', 'map_type'),
238*1f5207b7SJohn Levon                         ('bpf_prog', 'aux'),
239*1f5207b7SJohn Levon                         ('fd', 'file')])},
240*1f5207b7SJohn Levon         {'call': 'signal', 'reason': set([('mm_segment_t', 'seg')])},
241*1f5207b7SJohn Levon         {'call': 'semtimedop', 'reason': set([('mm_segment_t', 'seg')])},
242*1f5207b7SJohn Levon         {'call': 'umount', 'reason': set([('mm_segment_t', 'seg')])},
243*1f5207b7SJohn Levon         {'call': 'recvfrom', 'reason': set([('fd', 'file')])},
244*1f5207b7SJohn Levon         {'call': 'fsetxattr', 'reason': set([('fd', 'file')])},
245*1f5207b7SJohn Levon         {'call': 'sendto', 'reason': set([('fd', 'file')])},
246*1f5207b7SJohn Levon         {'call': 'sched_rr_get_interval',
247*1f5207b7SJohn Levon          'reason': set([('mm_segment_t', 'seg')])},
248*1f5207b7SJohn Levon         {'call': 'epoll_create1',
249*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
250*1f5207b7SJohn Levon         {'call': 'tee', 'reason': set([('fd', 'file')])},
251*1f5207b7SJohn Levon         {'call': 'sync_file_range', 'reason': set([('fd', 'file')])},
252*1f5207b7SJohn Levon         {'call': 'lseek', 'reason': set([('fd', 'file')])},
253*1f5207b7SJohn Levon         {'call': 'connect', 'reason': set([('fd', 'file')])},
254*1f5207b7SJohn Levon         {'call': 'getsockname', 'reason': set([('fd', 'file')])},
255*1f5207b7SJohn Levon         {'call': 'epoll_ctl',
256*1f5207b7SJohn Levon          'reason': set([('fd', 'file'),
257*1f5207b7SJohn Levon                         ('file', 'f_op'),
258*1f5207b7SJohn Levon                         ('file', 'private_data')])},
259*1f5207b7SJohn Levon         {'call': 'flock',
260*1f5207b7SJohn Levon          'reason': set([('fd', 'file'),
261*1f5207b7SJohn Levon                         ('file', 'f_op'),
262*1f5207b7SJohn Levon                         ('file', 'private_data')])},
263*1f5207b7SJohn Levon         {'call': 'pwritev', 'reason': set([('fd', 'file')])},
264*1f5207b7SJohn Levon         {'call': 'fchdir', 'reason': set([('fd', 'file')])},
265*1f5207b7SJohn Levon         {'call': 'openat',
266*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
267*1f5207b7SJohn Levon         {'call': 'uselib',
268*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
269*1f5207b7SJohn Levon         {'call': 'rt_sigprocmask', 'reason': set([('mm_segment_t', 'seg')])},
270*1f5207b7SJohn Levon         {'call': 'accept4',
271*1f5207b7SJohn Levon          'reason': set([('fd', 'file'),
272*1f5207b7SJohn Levon                         ('file', 'f_op'),
273*1f5207b7SJohn Levon                         ('file', 'private_data')])},
274*1f5207b7SJohn Levon         {'call': 'setsid', 'reason': set([('mm_segment_t', 'seg')])},
275*1f5207b7SJohn Levon         {'call': 'sigaltstack', 'reason': set([('mm_segment_t', 'seg')])},
276*1f5207b7SJohn Levon         {'call': 'sched_setattr', 'reason': set([('mm_segment_t', 'seg')])},
277*1f5207b7SJohn Levon         {'call': 'old_readdir', 'reason': set([('fd', 'file')])},
278*1f5207b7SJohn Levon         {'call': 'inotify_rm_watch', 'reason': set([('fd', 'file')])},
279*1f5207b7SJohn Levon         {'call': 'socketpair',
280*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
281*1f5207b7SJohn Levon         {'call': 'utimensat', 'reason': set([('fd', 'file')])},
282*1f5207b7SJohn Levon         {'call': 'migrate_pages', 'reason': set([('mm_segment_t', 'seg')])},
283*1f5207b7SJohn Levon         {'call': 'getitimer', 'reason': set([('mm_segment_t', 'seg')])},
284*1f5207b7SJohn Levon         {'call': 'setpgid', 'reason': set([('mm_segment_t', 'seg')])},
285*1f5207b7SJohn Levon         {'call': 'inotify_add_watch', 'reason': set([('fd', 'file')])},
286*1f5207b7SJohn Levon         {'call': 'preadv2', 'reason': set([('fd', 'file')])},
287*1f5207b7SJohn Levon         {'call': 'splice', 'reason': set([('fd', 'file')])},
288*1f5207b7SJohn Levon         {'call': 'ftruncate', 'reason': set([('fd', 'file')])},
289*1f5207b7SJohn Levon         {'call': 'preadv', 'reason': set([('fd', 'file')])},
290*1f5207b7SJohn Levon         {'call': 'getpeername', 'reason': set([('fd', 'file')])},
291*1f5207b7SJohn Levon         {'call': 'getsid', 'reason': set([('mm_segment_t', 'seg')])},
292*1f5207b7SJohn Levon         {'call': 'shmat',
293*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
294*1f5207b7SJohn Levon         {'call': 'setsockopt', 'reason': set([('fd', 'file')])},
295*1f5207b7SJohn Levon         {'call': 'socket',
296*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
297*1f5207b7SJohn Levon         {'call': 'pipe2',
298*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
299*1f5207b7SJohn Levon         {'call': 'fcntl', 'reason': set([('fd', 'file')])},
300*1f5207b7SJohn Levon         {'call': 'ioctl', 'reason': set([('fd', 'file')])},
301*1f5207b7SJohn Levon         {'call': 'prlimit64', 'reason': set([('mm_segment_t', 'seg')])},
302*1f5207b7SJohn Levon         {'call': 'pwrite64', 'reason': set([('fd', 'file')])},
303*1f5207b7SJohn Levon         {'call': 'perf_event_open',
304*1f5207b7SJohn Levon          'reason': set([('bpf_prog', 'aux'),
305*1f5207b7SJohn Levon                         ('fd', 'file'),
306*1f5207b7SJohn Levon                         ('file', 'f_op'),
307*1f5207b7SJohn Levon                         ('file', 'private_data'),
308*1f5207b7SJohn Levon                         ('mm_segment_t', 'seg')])},
309*1f5207b7SJohn Levon         {'call': 'shmdt',
310*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
311*1f5207b7SJohn Levon         {'call': 'pwritev64v2', 'reason': set([('fd', 'file')])},
312*1f5207b7SJohn Levon         {'call': 'rt_sigaction', 'reason': set([('mm_segment_t', 'seg')])},
313*1f5207b7SJohn Levon         {'call': 'futimesat', 'reason': set([('fd', 'file')])},
314*1f5207b7SJohn Levon         {'call': 'getpgid', 'reason': set([('mm_segment_t', 'seg')])},
315*1f5207b7SJohn Levon         {'call': 'pwritev2', 'reason': set([('fd', 'file')])},
316*1f5207b7SJohn Levon         {'call': 'shutdown', 'reason': set([('fd', 'file')])},
317*1f5207b7SJohn Levon         {'call': 'acct',
318*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
319*1f5207b7SJohn Levon         {'call': 'open',
320*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
321*1f5207b7SJohn Levon         {'call': 'getsockopt', 'reason': set([('fd', 'file')])},
322*1f5207b7SJohn Levon         {'call': 'getpriority', 'reason': set([('mm_segment_t', 'seg')])},
323*1f5207b7SJohn Levon         {'call': 'sigaction', 'reason': set([('mm_segment_t', 'seg')])},
324*1f5207b7SJohn Levon         {'call': 'mq_getsetattr', 'reason': set([('fd', 'file')])},
325*1f5207b7SJohn Levon         {'call': 'dup',
326*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
327*1f5207b7SJohn Levon         {'call': 'fdatasync', 'reason': set([('fd', 'file')])},
328*1f5207b7SJohn Levon         {'call': 'setns',
329*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'),
330*1f5207b7SJohn Levon                         ('file', 'private_data'),
331*1f5207b7SJohn Levon                         ('mm_segment_t', 'seg')])},
332*1f5207b7SJohn Levon         {'call': 'getdents64', 'reason': set([('fd', 'file')])},
333*1f5207b7SJohn Levon         {'call': 'listen', 'reason': set([('fd', 'file')])},
334*1f5207b7SJohn Levon         {'call': 'fork', 'reason': set([('mm_segment_t', 'seg')])},
335*1f5207b7SJohn Levon         {'call': 'get_robust_list',
336*1f5207b7SJohn Levon          'reason': set([('mm_segment_t', 'seg')])},
337*1f5207b7SJohn Levon         {'call': 'copy_file_range', 'reason': set([('fd', 'file')])},
338*1f5207b7SJohn Levon         {'call': 'mq_timedsend',
339*1f5207b7SJohn Levon          'reason': set([('fd', 'file'), ('mm_segment_t', 'seg')])},
340*1f5207b7SJohn Levon         {'call': 'sched_getscheduler',
341*1f5207b7SJohn Levon          'reason': set([('mm_segment_t', 'seg')])},
342*1f5207b7SJohn Levon         {'call': 'fgetxattr', 'reason': set([('fd', 'file')])},
343*1f5207b7SJohn Levon         {'call': 'ptrace', 'reason': set([('mm_segment_t', 'seg')])},
344*1f5207b7SJohn Levon         {'call': 'shmctl',
345*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
346*1f5207b7SJohn Levon         {'call': 'fcntl64', 'reason': set([('fd', 'file')])},
347*1f5207b7SJohn Levon         {'call': 'swapon',
348*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
349*1f5207b7SJohn Levon         {'call': 'fallocate', 'reason': set([('fd', 'file')])},
350*1f5207b7SJohn Levon         {'call': 'epoll_wait', 'reason': set([('fd', 'file')])},
351*1f5207b7SJohn Levon         {'call': 'sched_getattr', 'reason': set([('mm_segment_t', 'seg')])},
352*1f5207b7SJohn Levon         {'call': 'getrusage', 'reason': set([('mm_segment_t', 'seg')])},
353*1f5207b7SJohn Levon         {'call': 'sched_setscheduler',
354*1f5207b7SJohn Levon          'reason': set([('mm_segment_t', 'seg')])},
355*1f5207b7SJohn Levon         {'call': 'setitimer', 'reason': set([('mm_segment_t', 'seg')])},
356*1f5207b7SJohn Levon         {'call': 'ioprio_get', 'reason': set([('mm_segment_t', 'seg')])},
357*1f5207b7SJohn Levon         {'call': 'vfork', 'reason': set([('mm_segment_t', 'seg')])},
358*1f5207b7SJohn Levon         {'call': 'llseek', 'reason': set([('fd', 'file')])},
359*1f5207b7SJohn Levon         {'call': 'mmap_pgoff',
360*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
361*1f5207b7SJohn Levon         {'call': 'preadv64v2', 'reason': set([('fd', 'file')])},
362*1f5207b7SJohn Levon         {'call': 'readv', 'reason': set([('fd', 'file')])},
363*1f5207b7SJohn Levon         {'call': 'prctl', 'reason': set([('mm_segment_t', 'seg')])},
364*1f5207b7SJohn Levon         {'call': 'move_pages', 'reason': set([('mm_segment_t', 'seg')])},
365*1f5207b7SJohn Levon         {'call': 'fstatfs', 'reason': set([('fd', 'file')])},
366*1f5207b7SJohn Levon         {'call': 'fstatfs64', 'reason': set([('fd', 'file')])},
367*1f5207b7SJohn Levon         {'call': 'write', 'reason': set([('fd', 'file')])},
368*1f5207b7SJohn Levon         {'call': 'setpriority', 'reason': set([('mm_segment_t', 'seg')])},
369*1f5207b7SJohn Levon         {'call': 'mq_notify', 'reason': set([('fd', 'file')])},
370*1f5207b7SJohn Levon         {'call': 'sendfile', 'reason': set([('fd', 'file')])},
371*1f5207b7SJohn Levon         {'call': 'clone', 'reason': set([('mm_segment_t', 'seg')])},
372*1f5207b7SJohn Levon         {'call': 'mq_open',
373*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
374*1f5207b7SJohn Levon         {'call': 'sched_getparam', 'reason': set([('mm_segment_t', 'seg')])},
375*1f5207b7SJohn Levon         {'call': 'open_by_handle_at',
376*1f5207b7SJohn Levon          'reason': set([('file', 'f_op'), ('file', 'private_data')])},
377*1f5207b7SJohn Levon         {'call': 'bind', 'reason': set([('fd', 'file')])},
378*1f5207b7SJohn Levon         {'call': 'flistxattr', 'reason': set([('fd', 'file')])},
379*1f5207b7SJohn Levon         {'call': 'sendfile64', 'reason': set([('fd', 'file')])}],
380*1f5207b7SJohn Levon 'brk': [{'call': 'swapoff',
381*1f5207b7SJohn Levon          'reason': set([('mm_struct', 'brk'),
382*1f5207b7SJohn Levon                         ('mm_struct', 'def_flags'),
383*1f5207b7SJohn Levon                         ('mm_struct', 'end_data'),
384*1f5207b7SJohn Levon                         ('mm_struct', 'start_brk'),
385*1f5207b7SJohn Levon                         ('mm_struct', 'start_data')])},
386*1f5207b7SJohn Levon         {'call': 'remap_file_pages',
387*1f5207b7SJohn Levon          'reason': set([('mm_struct', 'brk'),
388*1f5207b7SJohn Levon                         ('mm_struct', 'def_flags'),
389*1f5207b7SJohn Levon                         ('mm_struct', 'end_data'),
390*1f5207b7SJohn Levon                         ('mm_struct', 'start_brk'),
391*1f5207b7SJohn Levon                         ('mm_struct', 'start_data'),
392*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_flags'),
393*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_start')])},
394*1f5207b7SJohn Levon         {'call': 'io_getevents',
395*1f5207b7SJohn Levon          'reason': set([('mm_struct', 'brk'),
396*1f5207b7SJohn Levon                         ('mm_struct', 'def_flags'),
397*1f5207b7SJohn Levon                         ('mm_struct', 'end_data'),
398*1f5207b7SJohn Levon                         ('mm_struct', 'start_brk'),
399*1f5207b7SJohn Levon                         ('mm_struct', 'start_data')])},
400*1f5207b7SJohn Levon         {'call': 'migrate_pages',
401*1f5207b7SJohn Levon          'reason': set([('mm_struct', 'brk'),
402*1f5207b7SJohn Levon                         ('mm_struct', 'def_flags'),
403*1f5207b7SJohn Levon                         ('mm_struct', 'end_data'),
404*1f5207b7SJohn Levon                         ('mm_struct', 'start_brk'),
405*1f5207b7SJohn Levon                         ('mm_struct', 'start_data')])},
406*1f5207b7SJohn Levon         {'call': 'shmdt',
407*1f5207b7SJohn Levon          'reason': set([('mm_struct', 'brk'),
408*1f5207b7SJohn Levon                         ('mm_struct', 'def_flags'),
409*1f5207b7SJohn Levon                         ('mm_struct', 'end_data'),
410*1f5207b7SJohn Levon                         ('mm_struct', 'start_brk'),
411*1f5207b7SJohn Levon                         ('mm_struct', 'start_data'),
412*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_flags'),
413*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_start')])},
414*1f5207b7SJohn Levon         {'call': 'brk',
415*1f5207b7SJohn Levon          'reason': set([('mm_struct', 'brk'),
416*1f5207b7SJohn Levon                         ('mm_struct', 'def_flags'),
417*1f5207b7SJohn Levon                         ('mm_struct', 'end_data'),
418*1f5207b7SJohn Levon                         ('mm_struct', 'start_brk'),
419*1f5207b7SJohn Levon                         ('mm_struct', 'start_data'),
420*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_flags'),
421*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_start')])},
422*1f5207b7SJohn Levon         {'call': 'get_mempolicy',
423*1f5207b7SJohn Levon          'reason': set([('mm_struct', 'brk'),
424*1f5207b7SJohn Levon                         ('mm_struct', 'def_flags'),
425*1f5207b7SJohn Levon                         ('mm_struct', 'end_data'),
426*1f5207b7SJohn Levon                         ('mm_struct', 'start_brk'),
427*1f5207b7SJohn Levon                         ('mm_struct', 'start_data'),
428*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_flags'),
429*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_start')])},
430*1f5207b7SJohn Levon         {'call': 'munlockall',
431*1f5207b7SJohn Levon          'reason': set([('mm_struct', 'def_flags'),
432*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_flags'),
433*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_start')])},
434*1f5207b7SJohn Levon         {'call': 'pkey_mprotect',
435*1f5207b7SJohn Levon          'reason': set([('vm_area_struct', 'vm_flags'),
436*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_start')])},
437*1f5207b7SJohn Levon         {'call': 'madvise',
438*1f5207b7SJohn Levon          'reason': set([('vm_area_struct', 'vm_flags'),
439*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_start')])},
440*1f5207b7SJohn Levon         {'call': 'getrusage',
441*1f5207b7SJohn Levon          'reason': set([('mm_struct', 'brk'),
442*1f5207b7SJohn Levon                         ('mm_struct', 'def_flags'),
443*1f5207b7SJohn Levon                         ('mm_struct', 'end_data'),
444*1f5207b7SJohn Levon                         ('mm_struct', 'start_brk'),
445*1f5207b7SJohn Levon                         ('mm_struct', 'start_data')])},
446*1f5207b7SJohn Levon         {'call': 'io_setup',
447*1f5207b7SJohn Levon          'reason': set([('mm_struct', 'brk'),
448*1f5207b7SJohn Levon                         ('mm_struct', 'def_flags'),
449*1f5207b7SJohn Levon                         ('mm_struct', 'end_data'),
450*1f5207b7SJohn Levon                         ('mm_struct', 'start_brk'),
451*1f5207b7SJohn Levon                         ('mm_struct', 'start_data')])},
452*1f5207b7SJohn Levon         {'call': 'mprotect',
453*1f5207b7SJohn Levon          'reason': set([('vm_area_struct', 'vm_flags'),
454*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_start')])},
455*1f5207b7SJohn Levon         {'call': 'mremap',
456*1f5207b7SJohn Levon          'reason': set([('mm_struct', 'brk'),
457*1f5207b7SJohn Levon                         ('mm_struct', 'def_flags'),
458*1f5207b7SJohn Levon                         ('mm_struct', 'end_data'),
459*1f5207b7SJohn Levon                         ('mm_struct', 'start_brk'),
460*1f5207b7SJohn Levon                         ('mm_struct', 'start_data'),
461*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_flags'),
462*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_start')])},
463*1f5207b7SJohn Levon         {'call': 'io_destroy',
464*1f5207b7SJohn Levon          'reason': set([('mm_struct', 'brk'),
465*1f5207b7SJohn Levon                         ('mm_struct', 'def_flags'),
466*1f5207b7SJohn Levon                         ('mm_struct', 'end_data'),
467*1f5207b7SJohn Levon                         ('mm_struct', 'start_brk'),
468*1f5207b7SJohn Levon                         ('mm_struct', 'start_data')])},
469*1f5207b7SJohn Levon         {'call': 'mbind',
470*1f5207b7SJohn Levon          'reason': set([('mm_struct', 'brk'),
471*1f5207b7SJohn Levon                         ('mm_struct', 'def_flags'),
472*1f5207b7SJohn Levon                         ('mm_struct', 'end_data'),
473*1f5207b7SJohn Levon                         ('mm_struct', 'start_brk'),
474*1f5207b7SJohn Levon                         ('mm_struct', 'start_data')])},
475*1f5207b7SJohn Levon         {'call': 'prctl',
476*1f5207b7SJohn Levon          'reason': set([('mm_struct', 'brk'),
477*1f5207b7SJohn Levon                         ('mm_struct', 'def_flags'),
478*1f5207b7SJohn Levon                         ('mm_struct', 'end_data'),
479*1f5207b7SJohn Levon                         ('mm_struct', 'start_brk'),
480*1f5207b7SJohn Levon                         ('mm_struct', 'start_data'),
481*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_flags'),
482*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_start')])},
483*1f5207b7SJohn Levon         {'call': 'move_pages',
484*1f5207b7SJohn Levon          'reason': set([('mm_struct', 'brk'),
485*1f5207b7SJohn Levon                         ('mm_struct', 'def_flags'),
486*1f5207b7SJohn Levon                         ('mm_struct', 'end_data'),
487*1f5207b7SJohn Levon                         ('mm_struct', 'start_brk'),
488*1f5207b7SJohn Levon                         ('mm_struct', 'start_data')])},
489*1f5207b7SJohn Levon         {'call': 'modify_ldt',
490*1f5207b7SJohn Levon          'reason': set([('mm_struct', 'brk'),
491*1f5207b7SJohn Levon                         ('mm_struct', 'def_flags'),
492*1f5207b7SJohn Levon                         ('mm_struct', 'end_data'),
493*1f5207b7SJohn Levon                         ('mm_struct', 'start_brk'),
494*1f5207b7SJohn Levon                         ('mm_struct', 'start_data')])},
495*1f5207b7SJohn Levon         {'call': 'munlock',
496*1f5207b7SJohn Levon          'reason': set([('vm_area_struct', 'vm_flags'),
497*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_start')])},
498*1f5207b7SJohn Levon         {'call': 'mincore',
499*1f5207b7SJohn Levon          'reason': set([('mm_struct', 'brk'),
500*1f5207b7SJohn Levon                         ('mm_struct', 'def_flags'),
501*1f5207b7SJohn Levon                         ('mm_struct', 'end_data'),
502*1f5207b7SJohn Levon                         ('mm_struct', 'start_brk'),
503*1f5207b7SJohn Levon                         ('mm_struct', 'start_data'),
504*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_flags'),
505*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_start')])},
506*1f5207b7SJohn Levon         {'call': 'io_cancel',
507*1f5207b7SJohn Levon          'reason': set([('mm_struct', 'brk'),
508*1f5207b7SJohn Levon                         ('mm_struct', 'def_flags'),
509*1f5207b7SJohn Levon                         ('mm_struct', 'end_data'),
510*1f5207b7SJohn Levon                         ('mm_struct', 'start_brk'),
511*1f5207b7SJohn Levon                         ('mm_struct', 'start_data')])},
512*1f5207b7SJohn Levon         {'call': 'mlockall',
513*1f5207b7SJohn Levon          'reason': set([('mm_struct', 'def_flags'),
514*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_flags'),
515*1f5207b7SJohn Levon                         ('vm_area_struct', 'vm_start')])}],
516*1f5207b7SJohn Levon 'capset': [{'call': 'keyctl', 'reason': set([('task_struct', 'cred')])},
517*1f5207b7SJohn Levon            {'call': 'rt_sigtimedwait',
518*1f5207b7SJohn Levon             'reason': set([('task_struct', 'cred')])},
519*1f5207b7SJohn Levon            {'call': 'msgrcv', 'reason': set([('task_struct', 'cred')])},
520*1f5207b7SJohn Levon            {'call': 'kill', 'reason': set([('task_struct', 'cred')])},
521*1f5207b7SJohn Levon            {'call': 'sched_getaffinity',
522*1f5207b7SJohn Levon             'reason': set([('task_struct', 'cred')])},
523*1f5207b7SJohn Levon            {'call': 'sched_setparam',
524*1f5207b7SJohn Levon             'reason': set([('task_struct', 'cred')])},
525*1f5207b7SJohn Levon            {'call': 'ioprio_set', 'reason': set([('task_struct', 'cred')])},
526*1f5207b7SJohn Levon            {'call': 'getppid', 'reason': set([('task_struct', 'cred')])},
527*1f5207b7SJohn Levon            {'call': 'mq_timedreceive',
528*1f5207b7SJohn Levon             'reason': set([('task_struct', 'cred')])},
529*1f5207b7SJohn Levon            {'call': 'capget', 'reason': set([('task_struct', 'cred')])},
530*1f5207b7SJohn Levon            {'call': 'sched_setaffinity',
531*1f5207b7SJohn Levon             'reason': set([('task_struct', 'cred')])},
532*1f5207b7SJohn Levon            {'call': 'signal', 'reason': set([('task_struct', 'cred')])},
533*1f5207b7SJohn Levon            {'call': 'semtimedop', 'reason': set([('task_struct', 'cred')])},
534*1f5207b7SJohn Levon            {'call': 'umount', 'reason': set([('task_struct', 'cred')])},
535*1f5207b7SJohn Levon            {'call': 'sched_rr_get_interval',
536*1f5207b7SJohn Levon             'reason': set([('task_struct', 'cred')])},
537*1f5207b7SJohn Levon            {'call': 'rt_sigprocmask',
538*1f5207b7SJohn Levon             'reason': set([('task_struct', 'cred')])},
539*1f5207b7SJohn Levon            {'call': 'setsid', 'reason': set([('task_struct', 'cred')])},
540*1f5207b7SJohn Levon            {'call': 'sigaltstack', 'reason': set([('task_struct', 'cred')])},
541*1f5207b7SJohn Levon            {'call': 'sched_setattr',
542*1f5207b7SJohn Levon             'reason': set([('task_struct', 'cred')])},
543*1f5207b7SJohn Levon            {'call': 'migrate_pages',
544*1f5207b7SJohn Levon             'reason': set([('task_struct', 'cred')])},
545*1f5207b7SJohn Levon            {'call': 'getitimer', 'reason': set([('task_struct', 'cred')])},
546*1f5207b7SJohn Levon            {'call': 'setpgid', 'reason': set([('task_struct', 'cred')])},
547*1f5207b7SJohn Levon            {'call': 'getsid', 'reason': set([('task_struct', 'cred')])},
548*1f5207b7SJohn Levon            {'call': 'prlimit64', 'reason': set([('task_struct', 'cred')])},
549*1f5207b7SJohn Levon            {'call': 'perf_event_open',
550*1f5207b7SJohn Levon             'reason': set([('task_struct', 'cred')])},
551*1f5207b7SJohn Levon            {'call': 'rt_sigaction',
552*1f5207b7SJohn Levon             'reason': set([('task_struct', 'cred')])},
553*1f5207b7SJohn Levon            {'call': 'getpgid', 'reason': set([('task_struct', 'cred')])},
554*1f5207b7SJohn Levon            {'call': 'getpriority', 'reason': set([('task_struct', 'cred')])},
555*1f5207b7SJohn Levon            {'call': 'sigaction', 'reason': set([('task_struct', 'cred')])},
556*1f5207b7SJohn Levon            {'call': 'setns', 'reason': set([('task_struct', 'cred')])},
557*1f5207b7SJohn Levon            {'call': 'fork', 'reason': set([('task_struct', 'cred')])},
558*1f5207b7SJohn Levon            {'call': 'get_robust_list',
559*1f5207b7SJohn Levon             'reason': set([('task_struct', 'cred')])},
560*1f5207b7SJohn Levon            {'call': 'mq_timedsend',
561*1f5207b7SJohn Levon             'reason': set([('task_struct', 'cred')])},
562*1f5207b7SJohn Levon            {'call': 'sched_getscheduler',
563*1f5207b7SJohn Levon             'reason': set([('task_struct', 'cred')])},
564*1f5207b7SJohn Levon            {'call': 'ptrace', 'reason': set([('task_struct', 'cred')])},
565*1f5207b7SJohn Levon            {'call': 'sched_getattr',
566*1f5207b7SJohn Levon             'reason': set([('task_struct', 'cred')])},
567*1f5207b7SJohn Levon            {'call': 'getrusage', 'reason': set([('task_struct', 'cred')])},
568*1f5207b7SJohn Levon            {'call': 'sched_setscheduler',
569*1f5207b7SJohn Levon             'reason': set([('task_struct', 'cred')])},
570*1f5207b7SJohn Levon            {'call': 'setitimer', 'reason': set([('task_struct', 'cred')])},
571*1f5207b7SJohn Levon            {'call': 'ioprio_get', 'reason': set([('task_struct', 'cred')])},
572*1f5207b7SJohn Levon            {'call': 'vfork', 'reason': set([('task_struct', 'cred')])},
573*1f5207b7SJohn Levon            {'call': 'prctl', 'reason': set([('task_struct', 'cred')])},
574*1f5207b7SJohn Levon            {'call': 'move_pages', 'reason': set([('task_struct', 'cred')])},
575*1f5207b7SJohn Levon            {'call': 'setpriority', 'reason': set([('task_struct', 'cred')])},
576*1f5207b7SJohn Levon            {'call': 'clone', 'reason': set([('task_struct', 'cred')])},
577*1f5207b7SJohn Levon            {'call': 'sched_getparam',
578*1f5207b7SJohn Levon             'reason': set([('task_struct', 'cred')])}],
579*1f5207b7SJohn Levon 'clock_adjtime': [{'call': 'clock_getres',
580*1f5207b7SJohn Levon                    'reason': set([('k_clock', 'clock_adj')])},
581*1f5207b7SJohn Levon                   {'call': 'timer_delete',
582*1f5207b7SJohn Levon                    'reason': set([('k_clock', 'clock_adj')])},
583*1f5207b7SJohn Levon                   {'call': 'timer_create',
584*1f5207b7SJohn Levon                    'reason': set([('k_clock', 'clock_adj')])},
585*1f5207b7SJohn Levon                   {'call': 'clock_gettime',
586*1f5207b7SJohn Levon                    'reason': set([('k_clock', 'clock_adj')])},
587*1f5207b7SJohn Levon                   {'call': 'timer_settime',
588*1f5207b7SJohn Levon                    'reason': set([('k_clock', 'clock_adj')])},
589*1f5207b7SJohn Levon                   {'call': 'timer_gettime',
590*1f5207b7SJohn Levon                    'reason': set([('k_clock', 'clock_adj')])},
591*1f5207b7SJohn Levon                   {'call': 'clock_settime',
592*1f5207b7SJohn Levon                    'reason': set([('k_clock', 'clock_adj')])},
593*1f5207b7SJohn Levon                   {'call': 'clock_nanosleep',
594*1f5207b7SJohn Levon                    'reason': set([('k_clock', 'clock_adj')])},
595*1f5207b7SJohn Levon                   {'call': 'clock_adjtime',
596*1f5207b7SJohn Levon                    'reason': set([('k_clock', 'clock_adj')])}],
597*1f5207b7SJohn Levon 'clock_nanosleep': [{'call': 'rt_sigtimedwait',
598*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
599*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
600*1f5207b7SJohn Levon                     {'call': 'mq_unlink',
601*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
602*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
603*1f5207b7SJohn Levon                     {'call': 'swapoff',
604*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
605*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
606*1f5207b7SJohn Levon                     {'call': 'clock_getres',
607*1f5207b7SJohn Levon                      'reason': set([('k_clock', 'nsleep')])},
608*1f5207b7SJohn Levon                     {'call': 'timer_delete',
609*1f5207b7SJohn Levon                      'reason': set([('k_clock', 'nsleep')])},
610*1f5207b7SJohn Levon                     {'call': 'fchmod',
611*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
612*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
613*1f5207b7SJohn Levon                     {'call': 'memfd_create',
614*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
615*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
616*1f5207b7SJohn Levon                     {'call': 'readlinkat',
617*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
618*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
619*1f5207b7SJohn Levon                     {'call': 'io_getevents',
620*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
621*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
622*1f5207b7SJohn Levon                     {'call': 'fchown',
623*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
624*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
625*1f5207b7SJohn Levon                     {'call': 'mq_timedreceive',
626*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
627*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
628*1f5207b7SJohn Levon                     {'call': 'utime',
629*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
630*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
631*1f5207b7SJohn Levon                     {'call': 'semtimedop',
632*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
633*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
634*1f5207b7SJohn Levon                     {'call': 'settimeofday',
635*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
636*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
637*1f5207b7SJohn Levon                     {'call': 'timer_create',
638*1f5207b7SJohn Levon                      'reason': set([('k_clock', 'nsleep')])},
639*1f5207b7SJohn Levon                     {'call': 'clock_gettime',
640*1f5207b7SJohn Levon                      'reason': set([('k_clock', 'nsleep')])},
641*1f5207b7SJohn Levon                     {'call': 'sched_rr_get_interval',
642*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
643*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
644*1f5207b7SJohn Levon                     {'call': 'timerfd_gettime',
645*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
646*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
647*1f5207b7SJohn Levon                     {'call': 'pselect6',
648*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
649*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
650*1f5207b7SJohn Levon                     {'call': 'uselib',
651*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
652*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
653*1f5207b7SJohn Levon                     {'call': 'fchmodat',
654*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
655*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
656*1f5207b7SJohn Levon                     {'call': 'inotify_add_watch',
657*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
658*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
659*1f5207b7SJohn Levon                     {'call': 'timer_settime',
660*1f5207b7SJohn Levon                      'reason': set([('k_clock', 'nsleep'),
661*1f5207b7SJohn Levon                                     ('timespec', 'tv_nsec'),
662*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
663*1f5207b7SJohn Levon                     {'call': 'ftruncate',
664*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
665*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
666*1f5207b7SJohn Levon                     {'call': 'timer_gettime',
667*1f5207b7SJohn Levon                      'reason': set([('k_clock', 'nsleep'),
668*1f5207b7SJohn Levon                                     ('timespec', 'tv_nsec'),
669*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
670*1f5207b7SJohn Levon                     {'call': 'ioctl',
671*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
672*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
673*1f5207b7SJohn Levon                     {'call': 'linkat',
674*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
675*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
676*1f5207b7SJohn Levon                     {'call': 'stime',
677*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
678*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
679*1f5207b7SJohn Levon                     {'call': 'futimesat',
680*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
681*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
682*1f5207b7SJohn Levon                     {'call': 'poll',
683*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
684*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
685*1f5207b7SJohn Levon                     {'call': 'clock_settime',
686*1f5207b7SJohn Levon                      'reason': set([('k_clock', 'nsleep')])},
687*1f5207b7SJohn Levon                     {'call': 'select',
688*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
689*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
690*1f5207b7SJohn Levon                     {'call': 'unlink',
691*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
692*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
693*1f5207b7SJohn Levon                     {'call': 'nanosleep',
694*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
695*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
696*1f5207b7SJohn Levon                     {'call': 'mq_getsetattr',
697*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
698*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
699*1f5207b7SJohn Levon                     {'call': 'faccessat',
700*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
701*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
702*1f5207b7SJohn Levon                     {'call': 'mq_timedsend',
703*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
704*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
705*1f5207b7SJohn Levon                     {'call': 'swapon',
706*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
707*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
708*1f5207b7SJohn Levon                     {'call': 'epoll_wait',
709*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
710*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
711*1f5207b7SJohn Levon                     {'call': 'fchownat',
712*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
713*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
714*1f5207b7SJohn Levon                     {'call': 'fstat',
715*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
716*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
717*1f5207b7SJohn Levon                     {'call': 'timerfd_settime',
718*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
719*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
720*1f5207b7SJohn Levon                     {'call': 'mq_notify',
721*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
722*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
723*1f5207b7SJohn Levon                     {'call': 'sendfile',
724*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
725*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
726*1f5207b7SJohn Levon                     {'call': 'newfstat',
727*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
728*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
729*1f5207b7SJohn Levon                     {'call': 'clock_nanosleep',
730*1f5207b7SJohn Levon                      'reason': set([('k_clock', 'nsleep'),
731*1f5207b7SJohn Levon                                     ('timespec', 'tv_nsec'),
732*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
733*1f5207b7SJohn Levon                     {'call': 'unlinkat',
734*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
735*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
736*1f5207b7SJohn Levon                     {'call': 'clock_adjtime',
737*1f5207b7SJohn Levon                      'reason': set([('k_clock', 'nsleep')])},
738*1f5207b7SJohn Levon                     {'call': 'futex',
739*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
740*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
741*1f5207b7SJohn Levon                     {'call': 'recvmmsg',
742*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
743*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
744*1f5207b7SJohn Levon                     {'call': 'sendfile64',
745*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
746*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])},
747*1f5207b7SJohn Levon                     {'call': 'ppoll',
748*1f5207b7SJohn Levon                      'reason': set([('timespec', 'tv_nsec'),
749*1f5207b7SJohn Levon                                     ('timespec', 'tv_sec')])}],
750*1f5207b7SJohn Levon 'clock_settime': [{'call': 'clock_getres',
751*1f5207b7SJohn Levon                    'reason': set([('k_clock', 'clock_set')])},
752*1f5207b7SJohn Levon                   {'call': 'timer_delete',
753*1f5207b7SJohn Levon                    'reason': set([('k_clock', 'clock_set')])},
754*1f5207b7SJohn Levon                   {'call': 'timer_create',
755*1f5207b7SJohn Levon                    'reason': set([('k_clock', 'clock_set')])},
756*1f5207b7SJohn Levon                   {'call': 'clock_gettime',
757*1f5207b7SJohn Levon                    'reason': set([('k_clock', 'clock_set')])},
758*1f5207b7SJohn Levon                   {'call': 'timer_settime',
759*1f5207b7SJohn Levon                    'reason': set([('k_clock', 'clock_set')])},
760*1f5207b7SJohn Levon                   {'call': 'timer_gettime',
761*1f5207b7SJohn Levon                    'reason': set([('k_clock', 'clock_set')])},
762*1f5207b7SJohn Levon                   {'call': 'clock_settime',
763*1f5207b7SJohn Levon                    'reason': set([('k_clock', 'clock_set')])},
764*1f5207b7SJohn Levon                   {'call': 'clock_nanosleep',
765*1f5207b7SJohn Levon                    'reason': set([('k_clock', 'clock_set')])},
766*1f5207b7SJohn Levon                   {'call': 'clock_adjtime',
767*1f5207b7SJohn Levon                    'reason': set([('k_clock', 'clock_set')])}],
768*1f5207b7SJohn Levon 'connect': [{'call': 'syncfs', 'reason': set([('fd', 'file')])},
769*1f5207b7SJohn Levon             {'call': 'vmsplice', 'reason': set([('fd', 'file')])},
770*1f5207b7SJohn Levon             {'call': 'pwritev64', 'reason': set([('fd', 'file')])},
771*1f5207b7SJohn Levon             {'call': 'fremovexattr', 'reason': set([('fd', 'file')])},
772*1f5207b7SJohn Levon             {'call': 'readahead', 'reason': set([('fd', 'file')])},
773*1f5207b7SJohn Levon             {'call': 'getdents', 'reason': set([('fd', 'file')])},
774*1f5207b7SJohn Levon             {'call': 'writev', 'reason': set([('fd', 'file')])},
775*1f5207b7SJohn Levon             {'call': 'preadv64', 'reason': set([('fd', 'file')])},
776*1f5207b7SJohn Levon             {'call': 'fchmod', 'reason': set([('fd', 'file')])},
777*1f5207b7SJohn Levon             {'call': 'pread64', 'reason': set([('fd', 'file')])},
778*1f5207b7SJohn Levon             {'call': 'signalfd4', 'reason': set([('fd', 'file')])},
779*1f5207b7SJohn Levon             {'call': 'read', 'reason': set([('fd', 'file')])},
780*1f5207b7SJohn Levon             {'call': 'fchown', 'reason': set([('fd', 'file')])},
781*1f5207b7SJohn Levon             {'call': 'mq_timedreceive', 'reason': set([('fd', 'file')])},
782*1f5207b7SJohn Levon             {'call': 'utime', 'reason': set([('fd', 'file')])},
783*1f5207b7SJohn Levon             {'call': 'fsync', 'reason': set([('fd', 'file')])},
784*1f5207b7SJohn Levon             {'call': 'bpf', 'reason': set([('fd', 'file')])},
785*1f5207b7SJohn Levon             {'call': 'recvfrom', 'reason': set([('fd', 'file')])},
786*1f5207b7SJohn Levon             {'call': 'fsetxattr', 'reason': set([('fd', 'file')])},
787*1f5207b7SJohn Levon             {'call': 'sendto', 'reason': set([('fd', 'file')])},
788*1f5207b7SJohn Levon             {'call': 'tee', 'reason': set([('fd', 'file')])},
789*1f5207b7SJohn Levon             {'call': 'sync_file_range', 'reason': set([('fd', 'file')])},
790*1f5207b7SJohn Levon             {'call': 'lseek', 'reason': set([('fd', 'file')])},
791*1f5207b7SJohn Levon             {'call': 'connect', 'reason': set([('fd', 'file')])},
792*1f5207b7SJohn Levon             {'call': 'getsockname', 'reason': set([('fd', 'file')])},
793*1f5207b7SJohn Levon             {'call': 'epoll_ctl', 'reason': set([('fd', 'file')])},
794*1f5207b7SJohn Levon             {'call': 'flock', 'reason': set([('fd', 'file')])},
795*1f5207b7SJohn Levon             {'call': 'pwritev', 'reason': set([('fd', 'file')])},
796*1f5207b7SJohn Levon             {'call': 'fchdir', 'reason': set([('fd', 'file')])},
797*1f5207b7SJohn Levon             {'call': 'accept4', 'reason': set([('fd', 'file')])},
798*1f5207b7SJohn Levon             {'call': 'old_readdir', 'reason': set([('fd', 'file')])},
799*1f5207b7SJohn Levon             {'call': 'inotify_rm_watch', 'reason': set([('fd', 'file')])},
800*1f5207b7SJohn Levon             {'call': 'utimensat', 'reason': set([('fd', 'file')])},
801*1f5207b7SJohn Levon             {'call': 'inotify_add_watch', 'reason': set([('fd', 'file')])},
802*1f5207b7SJohn Levon             {'call': 'preadv2', 'reason': set([('fd', 'file')])},
803*1f5207b7SJohn Levon             {'call': 'splice', 'reason': set([('fd', 'file')])},
804*1f5207b7SJohn Levon             {'call': 'ftruncate', 'reason': set([('fd', 'file')])},
805*1f5207b7SJohn Levon             {'call': 'preadv', 'reason': set([('fd', 'file')])},
806*1f5207b7SJohn Levon             {'call': 'getpeername', 'reason': set([('fd', 'file')])},
807*1f5207b7SJohn Levon             {'call': 'setsockopt', 'reason': set([('fd', 'file')])},
808*1f5207b7SJohn Levon             {'call': 'fcntl', 'reason': set([('fd', 'file')])},
809*1f5207b7SJohn Levon             {'call': 'ioctl', 'reason': set([('fd', 'file')])},
810*1f5207b7SJohn Levon             {'call': 'pwrite64', 'reason': set([('fd', 'file')])},
811*1f5207b7SJohn Levon             {'call': 'perf_event_open', 'reason': set([('fd', 'file')])},
812*1f5207b7SJohn Levon             {'call': 'pwritev64v2', 'reason': set([('fd', 'file')])},
813*1f5207b7SJohn Levon             {'call': 'futimesat', 'reason': set([('fd', 'file')])},
814*1f5207b7SJohn Levon             {'call': 'pwritev2', 'reason': set([('fd', 'file')])},
815*1f5207b7SJohn Levon             {'call': 'shutdown', 'reason': set([('fd', 'file')])},
816*1f5207b7SJohn Levon             {'call': 'getsockopt', 'reason': set([('fd', 'file')])},
817*1f5207b7SJohn Levon             {'call': 'mq_getsetattr', 'reason': set([('fd', 'file')])},
818*1f5207b7SJohn Levon             {'call': 'fdatasync', 'reason': set([('fd', 'file')])},
819*1f5207b7SJohn Levon             {'call': 'getdents64', 'reason': set([('fd', 'file')])},
820*1f5207b7SJohn Levon             {'call': 'listen', 'reason': set([('fd', 'file')])},
821*1f5207b7SJohn Levon             {'call': 'copy_file_range', 'reason': set([('fd', 'file')])},
822*1f5207b7SJohn Levon             {'call': 'mq_timedsend', 'reason': set([('fd', 'file')])},
823*1f5207b7SJohn Levon             {'call': 'fgetxattr', 'reason': set([('fd', 'file')])},
824*1f5207b7SJohn Levon             {'call': 'fcntl64', 'reason': set([('fd', 'file')])},
825*1f5207b7SJohn Levon             {'call': 'fallocate', 'reason': set([('fd', 'file')])},
826*1f5207b7SJohn Levon             {'call': 'epoll_wait', 'reason': set([('fd', 'file')])},
827*1f5207b7SJohn Levon             {'call': 'llseek', 'reason': set([('fd', 'file')])},
828*1f5207b7SJohn Levon             {'call': 'preadv64v2', 'reason': set([('fd', 'file')])},
829*1f5207b7SJohn Levon             {'call': 'readv', 'reason': set([('fd', 'file')])},
830*1f5207b7SJohn Levon             {'call': 'fstatfs', 'reason': set([('fd', 'file')])},
831*1f5207b7SJohn Levon             {'call': 'fstatfs64', 'reason': set([('fd', 'file')])},
832*1f5207b7SJohn Levon             {'call': 'write', 'reason': set([('fd', 'file')])},
833*1f5207b7SJohn Levon             {'call': 'mq_notify', 'reason': set([('fd', 'file')])},
834*1f5207b7SJohn Levon             {'call': 'sendfile', 'reason': set([('fd', 'file')])},
835*1f5207b7SJohn Levon             {'call': 'bind', 'reason': set([('fd', 'file')])},
836*1f5207b7SJohn Levon             {'call': 'flistxattr', 'reason': set([('fd', 'file')])},
837*1f5207b7SJohn Levon             {'call': 'sendfile64', 'reason': set([('fd', 'file')])}],
838*1f5207b7SJohn Levon 'copy_file_range': [{'call': 'syncfs',
839*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
840*1f5207b7SJohn Levon                     {'call': 'vmsplice',
841*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
842*1f5207b7SJohn Levon                     {'call': 'pwritev64',
843*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
844*1f5207b7SJohn Levon                     {'call': 'fremovexattr',
845*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
846*1f5207b7SJohn Levon                     {'call': 'readahead',
847*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
848*1f5207b7SJohn Levon                     {'call': 'getdents',
849*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
850*1f5207b7SJohn Levon                     {'call': 'writev',
851*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
852*1f5207b7SJohn Levon                     {'call': 'preadv64',
853*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
854*1f5207b7SJohn Levon                     {'call': 'fchmod',
855*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
856*1f5207b7SJohn Levon                     {'call': 'pread64',
857*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
858*1f5207b7SJohn Levon                     {'call': 'signalfd4',
859*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
860*1f5207b7SJohn Levon                     {'call': 'read',
861*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
862*1f5207b7SJohn Levon                     {'call': 'fchown',
863*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
864*1f5207b7SJohn Levon                     {'call': 'mq_timedreceive',
865*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
866*1f5207b7SJohn Levon                     {'call': 'utime',
867*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
868*1f5207b7SJohn Levon                     {'call': 'fsync',
869*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
870*1f5207b7SJohn Levon                     {'call': 'bpf',
871*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
872*1f5207b7SJohn Levon                     {'call': 'recvfrom',
873*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
874*1f5207b7SJohn Levon                     {'call': 'fsetxattr',
875*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
876*1f5207b7SJohn Levon                     {'call': 'sendto',
877*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
878*1f5207b7SJohn Levon                     {'call': 'tee',
879*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
880*1f5207b7SJohn Levon                     {'call': 'sync_file_range',
881*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
882*1f5207b7SJohn Levon                     {'call': 'lseek',
883*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
884*1f5207b7SJohn Levon                     {'call': 'connect',
885*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
886*1f5207b7SJohn Levon                     {'call': 'getsockname',
887*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
888*1f5207b7SJohn Levon                     {'call': 'epoll_ctl',
889*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
890*1f5207b7SJohn Levon                     {'call': 'flock',
891*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
892*1f5207b7SJohn Levon                     {'call': 'pwritev',
893*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
894*1f5207b7SJohn Levon                     {'call': 'fchdir',
895*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
896*1f5207b7SJohn Levon                     {'call': 'accept4',
897*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
898*1f5207b7SJohn Levon                     {'call': 'old_readdir',
899*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
900*1f5207b7SJohn Levon                     {'call': 'inotify_rm_watch',
901*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
902*1f5207b7SJohn Levon                     {'call': 'utimensat',
903*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
904*1f5207b7SJohn Levon                     {'call': 'inotify_add_watch',
905*1f5207b7SJohn Levon                      'reason': set([('fd', 'file'), ('fd', 'flags')])},
906*1f5207b7SJohn Levon                     {'call': 'preadv2',
907