diff options
| author | Amar Tumballi <amar@gluster.com> | 2011-11-16 15:39:29 +0530 | 
|---|---|---|
| committer | Vijay Bellur <vijay@gluster.com> | 2011-11-16 03:44:32 -0800 | 
| commit | 14f4e023822a22e0a4902acfd28c8f5ea8c94ccd (patch) | |
| tree | 580ae84b87adf7f7ce83d6a409c303aa49ba4220 /xlators/nfs/server | |
| parent | 217842180858afff79d06c24389752299c5ed716 (diff) | |
core: remove 'ino' variable from 'inode_t' structure
Change-Id: I0f078d1753db65d2f2e0380d1b0450c114cf40dd
BUG: 3518
Reviewed-on: http://review.gluster.com/522
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vijay@gluster.com>
Diffstat (limited to 'xlators/nfs/server')
| -rw-r--r-- | xlators/nfs/server/src/mount3.c | 4 | ||||
| -rw-r--r-- | xlators/nfs/server/src/nfs-common.c | 7 | ||||
| -rw-r--r-- | xlators/nfs/server/src/nfs-fops.c | 44 | ||||
| -rw-r--r-- | xlators/nfs/server/src/nfs3.c | 2 | 
4 files changed, 27 insertions, 30 deletions
diff --git a/xlators/nfs/server/src/mount3.c b/xlators/nfs/server/src/mount3.c index 89634af94..1b9fcfd10 100644 --- a/xlators/nfs/server/src/mount3.c +++ b/xlators/nfs/server/src/mount3.c @@ -353,8 +353,8 @@ mnt3svc_mount_inode (rpcsvc_request_t *req, struct mount3_state *ms,          ret = nfs_inode_loc_fill (exportinode, &exportloc);          if (ret < 0) {                  gf_log (GF_MNT, GF_LOG_ERROR, "Loc fill failed for export inode" -                        ": ino %"PRIu64", volume: %s", -                        exportinode->ino, xl->name); +                        ": gfid %s, volume: %s", +                        uuid_utoa (exportinode->gfid), xl->name);                  goto err;          } diff --git a/xlators/nfs/server/src/nfs-common.c b/xlators/nfs/server/src/nfs-common.c index 1c0fb1755..61dfeacf1 100644 --- a/xlators/nfs/server/src/nfs-common.c +++ b/xlators/nfs/server/src/nfs-common.c @@ -158,8 +158,6 @@ nfs_loc_wipe (loc_t *loc)                  inode_unref (loc->inode);                  loc->inode = NULL;          } - -        loc->ino = 0;  } @@ -168,8 +166,6 @@ nfs_loc_copy (loc_t *dst, loc_t *src)  {  	int ret = -1; -	dst->ino = src->ino; -  	if (src->inode)  		dst->inode = inode_ref (src->inode); @@ -211,7 +207,6 @@ nfs_loc_fill (loc_t *loc, inode_t *inode, inode_t *parent, char *path)          if (inode) {                  loc->inode = inode_ref (inode); -                loc->ino = inode->ino;          }          if (parent) @@ -250,7 +245,7 @@ nfs_inode_loc_fill (inode_t *inode, loc_t *loc)          if ((!inode) || (!loc))                  return ret; -        if ((inode) && (inode->ino == 1)) +        if ((inode) && __is_root_gfid (inode->gfid))                  goto ignore_parent;          parent = inode_parent (inode, 0, NULL); diff --git a/xlators/nfs/server/src/nfs-fops.c b/xlators/nfs/server/src/nfs-fops.c index 95a657a12..d9b419c4e 100644 --- a/xlators/nfs/server/src/nfs-fops.c +++ b/xlators/nfs/server/src/nfs-fops.c @@ -152,21 +152,22 @@ err:   * for us to determine in the callback whether to funge the ino in the stat buf   * with 1 for the parent.   */ -#define nfs_fop_save_root_ino(locl, loc)                                    \ -        do {                                                                \ -                if ((loc)->ino == 1)                                        \ -                        (locl)->rootinode = 1;                              \ -                else if (((loc)->parent) && ((loc)->parent->ino == 1))      \ -                        (locl)->rootparentinode = 1;                        \ -        } while (0)                                                         \ +#define nfs_fop_save_root_ino(locl, loc)                                \ +        do {                                                            \ +                if (((loc)->inode) &&                                   \ +                    __is_root_gfid ((loc)->inode->gfid))                \ +                        (locl)->rootinode = 1;                          \ +                else if (((loc)->parent) &&                             \ +                         __is_root_gfid ((loc)->parent->gfid))          \ +                        (locl)->rootparentinode = 1;                    \ +        } while (0)  /* Do the same for an fd */ -#define nfs_fop_save_root_fd_ino(locl, fdesc)                               \ -        do {                                                                \ -                if ((fdesc)->inode->ino == 1)                               \ -                        (locl)->rootinode = 1;                              \ -        } while (0)                                                         \ - +#define nfs_fop_save_root_fd_ino(locl, fdesc)                           \ +        do {                                                            \ +                if (__is_root_gfid ((fdesc)->inode->gfid))              \ +                        (locl)->rootinode = 1;                          \ +        } while (0)  /* Use the state saved by the previous macro to funge the ino in the appropriate @@ -200,14 +201,15 @@ err:  /* If the newly created, inode's parent is root, we'll need to funge the ino   * in the parent attr when we receive them in the callback.   */ -#define nfs_fop_newloc_save_root_ino(locl, newloc)                             \ -        do {                                                                   \ -                if ((newloc)->ino == 1)                                        \ -                        (locl)->newrootinode = 1;                              \ -                else if (((newloc)->parent) && ((newloc)->parent->ino == 1))   \ -                        (locl)->newrootparentinode = 1;                        \ -        } while (0)                                                            \ - +#define nfs_fop_newloc_save_root_ino(locl, newloc)                      \ +        do {                                                            \ +                if (((newloc)->inode) &&                                \ +                    __is_root_gfid ((newloc)->inode->gfid))             \ +                        (locl)->newrootinode = 1;                       \ +                else if (((newloc)->parent) &&                          \ +                         __is_root_gfid ((newloc)->parent->gfid))       \ +                        (locl)->newrootparentinode = 1;                 \ +        } while (0)  #define nfs_fop_newloc_restore_root_ino(locl, fopret, preattr, postattr, prepar, postpar)  \          do {                                                                   \ diff --git a/xlators/nfs/server/src/nfs3.c b/xlators/nfs/server/src/nfs3.c index 751f00670..900321000 100644 --- a/xlators/nfs/server/src/nfs3.c +++ b/xlators/nfs/server/src/nfs3.c @@ -740,7 +740,7 @@ nfs3_getattr_resume (void *carg)           * sent. AND, this causes a problem for stat-prefetch in that it           * expects even the root inode to have been looked up.           */ -        if (cs->resolvedloc.inode->ino == 1) +        if (__is_root_gfid (cs->resolvedloc.inode->gfid))                  ret = nfs_lookup (cs->nfsx, cs->vol, &nfu, &cs->resolvedloc,                                    nfs3svc_getattr_lookup_cbk, cs);          else  | 
