Displaying 4 results from an estimated 4 matches for "max_free".
Did you mean:
map_free
2009 Feb 20
1
[PATCH 1/1] ocfs2: set gap to seperate entry and value when xattr in bucket
...32);
+ free = min_offs - ((void *)last - xs->base) - OCFS2_XATTR_HEADER_GAP;
if (free < 0)
return 0;
@@ -5060,8 +5061,8 @@ try_again:
xh_free_start = le16_to_cpu(xh->xh_free_start);
header_size = sizeof(struct ocfs2_xattr_header) +
count * sizeof(struct ocfs2_xattr_entry);
- max_free = OCFS2_XATTR_BUCKET_SIZE -
- le16_to_cpu(xh->xh_name_value_len) - header_size;
+ max_free = OCFS2_XATTR_BUCKET_SIZE - header_size -
+ le16_to_cpu(xh->xh_name_value_len) - OCFS2_XATTR_HEADER_GAP;
mlog_bug_on_msg(header_size > blocksize, "bucket %llu has header size "
&q...
2009 Feb 11
2
[PATCH 0/2] ocfs2: two fixes for xattr
Hi,
For EAs data structure in inode/block are little different from them in
bucket. These two patches try to make them same for the most part.
The first patch set xh_free_start and xh_name_value_len when EAs in
inode/block. xh_free_start is useful to keep the minimum offset of the
xattr name/value. But xh_name_value_len is not very useful because we
don't have "hole" when EAs in
2009 Feb 16
3
[PATCH 0/2] ocfs2: two fixes for xattr -v2
Hi,
I have fixed the problems in version 1 patches. These two patches based
on the latest main line kernel.
Thanks,
tiger
> For EAs data structure in inode/block are little different from them in
> bucket. These two patches try to make them same for the most part.
>
> The first patch set xh_free_start and xh_name_value_len when EAs in
> inode/block. xh_free_start is useful to
2008 Oct 28
14
[PATCH 0/13] ocfs2: xattr bucket API
When the extended attribute namespace grows to a b-tree, the leaf
clusters are organized by means of 'buckets'. Each bucket is 4K in
size, regardless of blocksize. Thus, a bucket may be made of more than
one block.
fs/ocfs2/xattr.c has a nice little abstraction to wrap this, struct
ocfs2_xattr_bucket. It contains a list of buffer_heads representing
these blocks, and there is even an