History log of /haiku/src/add-ons/kernel/file_systems/nfs4/DirectoryCache.cpp
Revision Date Author Comments
# 6f7fc220 07-Mar-2016 Axel Dörfler <axeld@pinc-software.de>

NodeMonitor: Added B_WATCH_CHILDREN flag.

* Added a directory argument for notify_{stat/attribute}_changed().
* This allows to watch only a directory, and get the notifications for
all of its files, not just add/remove entry notifications.


# 469f13fd 25-Mar-2013 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: support hard links properly

The main purpose of this patch is to prevent VFS from removing a vnode to early
what might have happened if the NFS client knew it had more than one name but
then one of them was deleted. Moreover, all discovered and still valid names
are stored what may be useful in proper file handle recovery when they are
volatile.

This patch fixes both #9558 and #9561.


# 3d064796 20-Mar-2013 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Allow customization of DirectoryCache expiration time


# 1ca8178c 20-Mar-2013 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Fix #9555: wrong relational operator used


# b0e5bfea 18-Mar-2013 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Fix CID 991246: use name of the old entry when reporting removal


# 4d120407 04-Jan-2013 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Remove CacheRevalidator

There is no point in periodically revalidating all existing directory caches.
Directory snapshot can be revalidated when readdir is invoked.


# eed5b716 19-Dec-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Fix problems with reading directory entries
* Inode::ReadDir missed an entry when given buffer was too small
* Each OpenDirCookie now has its own copy of directory snapshot what
would prevent Inode::ReadDir from accessing freed memory when removing
files and reading directory entries simultaneously
* Several minor issues fixed


# 1e67a2cd 31-Oct-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Add numerous assertion checks


# bcb18a9b 31-Oct-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4, dns_resolver: fix numerous style violations


# cae470f9 14-Sep-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Fix some cache revalidator problems


# dee0fd83 16-Aug-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Update FileInfo at rename


# e8c12d94 16-Aug-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Fix file handle recovery


# 060a4636 16-Aug-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Make the client more configurable


# 376eef4a 15-Aug-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Add node to inode to file handle map before notifying


# c0344ea1 14-Aug-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Get correct change value for attribute directories


# 7f504091 09-Aug-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Fix directory cache revalidation when cache invalid


# 2314d073 09-Aug-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Inode::GetDirSnapshot should not require OpenDirCookie


# f7c35cf4 08-Aug-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Add attribute directory related hooks


# 3ae5e813 07-Aug-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Implement node monitoring


# 7cac2f6e 19-Jul-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Local creation of node should not invalidate the cache


# 09dbdd36 19-Jul-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Add full directory cache implementation


# 75fe7b90 18-Jul-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Add directory and name basic implementation


# 469f13fdfe886f0eca9cc9204ad2e3da7377f7ba 25-Mar-2013 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: support hard links properly

The main purpose of this patch is to prevent VFS from removing a vnode to early
what might have happened if the NFS client knew it had more than one name but
then one of them was deleted. Moreover, all discovered and still valid names
are stored what may be useful in proper file handle recovery when they are
volatile.

This patch fixes both #9558 and #9561.


# 3d064796c7e4765e62811d3d17f94c015d9af85b 20-Mar-2013 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Allow customization of DirectoryCache expiration time


# 1ca8178c52e353bc6832e7418a844d86dcb712d6 20-Mar-2013 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Fix #9555: wrong relational operator used


# b0e5bfeab52f88aefd73ebd22787edea05c7d3ca 18-Mar-2013 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Fix CID 991246: use name of the old entry when reporting removal


# 4d120407378d6ec21783c076cdbb753e81a62eba 04-Jan-2013 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Remove CacheRevalidator

There is no point in periodically revalidating all existing directory caches.
Directory snapshot can be revalidated when readdir is invoked.


# eed5b716d0d47b766659295406c54f910dc1a092 19-Dec-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Fix problems with reading directory entries
* Inode::ReadDir missed an entry when given buffer was too small
* Each OpenDirCookie now has its own copy of directory snapshot what
would prevent Inode::ReadDir from accessing freed memory when removing
files and reading directory entries simultaneously
* Several minor issues fixed


# 1e67a2cdd9414d6f699f253161d19d4aa8fe35e6 31-Oct-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Add numerous assertion checks


# bcb18a9b361caf5ec949023dce39b831709a917d 31-Oct-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4, dns_resolver: fix numerous style violations


# cae470f9229eab46fe7e8dd8a8091f626504b394 14-Sep-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Fix some cache revalidator problems


# dee0fd8348ec064654517af747c9554c993eed4f 16-Aug-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Update FileInfo at rename


# e8c12d9410d16c9a504198755b85c385e7ab667a 16-Aug-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Fix file handle recovery


# 060a4636e4a286dd70b9cbf335d12ddc10924937 16-Aug-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Make the client more configurable


# 376eef4a9b32abb57a38238a7e9eed5268f3079a 15-Aug-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Add node to inode to file handle map before notifying


# c0344ea198e280a3e8f23191262e2d7fffe9ff0c 14-Aug-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Get correct change value for attribute directories


# 7f504091ecf0cec2316b9c5fa079836d56130624 09-Aug-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Fix directory cache revalidation when cache invalid


# 2314d073afc14b7a0e5a1eb27925658b9f2cc212 09-Aug-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Inode::GetDirSnapshot should not require OpenDirCookie


# f7c35cf464752e44ce966c9a12d61882f5387611 08-Aug-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Add attribute directory related hooks


# 3ae5e813c43fe9602bbc5a06ee3821887f9e17cb 07-Aug-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Implement node monitoring


# 7cac2f6e50588ad130d2770ada1b1981569a1602 19-Jul-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Local creation of node should not invalidate the cache


# 09dbdd3644142673a8df63ae77ff8ccd4524c835 19-Jul-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Add full directory cache implementation


# 75fe7b90bbb751ea161dc6d4c81a3f8e694047b5 18-Jul-2012 Pawel Dziepak <pdziepak@quarnos.org>

nfs4: Add directory and name basic implementation