name cache: lookup returns flag is_negative

added function entry_invis() in addition to entry_has_expired().  entry_invis() returns true if entry_has_expired() or for negative entries.  the is_negative flag is set for negative entries (defined as having entry->attributes == NULL), and returned by nfs41_name_cache_lookup().  when nfs41_lookup() sees this flag set, it returns the status without attempting to do any more lookups

Signed-off-by: Casey Bodley <cbodley@umich.edu>
This commit is contained in:
Casey Bodley 2010-10-11 16:04:06 -04:00
parent 55ff9d855d
commit 112313bc45
3 changed files with 39 additions and 21 deletions

View file

@ -66,7 +66,8 @@ int nfs41_name_cache_lookup(
OUT OPTIONAL const char **remaining_path_out,
OUT OPTIONAL nfs41_fh *parent_out,
OUT OPTIONAL nfs41_fh *target_out,
OUT OPTIONAL nfs41_file_info *info_out);
OUT OPTIONAL nfs41_file_info *info_out,
OUT OPTIONAL bool_t *is_negative);
int nfs41_name_cache_insert(
IN struct nfs41_name_cache *cache,