]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
add support for VKI_BLKDISCARDZEROES
authorChristian Borntraeger <borntraeger@de.ibm.com>
Tue, 5 Aug 2014 15:14:52 +0000 (15:14 +0000)
committerChristian Borntraeger <borntraeger@de.ibm.com>
Tue, 5 Aug 2014 15:14:52 +0000 (15:14 +0000)
this is used in some newer QEMU versions and other tools

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14235

NEWS
coregrind/m_syswrap/syswrap-linux.c
include/vki/vki-linux.h

diff --git a/NEWS b/NEWS
index bdf4965d1be07a01f3cfc8801807ff3f6db6263b..01e985d3693ff58dff647d1d3ae89f853810a06b 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -209,6 +209,7 @@ n-i-bz  internal error in Valgrind if vgdb transmit signals when ptrace invoked
 n-i-bz  Fix mingw64 support in valgrind.h (dev@, 9 May 2014)
 n-i-bz  drd manual: Document how to C++11 programs that use class "std::thread"
 n-i-bz  Add command-line option --default-suppressions
+n-i-bz  Add support for BLKDISCARDZEROES ioctl
 
 
 Release 3.9.0 (31 October 2013)
index 619a09610404db45932d054ea696090ce21618a1..4e5548f5d53e022a33569f5076a78fc4688e068b 100644 (file)
@@ -6087,6 +6087,9 @@ PRE(sys_ioctl)
    case VKI_BLKPBSZGET:
       PRE_MEM_WRITE( "ioctl(BLKPBSZGET)", ARG3, sizeof(int));
       break;
+   case VKI_BLKDISCARDZEROES:
+      PRE_MEM_WRITE( "ioctl(BLKDISCARDZEROES)", ARG3, sizeof(vki_uint));
+      break;
 
       /* Hard disks */
    case VKI_HDIO_GETGEO: /* 0x0301 */
@@ -7694,6 +7697,9 @@ POST(sys_ioctl)
    case VKI_BLKPBSZGET:
       POST_MEM_WRITE(ARG3, sizeof(int));
       break;
+   case VKI_BLKDISCARDZEROES:
+      POST_MEM_WRITE(ARG3, sizeof(vki_uint));
+      break;
 
       /* Hard disks */
    case VKI_HDIO_GETGEO: /* 0x0301 */
index f4e8669980826760ac55577f11c892d4483f9ba5..316959303b1069fae454add08cb10ef4d951fa03 100644 (file)
@@ -1720,7 +1720,7 @@ struct vki_ppdev_frob_struct {
 #define VKI_PPSETFLAGS _VKI_IOW(VKI_PP_IOCTL, 0x9b, int)
 
 //----------------------------------------------------------------------
-// From linux-2.6.8.1/include/linux/fs.h
+// From linux-3.16/include/uapi/linux/fs.h
 //----------------------------------------------------------------------
 
 #define VKI_BLKROSET   _VKI_IO(0x12,93)        /* set device read-only (0 = read-write) */
@@ -1736,6 +1736,7 @@ struct vki_ppdev_frob_struct {
 #define VKI_BLKBSZSET  _VKI_IOW(0x12,113,vki_size_t)
 #define VKI_BLKGETSIZE64 _VKI_IOR(0x12,114,vki_size_t) /* return device size in bytes (u64 *arg) */
 #define VKI_BLKPBSZGET _VKI_IO(0x12,123)
+#define VKI_BLKDISCARDZEROES _VKI_IO(0x12,124)
 
 #define VKI_FIBMAP     _VKI_IO(0x00,1) /* bmap access */
 #define VKI_FIGETBSZ    _VKI_IO(0x00,2)        /* get the block size used for bmap */