summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRyusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>2010-05-01 03:07:07 +0200
committerRyusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>2010-05-10 04:32:32 +0200
commit34cb9b5c973ac06449b96884be932da9a9b99819 (patch)
tree5009abb0edc749f78d60f7f1e8c098b1ab5fb509
parentnilfs2: make nilfs_sc_*_ops static (diff)
downloadlinux-34cb9b5c973ac06449b96884be932da9a9b99819.tar.xz
linux-34cb9b5c973ac06449b96884be932da9a9b99819.zip
nilfs2: add missing endian conversion on super block magic number
This adds missing endian conversions in comparision of the magic number of super blocks. It was coincidence that prior versions didn't incur problems; the upper byte of the magic number happened to be equal to the lower byte. But, semantically it's wrong to depend on this. This won't change anything else nor suffer any compatibility issues. Signed-off-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
-rw-r--r--fs/nilfs2/super.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/nilfs2/super.c b/fs/nilfs2/super.c
index a512c3b2cb77..430a508b212f 100644
--- a/fs/nilfs2/super.c
+++ b/fs/nilfs2/super.c
@@ -242,8 +242,8 @@ int nilfs_commit_super(struct nilfs_sb_info *sbi, int dupsb)
int err;
/* nilfs->sem must be locked by the caller. */
- if (sbp[0]->s_magic != NILFS_SUPER_MAGIC) {
- if (sbp[1] && sbp[1]->s_magic == NILFS_SUPER_MAGIC)
+ if (sbp[0]->s_magic != cpu_to_le16(NILFS_SUPER_MAGIC)) {
+ if (sbp[1] && sbp[1]->s_magic == cpu_to_le16(NILFS_SUPER_MAGIC))
nilfs_swap_super_block(nilfs);
else {
printk(KERN_CRIT "NILFS: superblock broke on dev %s\n",