From: Jeff Mahoney <jeffm@suse.com>
To: Jan Kara <jack@suse.cz>
Cc: ReiserFS List <reiserfs-list@namesys.com>,
"E. Gryaznova" <grev@namesys.com>
Subject: Re: [PATCH 00/11] reiserfs: xattr rework
Date: Thu, 02 Mar 2006 19:56:47 -0500 [thread overview]
Message-ID: <4407944F.5030206@suse.com> (raw)
In-Reply-To: <20060303002917.GD4261@atrey.karlin.mff.cuni.cz>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Jan Kara wrote:
> You are right that the quota code and xattrs need to do the same thing.
> We only need to do slight interface changes (currently functions take a
> superblock and a type and pick appropriate quota inode themselves) and
> function renaming. I would vote for renaming the s_op->quota_{read,write}
> to s_op->internal_{read,write} and pass appropriate inode directly from
> the quota code. The only thing I'm not sure about is how to deal with the
> journaling mode - quota code either uses data journaling or just ordered
> mode depending on mount options (journaled / non-journaled quota). So we
> probably also need to pass the journaling mode to the write function.
> BTW: note that using these functions bypassing page cache means that
> userspace really should not touch these files. It is asking for data
> corruption. Quota code does during quotaon sync the quota inode and
> set it as immutable to prevent accidents. Also during quotaoff it flushes
> the page cache of the inode so that userspace is able to see the changes
> made by kernel. I guess something similar will be needed for xattrs too.
If you feel that changing the entire quota system to reflect the change
is a good plan, that's your call. Personally, I'd like to keep the
patches as small as possible, but if you think there is a need for
internal_{read,write} elsewhere, I wouldn't object.
The data journaling mode can be set as a flag associated with the inode.
Currently, i_data_log is set in REISERFS_I(inode)->i_flags. I add
i_data_ordered in one of my later patches. They can be tested easily
with reiserfs_file_data_{log,ordered}. There's no reason that one
couldn't be moved up and made a prerequisite for the first patch.
There is one difference between quota files and xattrs: The quota files
are visible to userspace, xattrs are completely hidden. There's nothing
needed to flush anything to the page cache.
I'll work up a patch locally and do some testing.
- -Jeff
- --
Jeff Mahoney
SUSE Labs
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
iD8DBQFEB5RPLPWxlyuTD7IRAn94AJwKvmGcT09QtjcBOFJoyd6JrxRTywCeN5nE
giNMMOkNlSsuGCwR6ad9/ao=
=DOMs
-----END PGP SIGNATURE-----
next prev parent reply other threads:[~2006-03-03 0:56 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-02-20 20:14 [PATCH 00/11] reiserfs: xattr rework Jeff Mahoney
2006-03-01 12:34 ` Jan Kara
2006-03-02 21:53 ` Jeff Mahoney
2006-03-03 0:29 ` Jan Kara
2006-03-03 0:56 ` Jeff Mahoney [this message]
2006-03-03 10:04 ` Jan Kara
2006-03-03 22:17 ` Jeff Mahoney
2006-03-06 11:59 ` Jan Kara
2006-03-07 21:39 ` Jeff Mahoney
2006-03-08 18:20 ` Jan Kara
2006-03-08 19:12 ` Jeff Mahoney
2006-03-08 23:14 ` Andreas Dilger
2006-03-09 18:26 ` Hans Reiser
2006-03-09 19:11 ` Jeff Mahoney
2006-03-09 19:52 ` Hans Reiser
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4407944F.5030206@suse.com \
--to=jeffm@suse.com \
--cc=grev@namesys.com \
--cc=jack@suse.cz \
--cc=reiserfs-list@namesys.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.