All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tao Ma <tao.ma@oracle.com>
To: ocfs2-devel@oss.oracle.com
Subject: [Ocfs2-devel] [PATCH 3/8] Implement quota functions to libocfs2
Date: Tue, 28 Jul 2009 16:43:54 +0800	[thread overview]
Message-ID: <4A6EBA4A.1030107@oracle.com> (raw)
In-Reply-To: <20090728084055.GB5880@duck.suse.cz>



Jan Kara wrote:
> On Tue 28-07-09 15:55:30, Tao Ma wrote:
>> Hi Jan,
>>
>> Jan Kara wrote:
>>> Signed-off-by: Jan Kara <jack@suse.cz>
>>> ---
>>>  include/ocfs2/ocfs2.h     |   80 +++
>>>  libocfs2/Makefile         |    1 +
>>>  libocfs2/feature_string.c |   18 +
>>>  libocfs2/ocfs2_err.et     |    6 +
>>>  libocfs2/quota.c          | 1208 +++++++++++++++++++++++++++++++++++++++++++++
>>>  5 files changed, 1313 insertions(+), 0 deletions(-)
>>>  create mode 100644 libocfs2/quota.c
>>>
>>> diff --git a/include/ocfs2/ocfs2.h b/include/ocfs2/ocfs2.h
>>> index ac16823..7f136ca 100644
>>> --- a/include/ocfs2/ocfs2.h
>>> +++ b/include/ocfs2/ocfs2.h
>>> @@ -125,16 +125,36 @@
>>>  #define OCFS2_CHB_WAITING	2
>>>  #define OCFS2_CHB_COMPLETE	3
>>>  +/* Flags for global quotafile info */
>>> +#define OCFS2_QF_INFO_DIRTY 1
>>> +/* Should be power of two */
>>> +#define DEFAULT_QUOTA_HASH_SIZE 8192
>>> +#define MAX_QUOTA_HASH_SIZE (1<<21)	/* 16 MB on 64-bit arch*/
>> 16MB is 1<<24?
>   The comment is meant to say that the hash-table will occupy 16 MB on a
> 64-bit architecture where each pointer has 8 bytes... I'll expand the
> comment a bit.
got it.
>>> +	info->dqi_flags = OLQF_CLEAN;
>>> +	ocfs2_swap_quota_local_info(info);
>>> +
>>> +	/* There are no free chunks because there are no blocks allocated for
>>> +	 * them yet. So chunk header is all-zero and needs no initialization */
>>> +	ocfs2_checksum_quota_block(fs, buf);
>>> +	ocfs2_checksum_quota_block(fs, buf + fs->fs_blocksize);
>>> +	err = ocfs2_file_write(ci, buf, 2 * fs->fs_blocksize, 0, &written);
>>> +	if (!err && written != 2 * fs->fs_blocksize) {
>>> +		err = OCFS2_ET_INTERNAL_FAILURE;
>>> +		goto out;
>>> +	}
>> and here in ocfs2_init_global_quota_file you use write_blk which will 
>> calculate ocfs2_checksum_quota_block. So we can use that function also 
>> here?
>   No, we cannot since write_blk() writes to a global quota file. Here we
> need to write to a node-local quota file. Since there's only this place,
> where we write to local quota file, I'd just leave the code as is.
Oh, I see. Thanks for the explanation.

Regards,
Tao

  reply	other threads:[~2009-07-28  8:43 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-07-27 17:53 [Ocfs2-devel] [PATCH 0/8] Quota support for ocfs2-tools Jan Kara
2009-07-27 17:53 ` [Ocfs2-devel] [PATCH 1/8] Update ocfs2_fs.h to contain all necessary quota structures and constants Jan Kara
2009-07-28 21:45   ` Joel Becker
2009-07-29  9:42     ` Jan Kara
2009-07-29 18:19       ` Joel Becker
2009-07-30 16:57         ` Jan Kara
2009-07-27 17:53 ` [Ocfs2-devel] [PATCH 2/8] Provide ocfs2_cached_inode_extend_allocation() Jan Kara
2009-07-28 21:47   ` Joel Becker
2009-07-29  9:46     ` Jan Kara
2009-07-27 17:53 ` [Ocfs2-devel] [PATCH 3/8] Implement quota functions to libocfs2 Jan Kara
2009-07-28  7:55   ` Tao Ma
2009-07-28  8:40     ` Jan Kara
2009-07-28  8:43       ` Tao Ma [this message]
2009-07-28 10:08         ` Jan Kara
2009-07-28 22:52           ` Joel Becker
2009-07-29  9:57             ` Jan Kara
2009-07-27 17:53 ` [Ocfs2-devel] [PATCH 4/8] Write out quota info changes on ocfs2_close() Jan Kara
2009-07-28 22:53   ` Joel Becker
2009-07-29  9:58     ` Jan Kara
2009-07-27 17:53 ` [Ocfs2-devel] [PATCH 5/8] Quota support for fsck.ocfs2 Jan Kara
2009-07-28 23:05   ` Joel Becker
2009-07-29 10:07     ` Jan Kara
2009-07-29 14:28       ` Tao Ma
2009-07-29 18:22       ` Joel Becker
2009-07-27 17:53 ` [Ocfs2-devel] [PATCH 6/8] Quota support for mkfs.ocfs2 Jan Kara
2009-07-28  8:11   ` Tao Ma
2009-07-28  8:43     ` Jan Kara
2009-07-28 10:09       ` Jan Kara
2009-07-28 23:07         ` Joel Becker
2009-07-27 17:53 ` [Ocfs2-devel] [PATCH 7/8] Add quota support to tunefs.ocfs2 Jan Kara
2009-07-29  1:04   ` Joel Becker
2009-07-27 17:53 ` [Ocfs2-devel] [PATCH 8/8] Change headers to reflect that quota is now fully supported Jan Kara

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=4A6EBA4A.1030107@oracle.com \
    --to=tao.ma@oracle.com \
    --cc=ocfs2-devel@oss.oracle.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.