Commit ade1a29e authored by Badari Pulavarty's avatar Badari Pulavarty Committed by Linus Torvalds

[PATCH] ext3: Add "-o bh" option

This patch adds "-o bh" option to force use of buffer_heads.  This option
is needed when we make "nobh" as default - and if we run into problems.
Signed-off-by: default avatarBadari Pulavarty <pbadari@us.ibm.com>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 71c0cd70
...@@ -113,6 +113,14 @@ noquota ...@@ -113,6 +113,14 @@ noquota
grpquota grpquota
usrquota usrquota
bh (*) ext3 associates buffer heads to data pages to
nobh (a) cache disk block mapping information
(b) link pages into transaction to provide
ordering guarantees.
"bh" option forces use of buffer heads.
"nobh" option tries to avoid associating buffer
heads (supported only for "writeback" mode).
Specification Specification
============= =============
......
...@@ -630,7 +630,7 @@ enum { ...@@ -630,7 +630,7 @@ enum {
Opt_resgid, Opt_resuid, Opt_sb, Opt_err_cont, Opt_err_panic, Opt_err_ro, Opt_resgid, Opt_resuid, Opt_sb, Opt_err_cont, Opt_err_panic, Opt_err_ro,
Opt_nouid32, Opt_nocheck, Opt_debug, Opt_oldalloc, Opt_orlov, Opt_nouid32, Opt_nocheck, Opt_debug, Opt_oldalloc, Opt_orlov,
Opt_user_xattr, Opt_nouser_xattr, Opt_acl, Opt_noacl, Opt_user_xattr, Opt_nouser_xattr, Opt_acl, Opt_noacl,
Opt_reservation, Opt_noreservation, Opt_noload, Opt_nobh, Opt_reservation, Opt_noreservation, Opt_noload, Opt_nobh, Opt_bh,
Opt_commit, Opt_journal_update, Opt_journal_inum, Opt_journal_dev, Opt_commit, Opt_journal_update, Opt_journal_inum, Opt_journal_dev,
Opt_abort, Opt_data_journal, Opt_data_ordered, Opt_data_writeback, Opt_abort, Opt_data_journal, Opt_data_ordered, Opt_data_writeback,
Opt_usrjquota, Opt_grpjquota, Opt_offusrjquota, Opt_offgrpjquota, Opt_usrjquota, Opt_grpjquota, Opt_offusrjquota, Opt_offgrpjquota,
...@@ -666,6 +666,7 @@ static match_table_t tokens = { ...@@ -666,6 +666,7 @@ static match_table_t tokens = {
{Opt_noreservation, "noreservation"}, {Opt_noreservation, "noreservation"},
{Opt_noload, "noload"}, {Opt_noload, "noload"},
{Opt_nobh, "nobh"}, {Opt_nobh, "nobh"},
{Opt_bh, "bh"},
{Opt_commit, "commit=%u"}, {Opt_commit, "commit=%u"},
{Opt_journal_update, "journal=update"}, {Opt_journal_update, "journal=update"},
{Opt_journal_inum, "journal=%u"}, {Opt_journal_inum, "journal=%u"},
...@@ -1014,6 +1015,9 @@ static int parse_options (char *options, struct super_block *sb, ...@@ -1014,6 +1015,9 @@ static int parse_options (char *options, struct super_block *sb,
case Opt_nobh: case Opt_nobh:
set_opt(sbi->s_mount_opt, NOBH); set_opt(sbi->s_mount_opt, NOBH);
break; break;
case Opt_bh:
clear_opt(sbi->s_mount_opt, NOBH);
break;
default: default:
printk (KERN_ERR printk (KERN_ERR
"EXT3-fs: Unrecognized mount option \"%s\" " "EXT3-fs: Unrecognized mount option \"%s\" "
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment