Re: [RFC][PATCH 05/10] cifs: define superblock-level cache index objects and register them
From: David Howells
Date: Fri Jun 25 2010 - 09:27:12 EST
David Howells <dhowells@xxxxxxxxxx> wrote:
> > > validate the root directory of the share in some way?
> > I don't know if there is a way to do this.
> Is there an inode number or something? Even the creation time might do.
Looking in cifspdu.h, there are a number of things that it might be possible
(1) FILE_ALL_INFO: CreationTime, IndexNumber, IndexNumber1, FileName
(assuming this isn't flattened to '\' or something for the root of a
(2) FILE_UNIX_BASIC_INFO: DevMajor, DevMinor, UniqueId.
(3) FILE_INFO_STANDARD: CreationDate, CreationTime.
(4) FILE_INFO_BASIC: CreationTime.
(5) FILE_DIRECTORY_INFO: FileIndex, CreationTime, FileName.
(6) SEARCH_ID_FULL_DIR_INFO: FileIndex, CreationTime, UniqueId, FileName.
(7) FILE_BOTH_DIRECTORY_INFO: FileIndex, CreationTime, ShortName, FileName.
(8) OPEN_RSP_EXT: Fid, CreationTime, VolumeGUID, FileId.
You may have to choose different sets of things, depending on what the server
has on offer. Also, don't forget, if you can't work out whether a share is
coherent or not from the above, you can always use LastWriteTime, ChangeTime
and EndOfFile and just discard the whole subtree if they differ.
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/