summaryrefslogtreecommitdiff
path: root/include/linux/ext3_fs_sb.h
diff options
context:
space:
mode:
authorAndrew Morton <akpm@osdl.org>2004-04-14 17:03:20 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2004-04-14 17:03:20 -0700
commit2df2c24aa6d2cd56777570d96494b921568b4405 (patch)
tree5c174b6c2d061ec1fd201734468648fc5119e4bd /include/linux/ext3_fs_sb.h
parent6ea4e45463726b8a5adcba50315b3bec4ea78a1e (diff)
[PATCH] ext3: journalled quotas
From: Jan Kara <jack@ucw.cz> Journalled quota support for ext3: The patch consists of two parts - ext3 changes and changes in generic quota code. The main idea of the changes is that a transaction is always started before any operation which changes quota file and dirtifying of the quota causes its write to disk. These two changes assure that quota change is journalled into the same transaction as the file change and hence after journal replay quota is consistent with the filesystem state. As during journal replay inodes from orphan list are deleted/truncated we have to do quota_on before the replay of the orphan list - this problem is solved by additional mount options to ext3 with quota file names and format. Some changes in generic code were also needed to assure that quota structure in file is always allocated and so ordinary quota operations (like adding/deleting a block/inode) need only a few blocks from the transaction.
Diffstat (limited to 'include/linux/ext3_fs_sb.h')
-rw-r--r--include/linux/ext3_fs_sb.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/ext3_fs_sb.h b/include/linux/ext3_fs_sb.h
index 590fd69ec045..8ed3cf7f4ab0 100644
--- a/include/linux/ext3_fs_sb.h
+++ b/include/linux/ext3_fs_sb.h
@@ -69,6 +69,10 @@ struct ext3_sb_info {
struct timer_list turn_ro_timer; /* For turning read-only (crash simulation) */
wait_queue_head_t ro_wait_queue; /* For people waiting for the fs to go read-only */
#endif
+#ifdef CONFIG_QUOTA
+ char *s_qf_names[MAXQUOTAS]; /* Names of quota files with journalled quota */
+ int s_jquota_fmt; /* Format of quota to use */
+#endif
};
#endif /* _LINUX_EXT3_FS_SB */