diff options
author | Dmitri Vorobiev <dmitri.vorobiev@gmail.com> | 2007-11-14 19:59:47 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-11-14 21:45:40 -0500 |
commit | f433dc56344cb72cc3de5ba0819021cec3aef807 (patch) | |
tree | 19fa9052a2787c84417dc306eda1eae8b02f14f2 /fs/bfs/bfs.h | |
parent | cfb5285660aad4931b2ebbfa902ea48a37dfffa1 (diff) |
Fixes to the BFS filesystem driver
I found a few bugs in the BFS driver. Detailed description of the bugs as
well as the steps to reproduce the errors are given in the kernel bugzilla.
Please follow these links for more information:
http://bugzilla.kernel.org/show_bug.cgi?id=9363
http://bugzilla.kernel.org/show_bug.cgi?id=9364
http://bugzilla.kernel.org/show_bug.cgi?id=9365
http://bugzilla.kernel.org/show_bug.cgi?id=9366
This patch fixes the bugs described above. Besides, the patch introduces
coding style changes to make the BFS driver conform to the requirements
specified for Linux kernel code. Finally, I made a few cosmetic changes
such as removal of trivial debug output.
Also, the patch removes the fields `si_lf_ioff' and `si_lf_sblk' of the
in-core superblock structure. These fields are initialized but never
actually used.
If you are wondering why I need BFS, here is the answer: I am using this
driver in the context of Linux kernel classes I am teaching in the Moscow
State University and in the International Institute of Information
Technology in Pune, India.
Signed-off-by: Dmitri Vorobiev <dmitri.vorobiev@gmail.com>
Cc: Tigran Aivazian <tigran@veritas.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/bfs/bfs.h')
-rw-r--r-- | fs/bfs/bfs.h | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/fs/bfs/bfs.h b/fs/bfs/bfs.h index 130f6c66c5ba..ac7a8b1d6c3a 100644 --- a/fs/bfs/bfs.h +++ b/fs/bfs/bfs.h | |||
@@ -14,8 +14,6 @@ struct bfs_sb_info { | |||
14 | unsigned long si_blocks; | 14 | unsigned long si_blocks; |
15 | unsigned long si_freeb; | 15 | unsigned long si_freeb; |
16 | unsigned long si_freei; | 16 | unsigned long si_freei; |
17 | unsigned long si_lf_ioff; | ||
18 | unsigned long si_lf_sblk; | ||
19 | unsigned long si_lf_eblk; | 17 | unsigned long si_lf_eblk; |
20 | unsigned long si_lasti; | 18 | unsigned long si_lasti; |
21 | unsigned long * si_imap; | 19 | unsigned long * si_imap; |
@@ -39,7 +37,7 @@ static inline struct bfs_sb_info *BFS_SB(struct super_block *sb) | |||
39 | 37 | ||
40 | static inline struct bfs_inode_info *BFS_I(struct inode *inode) | 38 | static inline struct bfs_inode_info *BFS_I(struct inode *inode) |
41 | { | 39 | { |
42 | return list_entry(inode, struct bfs_inode_info, vfs_inode); | 40 | return container_of(inode, struct bfs_inode_info, vfs_inode); |
43 | } | 41 | } |
44 | 42 | ||
45 | 43 | ||