On Fri, 06 Jul 2007 00:28:15 +0200, Pascal Hofstee <caelian_at_gmail.com> wrote: > Hi, > > I did some addititional debugging and adding a small workaround to > smbd/vfs.c making the function vfs_readdirname() return ptr->d_name > directly instead of relying on the temporary variable dname gets the > code properly skipping the "." and ".." entries. > Have any other work arounds for this issue been found? - other than deleting the repdir_get* files as noted by Brian? Are there any consequences to removing the files that I don't want to run into? >>From that point on the code enters into a new problem area which can be > observed in the backtrace posted at http://pastebin.ca/604961 > > Joe Marcus Clarke helped me out further with debugging this problem and > we have come to the conclusion that the following assertion in samba's > telldir() implementation located in lib/replace/repdir_getdirentries.c > does not hold true on ZFS directories (marcus mentioned something about > lseek() behaving differently on ZFS than it does on UFS): > > if (d->seekpos & (DIR_BUF_SIZE-1)) { > abort(); > } > > Marcus was so kind to put up a simple test case at > http://www.marcuscom.com/downloads/samba_zfs.c > > Change main() to point to a ZFS directory, and watch it crash. > Then point to a UFS directory, and it works. > The seekpos is printed each time. > > Hopefully this will be enough information to get us to figure out a > workable solution here. > > -- > Pascal Hofstee > > > _______________________________________________ > freebsd-current_at_freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org"Received on Sat Jul 21 2007 - 13:49:21 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:15 UTC