summaryrefslogtreecommitdiffstats
path: root/xlators/nfs/server
Commit message (Collapse)AuthorAgeFilesLines
* mount/nfs: Gluster nfs crashes with subdirectory mountRajesh Amaravathi2011-09-071-1/+4
| | | | | | | | | | | | | Glusterfs used to crash trying to dereference a NULL pointer. Also, in mnt3_resolve_export_subdir, volume name was prefixed to sub directory exported, resulting in mount fail of sub directory. Fixed both issues. Change-Id: I746f0c244b4cbf03033d73ac3e40518762d76385 BUG: 3481 Reviewed-on: http://review.gluster.com/346 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Shehjar Tikoo <shehjart@gluster.com>
* nfs3: Resolve entry vs. hash conflict at same dir depthShehjar Tikoo2011-09-072-15/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Intro Note ========== The current code in hard fh resolution takes the first-match approach, i.e. which ever dirent either matches the hash or matches the gfid first is the one chosen as the result for the next step of fh resolution. In the latter case, i.e., dirent matches the gfid, we the next step is to conclude the fh resolution by returning the entry whose gfid matched. In the former, i.e., the hash matches the dirent, we choose the hash-matching dirent as the next directory to descend into, for searching the file to be operated upon. Problem ======= When performing hard fh resolution, there can be a situation where: o the hash of the primary entry,i.e. the entry we're looking for and the hash of another sibling directory, match. Note the use of "sibling", meaning both the primary entry and the hash matching one are in the same directory, i.e., their filehandle.hashcount will be same. o the sibling directory is encountered first during the dir search. Because of the current code described in "Intro", we'll end up descending into the sibling directory even though the correct behaviour is to ignore this and wait till we encounter the primary entry in the same parent directory. Once we end up descending into this sibling directory, the directory depth validation check fails. The check fails because it notices that the resolution is attempting to open a directory that is deeper in the fs tree than the file we're looking for. When this check fails, we return an ESTALE. So basically, a false-positive results in an estale to Specsfs. This is not a theoretical situation. Me and Avati saw this on specsfs test where sfs created terabytes-sized file system for its tests. The number of files was so huge in a single directory that the hashes of two entries ended up colliding. Change-Id: I78d8756252330201e165d788a29277b4bce0df90 BUG: 3510 Reviewed-on: http://review.gluster.com/358 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Shehjar Tikoo <shehjart@gluster.com>
* xlators/nfs: Fix a typo in option descriptionVijay Bellur2011-08-201-3/+3
| | | | | | | | Change-Id: Ibb888357b87603544f360d181637138261fb3b71 BUG: 3445 Reviewed-on: http://review.gluster.com/275 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* mgmt/Glusterd: Implementation volume set help/help-xmlKaushik BV2011-08-181-7/+69
| | | | | | | Change-Id: I0c54fd1c15550e5e5551e95ed32adb14d8029fab Reviewed-on: http://review.gluster.com/238 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* Change Copyright current yearPranith Kumar K2011-08-1019-19/+19
| | | | | | | | Change-Id: Id1f1a91cf15d933d5621a0073ddaebe02df0f159 BUG: 3348 Reviewed-on: http://review.gluster.com/198 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* LICENSE: s/GNU Affero General Public/GNU General Public/Pranith Kumar K2011-08-0619-57/+57
| | | | | | | | Change-Id: Ibf5f45431d7a55b70d7304649af652d6f25bb688 BUG: 3348 Reviewed-on: http://review.gluster.com/183 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* NFS access control list: Decode the NFS requests into mode formatshishir gowda2011-07-073-2/+22
| | | | | | | | Signed-off-by: shishir gowda <shishirng@gluster.com> Signed-off-by: Vijay Bellur <vijay@gluster.com> BUG: 3057 () URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3057
* nfs: Change NFS3 access op to use access fopShehjar Tikoo2011-07-057-174/+84
| | | | | | | | | | | This change is needed so that we have a uniform dependence on posix-acl for permission checks as well as ACL checks. Signed-off-by: Shehjar Tikoo <shehjart@gluster.com> Signed-off-by: Vijay Bellur <vijay@gluster.com> BUG: 3057 () URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3057
* NFS : Don't set setattr_valid for exclusive create call.Gaurav2011-06-081-2/+5
| | | | | | | | Signed-off-by: Gaurav <gaurav@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2553 (NFS file create with Mac client and UNCHECKED mode returns "Operation not permitted") URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2553
* NFS : Handle buffer overflow in nfs3_create_exclusive.Gaurav2011-06-011-2/+4
| | | | | | | | Signed-off-by: Gaurav <gaurav@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2972 (Buffer overflow in nfs3_create_exclusive.) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2972
* build fixesVenky Shankar2011-04-111-8/+34
| | | | | | | | Signed-off-by: Venky Shankar <venky@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2550 (build warnings) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2550
* NFS : Exclusive create storing verifier.Gaurav2011-04-081-2/+2
| | | | | | | | Signed-off-by: Gaurav <gaurav@gluster.com> Signed-off-by: Vijay Bellur <vijay@gluster.com> BUG: 2553 (NFS file create with Mac client and UNCHECKED mode returns "Operation not permitted") URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2553
* nfs: convert errno EDQUOT into appropriate nfs-errno.Raghavendra G2011-04-061-0/+4
| | | | | | | | Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Vijay Bellur <vijay@gluster.com> BUG: 2607 (Fileop fails when quota is enabled) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2607
* NFS : Store verifier for exlusive mode craete.Gaurav2011-04-061-6/+17
| | | | | | | | Signed-off-by: Gaurav <gaurav@gluster.com> Signed-off-by: Vijay Bellur <vijay@gluster.com> BUG: 2553 (NFS file create with Mac client and UNCHECKED mode returns "Operation not permitted") URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2553
* nfs: capture attrs of create request in cs->stbuf for later useAnand Avati2011-04-011-1/+1
| | | | | | | | | | | | | | | | | | when attrs coming in as part of create request contain modes other than mode, they were getting discarded previously and a setattr was getting performed on a 0-filled iatt structure. This would result in EPERM at the access control translator as non-root users cannot chown a file to uid 0. Not seen with Linux NFS client as it (very likely) relies upon auth-unix to set the ownership of the file or sends an explicit setattr after the create. Signed-off-by: Anand Avati <avati@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 2553 (NFS file create with Mac client and UNCHECKED mode returns "Operation not permitted") URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2553
* nfs: more fixes to capture sattr for further usageAnand Avati2011-03-301-3/+3
| | | | | | | | | | | | | in - mkdir - mknod Signed-off-by: Anand Avati <avati@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 2553 (NFS file create with Mac client and UNCHECKED mode returns "Operation not permitted") URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2553
* NFS : Volume access option accepts only valid values.Gaurav2011-03-291-0/+1
| | | | | | | | Signed-off-by: Gaurav <gaurav@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 2598 (Volume access option suceeds with any string value) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2598
* nfs3: Flush file I/O call states on open failureShehjar Tikoo2011-03-251-8/+22
| | | | | | | | Signed-off-by: Shehjar Tikoo <shehjart@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 2566 (NFS read hangs when arequal-checksum script is run) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2566
* nfs: Remove redundant and erroneous check for create mode EXCLUSIVE.Vikas Gorur2011-03-251-1/+1
| | | | | | | | | | | | | | nfs3.c/nfs3_create_common: The if condition checks for create mode being EXCLUSIVE. However, when create mode is EXCLUSIVE, this function never gets called (nfs3_create_exclusive is called). Also, instead of checking, it actually sets the value of createmode (= instead of ==). Signed-off-by: Vikas Gorur <vikas@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 2553 (NFS file create with Mac client and UNCHECKED mode returns "Operation not permitted") URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2553
* CLI : Validate options farmework.Gaurav2011-03-231-35/+19
| | | | | | | | Signed-off-by: Gaurav <gaurav@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 2064 (NFS options are removed upon glusterd restart) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2064
* spelling errors fixed across the code baseAmar Tumballi2011-03-221-1/+1
| | | | | | | | | | | | | recieve -> receive maintainence -> maintenance verison -> version commited -> committed Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 2262 (Spelling errors in source) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2262
* Change NFS_PATH_MAX value to 4096shishir gowda2011-03-181-1/+3
| | | | | | | | | | | | This is tmp fix for crash seen on solaris gnfs server is received path is longer than PATH_MAX. On solaris default PATH_MAX is 1024, and linux default PATH_MAX is 4096. Signed-off-by: shishir gowda <shishirng@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 2476 () URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2476
* NFS : Check for duplicate entries while filling up child_up array.Gaurav2011-03-021-0/+7
| | | | | | | | Signed-off-by: Gaurav <gaurav@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2483 (Showmount output is not consistent with exported volumes.) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2483
* CLI : NFS disable option through volume set.Gaurav2011-03-011-0/+5
| | | | | | | | Signed-off-by: Gaurav <gaurav@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2094 (Need option to turn off NFS) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2094
* NFS : Fail Nfs init if volume-id not found.Gaurav2011-02-101-3/+2
| | | | | | | | Signed-off-by: Gaurav <gaurav@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2124 (NFS crashes when volume-id option is not given with dynamic-volume option) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2124
* mount3: Do not return error when mount list is emptyShehjar Tikoo2011-02-041-0/+4
| | | | | | | | | | | An exports list can be empty when no subvolumes have come up. No point returning error and confusing the user. Signed-off-by: Shehjar Tikoo <shehjart@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2345 (Taking distribute brick down returns 10006 error on mount command) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2345
* nfs: Set volume started after root lookup succeedsShehjar Tikoo2011-02-041-1/+1
| | | | | | | | Signed-off-by: Shehjar Tikoo <shehjart@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2345 (Taking distribute brick down returns 10006 error on mount command) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2345
* Logging : Use of uuid_utoa and uuid_utoa_r.Gaurav2011-02-043-29/+20
| | | | | | | | Signed-off-by: Gaurav <gaurav@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2308 (Threadsafe uuid to string conversion function) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2308
* features/access-control: skip access-tests if the call is from fusePranith K2011-01-261-0/+1
| | | | | | | | | | | | | | Fuse cant send aux gids. So access-control checks treat non-primary-group membership of user as "other". So skip access-control checks if the call is from fuse. We added a hack to treat all calls with pid set to 1 as calls from nfs. So for calls with pid not 1 we skip the access-control checks on all fops. Signed-off-by: Pranith Kumar K <pranithk@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2296 (svn / subversion fails on gluster volume (replicated and non-replicated)) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2296
* nfs3: Handle root resolution failuresv3.1.2Shehjar Tikoo2011-01-131-9/+9
| | | | | | | | | | | ..to prevent a second reply to the client which results in accessing a call state structure that gets freed on the first reply. Signed-off-by: Shehjar Tikoo <shehjart@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2286 ([glusterfs 3.1.2qa3]: Crash due to corruption in gf_dirent_free) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2286
* mgmt/Glusterd: make nfs.mem-factor settable through CLIKaushik BV2011-01-111-3/+18
| | | | | | | | Signed-off-by: Kaushik BV <kaushikbv@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2277 (Regression in Gluster NFS re-read performance) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2277
* nfs: Introduce tunable for memory consumptionShehjar Tikoo2011-01-111-1/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NFS has used a common define called the mem-factor to determine how much memory is allocated for the following items: o inode table o local structures used by nfs for storing fop state o local structures used by nfs3 for storing nfs op state These are all allocated through the mem-pool. The factor is multiplied by a multiple that is specific to each data structure. For eg. define GF_NFS_CONCURRENT_OPS_MULT 15 define GF_NFS_INODE_LRU_MULT 6000 The first value is used for allocating a mem-pool for storing state for each fop or nfs op that is currently being handled. Knowing that linux allows at most 128 in-flight requests, this multiple combined with the default mem-factor of 15 gives us 225 slots in the mem-pool for the local structures. Similarly, 6000*15 gives us a space of 90k inodes in the lru. That means, increasing the common mem-factor will allow increasing the perf under some conditions. This patch introduces the mem-factor as a configurable option. Signed-off-by: Shehjar Tikoo <shehjart@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2277 (Regression in Gluster NFS re-read performance) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2277
* nfs3: Ignore requests for volumes without a single CHILD-UPShehjar Tikoo2011-01-071-42/+73
| | | | | | | | | | | NFS ignores the requests for subvolumes on which child-up has never been received. Signed-off-by: Shehjar Tikoo <shehjart@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2200 (cp dies with "Invalid argument" after failover) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2200
* nfs3: Force root lookup before starting fh resolutionShehjar Tikoo2010-12-293-7/+127
| | | | | | | | Signed-off-by: Shehjar Tikoo <shehjart@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2200 (cp dies with "Invalid argument" after failover) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2200
* nfs/server: unrefing inodes on error in nfs_loc_copy ().Mohammed Junaid Ahmed2010-12-291-0/+8
| | | | | | | | Signed-off-by: Junaid <junaid@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2252 (unreffing of inodes not done when memory allocation fails) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2252
* nfs: Support subdirectory exportsShehjar Tikoo2010-12-293-17/+183
| | | | | | | | | | | | | | | | | | Enable exporting directories as separate exports. Even though the directories wont show up in showmount output, they'll still be mount'able. The new option: nfs.export-dirs <on|off> is enabled by default so that users dont have to wait till this option is incorporated into the gluster command line. Signed-off-by: Shehjar Tikoo <shehjart@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 1743 (XenServer is not compatible with GlusterNFS) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1743
* nfs3: Access cbk must account for auxgids on group access checksShehjar Tikoo2010-12-273-6/+23
| | | | | | | | Signed-off-by: Shehjar Tikoo <shehjart@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2045 (Write permission denied for non-primary group membership) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2045
* nfs: Do not touch iatt on failed fopsShehjar Tikoo2010-12-271-20/+30
| | | | | | | | Signed-off-by: Shehjar Tikoo <shehjart@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2169 (NFS crash in nfs-fops due to failed fop from subvolume) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2169
* nfs: fix warnings due to format string mismatches during invocation of gf_log.Raghavendra G2010-12-142-4/+4
| | | | | | | | Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2211 ((re)introduce warnings for format string/parameter mismatch) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2211
* nfs: cleanup inode_ref/inode_unref to fix inode leaks and extra unrefsAnand Avati2010-12-073-16/+66
| | | | | | | | Signed-off-by: Anand V. Avati <avati@blackhole.gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2195 (Crash in __inode_retire on NFS failover) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2195
* nfs: Start nfs process even if portmap registration failsShehjar Tikoo2010-12-031-4/+7
| | | | | | | | | | | | It helps to have the process be listed in ps ax|grep output so that user can get the path to the log from the listed command line and check what the problem is. Signed-off-by: Shehjar Tikoo <shehjart@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2093 (volumes cannot start when one node in a replicated setup is down) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2093
* nfs3: Prevent second lookup on a fresh entry lookupShehjar Tikoo2010-11-253-3/+11
| | | | | | | | Signed-off-by: Shehjar Tikoo <shehjart@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 1756 (NFS must revalidate inode on first ESTALE on lookup) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1756
* nfs: Export subvolumes on per-subvolume CHILD-UPShehjar Tikoo2010-11-253-13/+29
| | | | | | | | | | | | | | ..so that nfs clients can mount an UP subvolume even if other subvolumes havent come up yet. This was a problem because nfs was waiting for all children to receive CHILD-UP before exporting any subvolume. Signed-off-by: Shehjar Tikoo <shehjart@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2093 (volumes cannot start when one node in a replicated setup is down) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2093
* nfs3: Fresh inode lookup on failed revalidationShehjar Tikoo2010-11-252-1/+47
| | | | | | | | | | | | | | | | Brings in changes that were earlier introduced in commit: f5afcc47f9f00472d6c2b3f48127e02332cd457a but reverted because the patch was buggy and caused a seg-fault due to extra inode_unrefs. It fixes that extra inode_unref and cleans up the revalidation logic. Signed-off-by: Shehjar Tikoo <shehjart@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 1756 (NFS must revalidate inode on first ESTALE on lookup) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1756
* nfs: Undo selective changes in inode revalidationShehjar Tikoo2010-11-254-92/+2
| | | | | | | | | | | Those changes were brought in by commit 161850285ff06e90f2c990989bab9513dd4a4289: "nfs: re-implement logic to perform fresh lookups when lookup revalidates fail" Signed-off-by: Shehjar Tikoo <shehjart@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 1756 (NFS must revalidate inode on first ESTALE on lookup) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1756
* nfs: treat GF_EVENT_CHILD_CONNECTING as subvolume up statusAnand Avati2010-11-181-0/+1
| | | | | | | | | | | | | | | GF_EVENT_CHILD_CONNECTING is sent as a status from underlying subvolumes after a sufficient margin of time (tcp connect() timeout) if the subvolumes are not reachable. This should avoid the problem of NFS not being reachable if any volume is down Signed-off-by: Anand V. Avati <avati@blackhole.gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2093 (volumes cannot start when one node in a replicated setup is down) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2093
* Solaris: df -h returned invalid sizeshishir gowda2010-11-151-2/+2
| | | | | | | | | | | | The reason seems to have been multiplying fields with f_bsize, while they are in f_frsize units. On linux both f_bize and f_frbsize seems to have been the same Signed-off-by: shishir gowda <shishirng@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 1021 (NFS: df -h shows incorrect out put) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1021
* Revert "nfs: Use only 38467 as default port instead of 3846[567]"Shehjar Tikoo2010-11-153-4/+3
| | | | | | | | | | | | | | | This reverts commit be5c02a81c19336a6b922b1e1f28293c90955e7f. By default, continue to register the three original port numbers so that an upgrade to future version from 3.1 release does not break mount requests against portmap, which may have old port numbers registered. Signed-off-by: Shehjar Tikoo <shehjart@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 1743 (XenServer is not compatible with GlusterNFS) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1743
* nfs: opendir/closedir for every readdirAnand Avati2010-11-152-14/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert "nfs3: Unref & unbind dir fd with inode lock on EOF" This reverts commit 4e6fb304ce41acbaf7c9ba67c06bf443e65082e8. The above commit (which unbinds fds at EOF) does not fix the original bug (1619) because a readdir from a second app could have already started before the readdir_cbk of the first app's readdir reaches NFS code. Hence the race still exists. Performing extra unrefs when EOF is received is not a reliable way of detecting that a client has performed a closedir (and to close the fd ourselves). Neither is interpreting a 0 cookies a new opendir. Clients can always use telldir/seekdir and hit EOFs twice. Due to the way NFS3 protocol is designed, it is just not possible for the server to reliably detect opendirs/closedirs performed by the client and map the corresponding readdirs to the same dir fd on the server side. The only reliable way of fixing this is to perform opendir/closedir at the cost of performance. Any optimization towards keeping dir fds open attempting to map them with application's opendir/closedir will either result in fd leaks or extra fd unrefs. Signed-off-by: Anand V. Avati <avati@blackhole.gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2061 (NFS server crashes in readdir_fstat_cbk due to extra fd unref) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2061
* mnt3: Fail mount requests for disallowed clientsShehjar Tikoo2010-11-091-2/+3
| | | | | | | | Signed-off-by: Shehjar Tikoo <shehjart@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 1385 (showmount says no access though it can be mounted.) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1385