diff options
Diffstat (limited to 'sys/linux/dev_watch_queue.txt')
| -rw-r--r-- | sys/linux/dev_watch_queue.txt | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/sys/linux/dev_watch_queue.txt b/sys/linux/dev_watch_queue.txt new file mode 100644 index 000000000..c414f184b --- /dev/null +++ b/sys/linux/dev_watch_queue.txt @@ -0,0 +1,31 @@ +# Copyright 2019 syzkaller project authors. All rights reserved. +# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. + +include <linux/fcntl.h> +include <linux/ioctl.h> +include <uapi/linux/watch_queue.h> + +resource fd_watch_queue[fd] + +openat$watch_queue(fd const[AT_FDCWD], file ptr[in, string["/dev/watch_queue"]], flags flags[open_flags], mode const[0]) fd_watch_queue +mmap$watch_queue(addr vma, len len[addr], prot flags[mmap_prot], flags flags[mmap_flags], fd fd_watch_queue, offset const[0]) +ioctl$IOC_WATCH_QUEUE_SET_SIZE(fd fd_watch_queue, cmd const[IOC_WATCH_QUEUE_SET_SIZE], arg flags[watch_queue_size]) +ioctl$IOC_WATCH_QUEUE_SET_FILTER(fd fd_watch_queue, cmd const[IOC_WATCH_QUEUE_SET_FILTER], arg ptr[in, watch_notification_filter]) + +watch_devices(watch_fd fd_watch_queue, watch_id intptr[-1:0xff], flags const[0]) + +watch_notification_filter { + nr_filters len[filters, int32] + __reserved const[0, int32] + filters array[watch_notification_type_filter] +} + +watch_notification_type_filter { + type int32 + info_filter int32 + info_mask int32 + subtype_filter array[int32, 8] +} + +watch_queue_size = 1, 2, 4, 8, 16 +_ = __NR_mmap2 |
