diff options
Diffstat (limited to 'tests/fiemap-capable')
-rw-r--r-- | tests/fiemap-capable | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/fiemap-capable b/tests/fiemap-capable new file mode 100644 index 0000000..05c6926 --- /dev/null +++ b/tests/fiemap-capable @@ -0,0 +1,16 @@ +import struct, fcntl, sys, os + +def sizeof(t): return struct.calcsize(t) +IOCPARM_MASK = 0x7f +IOC_OUT = 0x40000000 +IOC_IN = 0x80000000 +IOC_INOUT = (IOC_IN|IOC_OUT) +def _IOWR(x,y,t): return (IOC_INOUT|((sizeof(t)&IOCPARM_MASK)<<16)|((x)<<8)|y) + +try: + fd = os.open (len (sys.argv) == 2 and sys.argv[1] or '.', os.O_RDONLY) + struct_fiemap = '=qqllll' + FS_IOC_FIEMAP = _IOWR (ord ('f'), 11, struct_fiemap) + fcntl.ioctl (fd, FS_IOC_FIEMAP, struct.pack(struct_fiemap, 0,~0,0,0,0,0)) +except: + sys.exit (1) |