diff options
author | Eric Anholt <eric@anholt.net> | 2008-04-23 13:06:58 -0700 |
---|---|---|
committer | Eric Anholt <eric@anholt.net> | 2008-04-23 14:25:54 -0700 |
commit | 8c741ed54e1be63528e79222b600f37506c6d6d2 (patch) | |
tree | 1ae6b5b05386e36935d3be808092420b3df5e8e4 /tests/drmtest.c | |
parent | c1fec43b553ea93460b58995a1229e84d8bb45b4 (diff) |
Add pread/pwrite ioctls to mmfs.
Diffstat (limited to 'tests/drmtest.c')
-rw-r--r-- | tests/drmtest.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/drmtest.c b/tests/drmtest.c index cae99a0c..58f71a6a 100644 --- a/tests/drmtest.c +++ b/tests/drmtest.c @@ -26,7 +26,9 @@ */ #include <fcntl.h> +#include <sys/stat.h> #include "drmtest.h" +#include "mmfs.h" /** Open the first DRM device we can find, searching up to 16 device nodes */ int drm_open_any(void) @@ -81,3 +83,34 @@ int drm_open_any_master(void) abort(); } +static void +create_mmfs_device() +{ + struct stat sb; + int ret; + + ret = stat(MMFS_DEVICE_PATH, &sb); + + if (ret == 0) + return; + + ret = mknod(MMFS_DEVICE_PATH, S_IFCHR | S_IRUSR | S_IWUSR, + makedev(MMFS_DEVICE_MAJOR, 0)); + + if (ret != 0) + errx(1, "mknod()"); +} + +int +open_mmfs_device() +{ + int fd; + + create_mmfs_device(); + + fd = open(MMFS_DEVICE_PATH, O_RDWR); + if (fd == -1) + errx(1, "open()"); + + return fd; +} |