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

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

index bd799c364db1cd1ee9f17ccb2f4571b01c701808..7e3d9fb6a3662b4309ca638bb432877e1ba8c1fc 100644 (file)
@@ -204,6 +204,13 @@ typedef struct {
 } mess_fs_vfs_lookup;
 _ASSERT_MSG_SIZE(mess_fs_vfs_lookup);
 
+typedef struct {
+       ino_t inode;
+
+       uint8_t data[48];
+} mess_vfs_fs_mountpoint;
+_ASSERT_MSG_SIZE(mess_vfs_fs_mountpoint);
+
 typedef struct {
        dev_t device;
 
@@ -330,6 +337,7 @@ typedef struct {
        mess_fs_vfs_create m_fs_vfs_create;
        mess_vfs_fs_lookup m_vfs_fs_lookup;
        mess_fs_vfs_lookup m_fs_vfs_lookup;
+       mess_vfs_fs_mountpoint m_vfs_fs_mountpoint;
        mess_vfs_fs_readsuper m_vfs_fs_readsuper;
        mess_fs_vfs_readsuper m_fs_vfs_readsuper;
        mess_vfs_utimens m_vfs_utimens;
index 8707d7de546cd046bd5d36e34313f36861012d2f..036c5bd900c61f049c7f4108ac59fdda3e4b7e73 100644 (file)
@@ -49,13 +49,14 @@ int fs_mountpoint(void)
  */
   int r = OK;
   struct puffs_node *pn;
-  pmode_t bits;
+  mode_t bits;
 
   /*
    * XXX: we assume that lookup was done first, so pnode can be found with
    * puffs_pn_nodewalk.
    */
-  if ((pn = puffs_pn_nodewalk(global_pu, 0, &fs_m_in.REQ_INODE_NR)) == NULL)
+  if ((pn = puffs_pn_nodewalk(global_pu, 0, &fs_m_in.m_vfs_fs_mountpoint.inode))
+         == NULL)
        return(EINVAL);
 
 
index da8cd1994ed7b83b6f19ad0be9b60834a10d42e4..5904e832fe10087cbd634e2cff966c4d9600de9b 100644 (file)
@@ -174,10 +174,10 @@ int fs_mountpoint()
  */
   register struct inode *rip;
   int r = OK;
-  pmode_t bits;
+  mode_t bits;
 
   /* Temporarily open the file. */
-  if( (rip = get_inode(fs_dev, fs_m_in.REQ_INODE_NR)) == NULL)
+  if( (rip = get_inode(fs_dev, fs_m_in.m_vfs_fs_mountpoint.inode)) == NULL)
          return(EINVAL);
 
 
index 579db2d6d322c1219e6642e37765a0e8ce9f3d77..b852ec9b9c70cb79edf9412a7aa65e5b24cf3ce3 100644 (file)
@@ -70,7 +70,7 @@ int fs_mountpoint()
   int r = OK;
   
   /* Temporarily open the file. */
-  if ((rip = get_dir_record(fs_m_in.REQ_INODE_NR)) == NULL)
+  if ((rip = get_dir_record(fs_m_in.m_vfs_fs_mountpoint.inode)) == NULL)
        return(EINVAL);
 
   if (rip->d_mountpoint)
index 902da7e5daae39d8a84fcbd72b9853cb278b065e..ec832e9b3cafd9166d9ee70f92481571ea0cd10c 100644 (file)
@@ -132,7 +132,7 @@ int fs_mountpoint()
   pmode_t bits;
   
   /* Temporarily open the file. */
-  if( (rip = get_inode(fs_dev, (pino_t) fs_m_in.REQ_INODE_NR)) == NULL)
+  if( (rip = get_inode(fs_dev, fs_m_in.m_vfs_fs_mountpoint.inode)) == NULL)
          return(EINVAL);
   
   
index f3f56aa6aa14567aed5255a6868ed58e8f6ff1ca..fcefe03ec19b42b4b76aa4d9c4d010c9530f4bfb 100644 (file)
@@ -607,7 +607,7 @@ int req_mountpoint(endpoint_t fs_e, ino_t inode_nr)
 
   /* Fill in request message */
   m.m_type = REQ_MOUNTPOINT;
-  m.REQ_INODE_NR = (pino_t) inode_nr;
+  m.m_vfs_fs_mountpoint.inode = inode_nr;
 
   /* Send/rec request */
   return fs_sendrec(fs_e, &m);