[Ocfs2-devel] [PATCH 2/2] Add online resize support for ocfs2, take 1

tao.ma tao.ma at oracle.com
Tue Nov 20 18:38:42 PST 2007


Mark Fasheh wrote:
> On Wed, Nov 21, 2007 at 09:33:40AM +0800, tao.ma wrote:
>   
>> Thanks for your review.
>> Just one thing that I am not clear.
>> Mark Fasheh wrote:
>>     
>>>> diff --git a/fs/ocfs2/journal.h b/fs/ocfs2/journal.h
>>>> index 4b32e09..ae08951 100644
>>>> --- a/fs/ocfs2/journal.h
>>>> +++ b/fs/ocfs2/journal.h
>>>> @@ -278,6 +278,9 @@ int                  ocfs2_journal_dirty
>>>>  /* simple file updates like chmod, etc. */
>>>>  #define OCFS2_INODE_UPDATE_CREDITS 1
>>>>  +/* onine resize. Just dinode + last group descriptor update. */
>>>> +#define OCFS2_ONLINE_RESIZE_CREDITS (2)
>>>> +
>>>>  /* get one bit out of a suballocator: dinode + group descriptor +
>>>>   * prev. group desc. if we relink. */
>>>>  #define OCFS2_SUBALLOC_ALLOC (3)
>>>> diff --git a/fs/ocfs2/ocfs2_fs.h b/fs/ocfs2/ocfs2_fs.h
>>>> index 6ef8767..099d984 100644
>>>> --- a/fs/ocfs2/ocfs2_fs.h
>>>> +++ b/fs/ocfs2/ocfs2_fs.h
>>>> @@ -27,7 +27,7 @@ #define _OCFS2_FS_H
>>>>   /* Version */
>>>>  #define OCFS2_MAJOR_REV_LEVEL		0
>>>> -#define OCFS2_MINOR_REV_LEVEL          	90
>>>> +#define OCFS2_MINOR_REV_LEVEL          	91
>>>>     
>>>>         
>>> This isn't needed.
>>>   
>>>       
>> This is needed. I'd like to copy your previous comments here.
>>
>> 1) This kind of change requires bumping the protocol version, because
>> without it the value will get stale on other nodes. We're fine though since
>> you should be bumping protocol anyway to make sure non-resize capable nodes
>> don't mount at the same time.
>> So maybe "the protocol version" your mentioned isn't here? 
>>     
>
> Yeah, I was referring to O2NET_PROTOCOL_VERSION in cluster/tcp_internal.h
>
> However, if we refuse a change to any file system if the disk bitmap_cpg is
> wrong, then I don't think we need to bump the protocol version after all as
> the value should never change past mount and thus won't ever be stale on any
> node.
>   

As you have said, we have to bump protocol to make sure non-resize capable nodes don't mount at the same time. ;) 
So do you think 2 node(one know online-resize, one don't know it) can work happily with each other if we do online resize in the one who knows it?






More information about the Ocfs2-devel mailing list