diff options
Diffstat (limited to 'fs/smb/client/readdir.c')
| -rw-r--r-- | fs/smb/client/readdir.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/fs/smb/client/readdir.c b/fs/smb/client/readdir.c index 903919345df1..4b6e2632e8ed 100644 --- a/fs/smb/client/readdir.c +++ b/fs/smb/client/readdir.c @@ -850,9 +850,7 @@ static bool emit_cached_dirents(struct cached_dirents *cde, * initial scan. */ ctx->pos = dirent->pos; - rc = dir_emit(ctx, dirent->name, dirent->namelen, - dirent->fattr.cf_uniqueid, - dirent->fattr.cf_dtype); + rc = dir_emit(ctx, dirent->name, dirent->namelen, dirent->unique_id, dirent->dtype); if (!rc) return rc; ctx->pos++; @@ -901,9 +899,10 @@ static void add_cached_dirent(struct cached_dirents *cde, struct dir_context *ct cde->is_failed = 1; return; } - de->pos = ctx->pos; - memcpy(&de->fattr, fattr, sizeof(struct cifs_fattr)); + de->pos = ctx->pos; + de->unique_id = fattr->cf_uniqueid; + de->dtype = fattr->cf_dtype; list_add_tail(&de->entry, &cde->entries); } |
