Details
-
Bug
-
Resolution: Fixed
-
Minor
-
None
-
Lustre 2.6.0, Lustre 2.7.0
-
3
-
13883
Description
It seems that lu_attr->la_flags is being mis-used in the OSP and OUT code to pass the "directory in use" state from OUT to OSP:
static int out_attr_get(struct tgt_session_info *tsi) { /* * If it is a directory, we will also check whether the * directory is empty. * la_flags = 0 : Empty. * = 1 : Not empty. */ la->la_flags = 0; if (S_ISDIR(la->la_mode)) { : : if (result == 0) la->la_flags = 1;
However, this breaks the ability to return the actual attributes from a remote directory (e.g. LUSTRE_IMMUTABLE_FL, LUSTRE_APPEND_FL, LUSTRE_NOATIME_FL, LUSTRE_DIRSYNC_FL, etc) that are returned in la_flags from osd_attr_get() using the OUT interface.