OT? 10.4 VFS - ls works, but Carbon File Mgr listing does not
site_archiver@lists.apple.com Delivered-To: darwin-kernel@lists.apple.com -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Here's the pertinent info: Preferred I/O size is 64K. vfs_setflags(mp, MNT_NODEV|MNT_NOSUID) vfs_setauthopaque() is called as the last step in our mount VNOP vfs_fsadd flags: VFS_TBLTHREADSAFE|VFS_TBLNOTYPENUM vol caps: /* Capabilities we know about */ capsp->valid[VOL_CAPABILITIES_FORMAT] = VOL_CAP_FMT_PERSISTENTOBJECTIDS | VOL_CAP_FMT_SYMBOLICLINKS | VOL_CAP_FMT_HARDLINKS | VOL_CAP_FMT_CASE_PRESERVING | VOL_CAP_FMT_FAST_STATFS #ifdef OSX_KPI | VOL_CAP_FMT_2TB_FILESIZE #endif ; capsp->valid[VOL_CAPABILITIES_INTERFACES] = VOL_CAP_INT_SEARCHFS | VOL_CAP_INT_ATTRLIST | VOL_CAP_INT_NFSEXPORT | VOL_CAP_INT_READDIRATTR; capsp->valid[VOL_CAPABILITIES_RESERVED1] = 0; capsp->valid[VOL_CAPABILITIES_RESERVED2] = 0; } vol attrs: Any ideas would be much appreciated. Thanks. Brian Bergstrand <http://www.bergstrand.org/brian/> PGP Key ID: 0xB6C7B6A2 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (Darwin) iD8DBQFC6TxUedHYW7bHtqIRAuAQAJ92yzYZRR/HJlVyqlGEF6eKLD2+9QCg+wZJ SggltMA3BcbaMHW0C9BygJs= =nPXi -----END PGP SIGNATURE----- _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-kernel mailing list (Darwin-kernel@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-kernel/site_archiver%40lists.a... This may be OT, and if so let me know, but there are no lists for Carbon File Mgr / VFS interaction. I've been porting our VFS plugin to 10.4 and we are just about ready to go for a public beta release. However there's one huge problem left: File listings in the Finder and Open dialogs appear empty 99% of the time. I can see readdir being called, and returning the dir entries, and lookup seems to be called on most of them as well as access, none of these are returning errors, and everything works with ls (and it's various flags -l -F -C -i, etc) -- but for whatever reason Carbon File Mgr is just ignoring the entries. Sometimes I'll see the entries flash in a window for less than a second and then disappear and then other times they'll never appear. I think the problem may be related to our access/getattr calls, but I don't know what to look for. I've looked at NFS and WebDav and our access/getattr are as similar as possible to those. Network FS, we don't support native Carbon interfaces, no persistent id's, we do have unique object ID's, but they are a generated on the fly and can change with a Rename/Move. I've tried with an all access admin account and a limited access acct that has r/w to a few of the sub-folders on the volume, but not the vol itself. No difference in what is observed. __private_extern__ void volcaps(mount_t mp, vol_capabilities_attr_t *capsp) { /* Capabilities we support */ capsp->capabilities[VOL_CAPABILITIES_FORMAT] = VOL_CAP_FMT_CASE_PRESERVING /* Not true for DOS NS */ | VOL_CAP_FMT_FAST_STATFS /* NCIOM caches stat info */ #ifdef OSX_KPI | VOL_CAP_FMT_2TB_FILESIZE // We support at least 2TB files. #endif ; capsp->capabilities[VOL_CAPABILITIES_INTERFACES] = VOL_CAP_INT_ATTRLIST; capsp->capabilities[VOL_CAPABILITIES_RESERVED1] = 0; capsp->capabilities[VOL_CAPABILITIES_RESERVED2] = 0; #define NCP_ATTR_CMN_NATIVE ( \ ATTR_CMN_FSID | ATTR_CMN_OBJTAG | \ ATTR_CMN_OBJID | ATTR_CMN_MODTIME | ATTR_CMN_CHGTIME | \ ATTR_CMN_ACCTIME | ATTR_CMN_OWNERID | ATTR_CMN_GRPID ) #define NCP_ATTR_CMN_SUPPORTED NCP_ATTR_CMN_NATIVE #define NCP_ATTR_VOL_NATIVE ( \ ATTR_VOL_FSTYPE | ATTR_VOL_SIGNATURE | ATTR_VOL_SIZE | \ ATTR_VOL_SPACEFREE | ATTR_VOL_SPACEAVAIL | ATTR_VOL_IOBLOCKSIZE | \ ATTR_VOL_MOUNTPOINT | ATTR_VOL_NAME | ATTR_VOL_MOUNTPOINT | \ ATTR_VOL_MOUNTFLAGS | ATTR_VOL_MOUNTEDDEVICE | ATTR_VOL_CAPABILITIES | \ ATTR_VOL_ATTRIBUTES | ATTR_VOL_INFO ) This email sent to site_archiver@lists.apple.com
participants (1)
-
Brian Bergstrand