]> Zhao Yanbai Git Server - minix.git/commitdiff
Message types for VFS flush
authorLionel Sambuc <lionel@minix3.org>
Tue, 29 Apr 2014 14:15:37 +0000 (16:15 +0200)
committerLionel Sambuc <lionel@minix3.org>
Mon, 28 Jul 2014 15:05:26 +0000 (17:05 +0200)
Change-Id: Ida7cbff4402bf876603a2153e2784699d93c03ea

include/minix/ipc.h
lib/libpuffs/misc.c
servers/ext2/misc.c
servers/mfs/misc.c
servers/vfs/request.c

index 7e3d9fb6a3662b4309ca638bb432877e1ba8c1fc..6296354943e2558162f7a75fba24d7d8127af34e 100644 (file)
@@ -171,6 +171,13 @@ typedef struct {
 } mess_fs_vfs_create;
 _ASSERT_MSG_SIZE(mess_fs_vfs_create);
 
+typedef struct {
+       dev_t device;
+
+       uint8_t data[48];
+} mess_vfs_fs_flush;
+_ASSERT_MSG_SIZE(mess_vfs_fs_flush);
+
 typedef struct {
        ino_t dir_ino;
        ino_t root_ino;
@@ -335,6 +342,7 @@ typedef struct {
        mess_fs_vfs_newnode m_fs_vfs_newnode;
        mess_vfs_fs_create m_vfs_fs_create;
        mess_fs_vfs_create m_fs_vfs_create;
+       mess_vfs_fs_flush m_vfs_fs_flush;
        mess_vfs_fs_lookup m_vfs_fs_lookup;
        mess_fs_vfs_lookup m_fs_vfs_lookup;
        mess_vfs_fs_mountpoint m_vfs_fs_mountpoint;
index b07b937f6b0d0152d71df9895070cc81334b7a48..9b80632a22dc6ec74f4379acccf97e8abadf0bd4 100644 (file)
@@ -41,7 +41,7 @@ int fs_flush(void)
  * to disk.
  */
 #if 0
-  dev_t dev = fs_m_in.REQ_DEV;
+  dev_t dev = fs_m_in.m_vfs_fs_flush.device;
 
   if(dev == fs_dev) return(EBUSY);
 
index 6902df25abdad8e4348b928078771f1254b8171a..03191a9a8bb431a577f47916fac4cde81c822557 100644 (file)
@@ -49,7 +49,7 @@ int fs_flush()
 /* Flush the blocks of a device from the cache after writing any dirty blocks
  * to disk.
  */
-  dev_t dev = fs_m_in.REQ_DEV;
+  dev_t dev = fs_m_in.m_vfs_fs_flush.device;
 
   if(dev == fs_dev) return(EBUSY);
 
index b4af8d98ef8cf9ca05e3e16cd6b202ea99057a97..d633595b65ef8e1c16dbc42499d0bbe109a4df8c 100644 (file)
@@ -38,7 +38,7 @@ int fs_flush()
 /* Flush the blocks of a device from the cache after writing any dirty blocks
  * to disk.
  */
-  dev_t dev = fs_m_in.REQ_DEV;
+  dev_t dev = fs_m_in.m_vfs_fs_flush.device;
   if(dev == fs_dev && lmfs_bufs_in_use() > 0) return(EBUSY);
  
   lmfs_flushall();
index fcefe03ec19b42b4b76aa4d9c4d010c9530f4bfb..9928fb29415da04e536d4bdf120e90b45bc09718 100644 (file)
@@ -220,7 +220,7 @@ int req_flush(endpoint_t fs_e, dev_t dev)
 
   /* Fill in request message */
   m.m_type = REQ_FLUSH;
-  m.REQ_DEV = dev;
+  m.m_vfs_fs_flush.device = dev;
 
   /* Send/rec request */
   return fs_sendrec(fs_e, &m);