diff options
Diffstat (limited to 'fs/ntfs')
-rw-r--r-- | fs/ntfs/ChangeLog | 3 | ||||
-rw-r--r-- | fs/ntfs/attrib.c | 17 | ||||
-rw-r--r-- | fs/ntfs/index.c | 16 | ||||
-rw-r--r-- | fs/ntfs/super.c | 39 |
4 files changed, 25 insertions, 50 deletions
diff --git a/fs/ntfs/ChangeLog b/fs/ntfs/ChangeLog index f8ba90dd8e39..cb86140aa2a3 100644 --- a/fs/ntfs/ChangeLog +++ b/fs/ntfs/ChangeLog | |||
@@ -116,6 +116,9 @@ ToDo/Notes: | |||
116 | - Use MAX_BUF_PER_PAGE instead of variable sized array allocation for | 116 | - Use MAX_BUF_PER_PAGE instead of variable sized array allocation for |
117 | better code generation and one less sparse warning in fs/ntfs/aops.c. | 117 | better code generation and one less sparse warning in fs/ntfs/aops.c. |
118 | - Remove spurious void pointer casts from fs/ntfs/. (Pekka Enberg) | 118 | - Remove spurious void pointer casts from fs/ntfs/. (Pekka Enberg) |
119 | - Use C99 style structure initialization after memory allocation where | ||
120 | possible (fs/ntfs/{attrib.c,index.c,super.c}). Thanks to Al Viro and | ||
121 | Pekka Enberg. | ||
119 | 122 | ||
120 | 2.1.22 - Many bug and race fixes and error handling improvements. | 123 | 2.1.22 - Many bug and race fixes and error handling improvements. |
121 | 124 | ||
diff --git a/fs/ntfs/attrib.c b/fs/ntfs/attrib.c index 23ca3bdfb89a..104eedfb2507 100644 --- a/fs/ntfs/attrib.c +++ b/fs/ntfs/attrib.c | |||
@@ -982,15 +982,14 @@ int ntfs_attr_lookup(const ATTR_TYPE type, const ntfschar *name, | |||
982 | static inline void ntfs_attr_init_search_ctx(ntfs_attr_search_ctx *ctx, | 982 | static inline void ntfs_attr_init_search_ctx(ntfs_attr_search_ctx *ctx, |
983 | ntfs_inode *ni, MFT_RECORD *mrec) | 983 | ntfs_inode *ni, MFT_RECORD *mrec) |
984 | { | 984 | { |
985 | ctx->mrec = mrec; | 985 | *ctx = (ntfs_attr_search_ctx) { |
986 | /* Sanity checks are performed elsewhere. */ | 986 | .mrec = mrec, |
987 | ctx->attr = (ATTR_RECORD*)((u8*)mrec + le16_to_cpu(mrec->attrs_offset)); | 987 | /* Sanity checks are performed elsewhere. */ |
988 | ctx->is_first = TRUE; | 988 | .attr = (ATTR_RECORD*)((u8*)mrec + |
989 | ctx->ntfs_ino = ni; | 989 | le16_to_cpu(mrec->attrs_offset)), |
990 | ctx->al_entry = NULL; | 990 | .is_first = TRUE, |
991 | ctx->base_ntfs_ino = NULL; | 991 | .ntfs_ino = ni, |
992 | ctx->base_mrec = NULL; | 992 | }; |
993 | ctx->base_attr = NULL; | ||
994 | } | 993 | } |
995 | 994 | ||
996 | /** | 995 | /** |
diff --git a/fs/ntfs/index.c b/fs/ntfs/index.c index 71bd2cd7a4d9..11fd5307d780 100644 --- a/fs/ntfs/index.c +++ b/fs/ntfs/index.c | |||
@@ -1,7 +1,7 @@ | |||
1 | /* | 1 | /* |
2 | * index.c - NTFS kernel index handling. Part of the Linux-NTFS project. | 2 | * index.c - NTFS kernel index handling. Part of the Linux-NTFS project. |
3 | * | 3 | * |
4 | * Copyright (c) 2004 Anton Altaparmakov | 4 | * Copyright (c) 2004-2005 Anton Altaparmakov |
5 | * | 5 | * |
6 | * This program/include file is free software; you can redistribute it and/or | 6 | * This program/include file is free software; you can redistribute it and/or |
7 | * modify it under the terms of the GNU General Public License as published | 7 | * modify it under the terms of the GNU General Public License as published |
@@ -39,18 +39,8 @@ ntfs_index_context *ntfs_index_ctx_get(ntfs_inode *idx_ni) | |||
39 | ntfs_index_context *ictx; | 39 | ntfs_index_context *ictx; |
40 | 40 | ||
41 | ictx = kmem_cache_alloc(ntfs_index_ctx_cache, SLAB_NOFS); | 41 | ictx = kmem_cache_alloc(ntfs_index_ctx_cache, SLAB_NOFS); |
42 | if (ictx) { | 42 | if (ictx) |
43 | ictx->idx_ni = idx_ni; | 43 | *ictx = (ntfs_index_context){ .idx_ni = idx_ni }; |
44 | ictx->entry = NULL; | ||
45 | ictx->data = NULL; | ||
46 | ictx->data_len = 0; | ||
47 | ictx->is_in_root = 0; | ||
48 | ictx->ir = NULL; | ||
49 | ictx->actx = NULL; | ||
50 | ictx->base_ni = NULL; | ||
51 | ictx->ia = NULL; | ||
52 | ictx->page = NULL; | ||
53 | } | ||
54 | return ictx; | 44 | return ictx; |
55 | } | 45 | } |
56 | 46 | ||
diff --git a/fs/ntfs/super.c b/fs/ntfs/super.c index 8e50aa929f1c..455cbe0a6296 100644 --- a/fs/ntfs/super.c +++ b/fs/ntfs/super.c | |||
@@ -2292,36 +2292,19 @@ static int ntfs_fill_super(struct super_block *sb, void *opt, const int silent) | |||
2292 | return -ENOMEM; | 2292 | return -ENOMEM; |
2293 | } | 2293 | } |
2294 | /* Initialize ntfs_volume structure. */ | 2294 | /* Initialize ntfs_volume structure. */ |
2295 | memset(vol, 0, sizeof(ntfs_volume)); | 2295 | *vol = (ntfs_volume) { |
2296 | vol->sb = sb; | 2296 | .sb = sb, |
2297 | vol->upcase = NULL; | 2297 | /* |
2298 | vol->attrdef = NULL; | 2298 | * Default is group and other don't have any access to files or |
2299 | vol->mft_ino = NULL; | 2299 | * directories while owner has full access. Further, files by |
2300 | vol->mftbmp_ino = NULL; | 2300 | * default are not executable but directories are of course |
2301 | * browseable. | ||
2302 | */ | ||
2303 | .fmask = 0177, | ||
2304 | .dmask = 0077, | ||
2305 | }; | ||
2301 | init_rwsem(&vol->mftbmp_lock); | 2306 | init_rwsem(&vol->mftbmp_lock); |
2302 | #ifdef NTFS_RW | ||
2303 | vol->mftmirr_ino = NULL; | ||
2304 | vol->logfile_ino = NULL; | ||
2305 | #endif /* NTFS_RW */ | ||
2306 | vol->lcnbmp_ino = NULL; | ||
2307 | init_rwsem(&vol->lcnbmp_lock); | 2307 | init_rwsem(&vol->lcnbmp_lock); |
2308 | vol->vol_ino = NULL; | ||
2309 | vol->root_ino = NULL; | ||
2310 | vol->secure_ino = NULL; | ||
2311 | vol->extend_ino = NULL; | ||
2312 | #ifdef NTFS_RW | ||
2313 | vol->quota_ino = NULL; | ||
2314 | vol->quota_q_ino = NULL; | ||
2315 | #endif /* NTFS_RW */ | ||
2316 | vol->nls_map = NULL; | ||
2317 | |||
2318 | /* | ||
2319 | * Default is group and other don't have any access to files or | ||
2320 | * directories while owner has full access. Further, files by default | ||
2321 | * are not executable but directories are of course browseable. | ||
2322 | */ | ||
2323 | vol->fmask = 0177; | ||
2324 | vol->dmask = 0077; | ||
2325 | 2308 | ||
2326 | unlock_kernel(); | 2309 | unlock_kernel(); |
2327 | 2310 | ||