[Bugs] [Bug 1297203] New: readdir false-failure with non-Linux

bugzilla at redhat.com bugzilla at redhat.com
Sun Jan 10 14:30:14 UTC 2016


https://bugzilla.redhat.com/show_bug.cgi?id=1297203

            Bug ID: 1297203
           Summary: readdir false-failure with non-Linux
           Product: GlusterFS
           Version: 3.6.8
         Component: posix
          Assignee: bugs at gluster.org
          Reporter: root at linkage.white-void.net
                CC: bugs at gluster.org, gluster-bugs at redhat.com



Created attachment 1113329
  --> https://bugzilla.redhat.com/attachment.cgi?id=1113329&action=edit
Experimental Patch for glusterfs-3.6.8.

Description of problem:
With GlusterFS on FreeBSD and VMware ESXi as NFS client, I encountered the
following error and accessing storage takes long time.

[2016-01-10 20:20:41.485157] E [posix.c:4902:posix_fill_readdir] 0-gv0-posix:
seekdir(0x5) failed on dir=0x806813940: Invalid argument (offset reused from
another DIR * structure?)
[2016-01-10 20:20:41.485283] I [server-rpc-fops.c:1882:server_readdirp_cbk]
0-gv0-server: 36451: READDIRP -2 (d3608328-6167-42fe-8ec8-e6cde384e1ab) ==>
(Invalid argument)

How reproducible:
Always.

Steps to Reproduce:
1. Build on FreeBSD 10.1-amd64 environment.
2. Create a single-brick volume on UFS or ZFS pool.
3. Connect from VMware ESXi 5.1 to GlusterFS, as NFS storage.

Actual results:
Got the errors and accessing storage from ESXi takes too long.

Expected results:
No errors logged.

Additional info:
Reading GlusterFS posix storage code I found two problems.
One is __posix_fd_ctx_get (in xlators/storage/posix/src/posix-helpers.c) does
not set pfd->dir_eof, and another one is posix_fill_readdir does not check
whether pfd->dir_eof is set.

dir_eof is added for NetBSD port, with bug 1129939 and review
http://review.gluster.org/8926.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.


More information about the Bugs mailing list