aboutsummaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2022-01-05 14:04:49 +0100
committerDmitry Vyukov <dvyukov@google.com>2022-01-11 16:30:08 +0100
commitfcff7f26afa9a6a79da34ac2bf9ed83fe90a3d00 (patch)
tree0387faf220247196fd66089571c0511d5c833cbd /sys
parent583b354134f415ad0ed4f203d79b4e0bcb2c6062 (diff)
sys/linux: extend udmabuf descriptions
The ioctls actually return the dmabuf fd that can be used in other APIs.
Diffstat (limited to 'sys')
-rw-r--r--sys/linux/dev_udmabuf.txt12
-rw-r--r--sys/linux/dev_udmabuf.txt.const10
2 files changed, 17 insertions, 5 deletions
diff --git a/sys/linux/dev_udmabuf.txt b/sys/linux/dev_udmabuf.txt
index 16c2b4366..a8d21a726 100644
--- a/sys/linux/dev_udmabuf.txt
+++ b/sys/linux/dev_udmabuf.txt
@@ -1,13 +1,19 @@
# Copyright 2018 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 <uapi/linux/fcntl.h>
include <uapi/linux/udmabuf.h>
+include <uapi/linux/dma-buf.h>
resource fd_udambuf[fd]
+resource fd_dma_buf[fd]
openat$udambuf(fd const[AT_FDCWD], file ptr[in, string["/dev/udmabuf"]], flags const[O_RDWR]) fd_udambuf
-ioctl$UDMABUF_CREATE(fd fd_udambuf, cmd const[UDMABUF_CREATE], arg ptr[in, udmabuf_create])
-ioctl$UDMABUF_CREATE_LIST(fd fd_udambuf, cmd const[UDMABUF_CREATE_LIST], arg ptr[in, udmabuf_create_list])
+ioctl$UDMABUF_CREATE(fd fd_udambuf, cmd const[UDMABUF_CREATE], arg ptr[in, udmabuf_create]) fd_dma_buf
+ioctl$UDMABUF_CREATE_LIST(fd fd_udambuf, cmd const[UDMABUF_CREATE_LIST], arg ptr[in, udmabuf_create_list]) fd_dma_buf
+
+ioctl$DMA_BUF_IOCTL_SYNC(fd fd_dma_buf, cmd const[DMA_BUF_IOCTL_SYNC], arg ptr[in, flags[dma_buf_sync_flags, int64]])
+ioctl$DMA_BUF_SET_NAME_A(fd fd_dma_buf, cmd const[DMA_BUF_SET_NAME_A], arg ptr[in, string])
udmabuf_create {
memfd fd_memfd
@@ -29,5 +35,5 @@ udmabuf_create_item {
size flags[udmabuf_offset_size, int64]
}
-# NEED: this should be a page-aligned integer
udmabuf_offset_size = 0, 0x1000, 0x2000, 0x4000, 0x8000, 0x10000, 0x1000000, 0x100000000, 0xfffff000, 0x1000000000000, 0xfffffffffffff000, 0xfffffffff0000000
+dma_buf_sync_flags = DMA_BUF_SYNC_READ, DMA_BUF_SYNC_WRITE, DMA_BUF_SYNC_START, DMA_BUF_SYNC_END
diff --git a/sys/linux/dev_udmabuf.txt.const b/sys/linux/dev_udmabuf.txt.const
index c90f06fb2..7cf28721c 100644
--- a/sys/linux/dev_udmabuf.txt.const
+++ b/sys/linux/dev_udmabuf.txt.const
@@ -1,7 +1,13 @@
# Code generated by syz-sysgen. DO NOT EDIT.
arches = 386, amd64, arm, arm64, mips64le, ppc64le, riscv64, s390x
-AT_FDCWD = ???
-O_RDWR = ???
+AT_FDCWD = 18446744073709551516
+DMA_BUF_IOCTL_SYNC = 1074291200, mips64le:ppc64le:2148033024
+DMA_BUF_SET_NAME_A = 1074029057, mips64le:ppc64le:2147770881
+DMA_BUF_SYNC_END = 4
+DMA_BUF_SYNC_READ = 1
+DMA_BUF_SYNC_START = 0
+DMA_BUF_SYNC_WRITE = 2
+O_RDWR = 2
UDMABUF_CREATE = 1075344706, mips64le:ppc64le:2149086530
UDMABUF_CREATE_LIST = 1074296131, mips64le:ppc64le:2148037955
__NR_ioctl = 54, amd64:16, arm64:riscv64:29, mips64le:5015