cifs: make cnvrtDosUnixTm take a little-endian args and an offset
The callers primarily end up converting the args from le anyway. Also, most of the callers end up needing to add an offset to the result. The exception to these rules is cnvrtDosCifsTm, but there are no callers of that function, so we might as well remove it. Signed-off-by: Jeff Layton <jlayton@redhat.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Steve French <sfrench@us.ibm.com>
This commit is contained in:
committed by
Steve French
parent
07119a4df8
commit
c4a2c08db7
@@ -115,17 +115,6 @@ construct_dentry(struct qstr *qstring, struct file *file,
|
||||
return rc;
|
||||
}
|
||||
|
||||
static void AdjustForTZ(struct cifsTconInfo *tcon, struct inode *inode)
|
||||
{
|
||||
if ((tcon) && (tcon->ses) && (tcon->ses->server)) {
|
||||
inode->i_ctime.tv_sec += tcon->ses->server->timeAdj;
|
||||
inode->i_mtime.tv_sec += tcon->ses->server->timeAdj;
|
||||
inode->i_atime.tv_sec += tcon->ses->server->timeAdj;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
static void fill_in_inode(struct inode *tmp_inode, int new_buf_type,
|
||||
char *buf, unsigned int *pobject_type, int isNewInode)
|
||||
{
|
||||
@@ -156,20 +145,19 @@ static void fill_in_inode(struct inode *tmp_inode, int new_buf_type,
|
||||
tmp_inode->i_ctime =
|
||||
cifs_NTtimeToUnix(pfindData->ChangeTime);
|
||||
} else { /* legacy, OS2 and DOS style */
|
||||
/* struct timespec ts;*/
|
||||
int offset = cifs_sb->tcon->ses->server->timeAdj;
|
||||
FIND_FILE_STANDARD_INFO *pfindData =
|
||||
(FIND_FILE_STANDARD_INFO *)buf;
|
||||
|
||||
tmp_inode->i_mtime = cnvrtDosUnixTm(
|
||||
le16_to_cpu(pfindData->LastWriteDate),
|
||||
le16_to_cpu(pfindData->LastWriteTime));
|
||||
tmp_inode->i_atime = cnvrtDosUnixTm(
|
||||
le16_to_cpu(pfindData->LastAccessDate),
|
||||
le16_to_cpu(pfindData->LastAccessTime));
|
||||
tmp_inode->i_ctime = cnvrtDosUnixTm(
|
||||
le16_to_cpu(pfindData->LastWriteDate),
|
||||
le16_to_cpu(pfindData->LastWriteTime));
|
||||
AdjustForTZ(cifs_sb->tcon, tmp_inode);
|
||||
tmp_inode->i_mtime = cnvrtDosUnixTm(pfindData->LastWriteDate,
|
||||
pfindData->LastWriteTime,
|
||||
offset);
|
||||
tmp_inode->i_atime = cnvrtDosUnixTm(pfindData->LastAccessDate,
|
||||
pfindData->LastAccessTime,
|
||||
offset);
|
||||
tmp_inode->i_ctime = cnvrtDosUnixTm(pfindData->LastWriteDate,
|
||||
pfindData->LastWriteTime,
|
||||
offset);
|
||||
attr = le16_to_cpu(pfindData->Attributes);
|
||||
allocation_size = le32_to_cpu(pfindData->AllocationSize);
|
||||
end_of_file = le32_to_cpu(pfindData->DataSize);
|
||||
|
Reference in New Issue
Block a user