Displaying 20 results from an estimated 73 matches for "ocfs2_sb".
2010 Jul 12
1
[PATCH] ocfs2: Don't duplicate page passes i_size during CoW.
...- pgoff_t page_index;
+ pgoff_t page_index, last_page;
unsigned int from, to;
loff_t offset, end, map_end;
struct address_space *mapping = context->inode->i_mapping;
@@ -2932,12 +2932,20 @@ static int ocfs2_duplicate_clusters_by_page(handle_t *handle,
offset = ((loff_t)cpos) << OCFS2_SB(sb)->s_clustersize_bits;
end = offset + (new_len << OCFS2_SB(sb)->s_clustersize_bits);
+ last_page = i_size_read(context->inode) >> PAGE_CACHE_SHIFT;
while (offset < end) {
page_index = offset >> PAGE_CACHE_SHIFT;
map_end = ((loff_t)page_index + 1) <<...
2009 Jul 22
8
[PATCH 0/7] OCFS2 quota fixes (version 2)
Hi,
here is the second version of OCFS2 quota fixes with Joel's comments
fixed. Also I've added a patch defining counts of credits for quota
operations as Joel asked.
Honza
2008 Oct 23
2
[PATCH 1/1] OCFS2: fix for nfs getting stale inode.
...node *inode;
struct dentry *result;
+ int status;
mlog_entry("(0x%p, 0x%p)\n", sb, handle);
@@ -57,7 +58,14 @@ static struct dentry *ocfs2_get_dentry(s
return ERR_PTR(-ESTALE);
}
+ /* lock this disk block against updating it from other nodes */
+ status = ocfs2_dealloc_lock(OCFS2_SB(sb), (u64)handle->ih_blkno, 0);
+ if (status < 0) {
+ mlog_errno(status);
+ return ERR_PTR(status);
+ }
inode = ocfs2_iget(OCFS2_SB(sb), handle->ih_blkno);
+ ocfs2_dealloc_unlock(OCFS2_SB(sb), (u64)handle->ih_blkno, 0);
if (IS_ERR(inode))
return (void *)inode;
Index: fs/ocfs2...
2009 Jul 15
7
[PATCH 0/6] Quota fixes for 2.6.31-rc4
Hi,
I did some more in-depth testing of OCFS2 quota code, especially with ECC
feature enabled and spotted some problems. First four patches fix them.
I need the fifth patch to be able to mount OCFS2 filesystem with 2.6.31-rc3.
The sixth patch fixes a potential problem when quota syncing interval is
updated while the cluster is running (which is not possible currently).
Joel, could you please
2009 Jan 06
1
[PATCH] ocfs2: Add statistics for the checksum and ecc operations.
...mlog(ML_ERROR, "Fixed CRC32 failed: stored: %u, computed %u\n",
(unsigned int)check.bc_crc32e, (unsigned int)crc);
@@ -448,9 +612,11 @@ int ocfs2_validate_meta_ecc(struct super_block *sb, void *data,
struct ocfs2_block_check *bc)
{
int rc = 0;
+ struct ocfs2_super *osb = OCFS2_SB(sb);
- if (ocfs2_meta_ecc(OCFS2_SB(sb)))
- rc = ocfs2_block_check_validate(data, sb->s_blocksize, bc);
+ if (ocfs2_meta_ecc(osb))
+ rc = ocfs2_block_check_validate(data, sb->s_blocksize, bc,
+ &osb->osb_ecc_stats);
return rc;
}
@@ -468,9 +634,11 @@ int ocfs2_validate_meta...
2010 Jan 29
0
[PATCH 3/3] ocfs2:freeze-thaw: make it work -v2
...2_freeze_fs,
+ .unfreeze_fs = ocfs2_unfreeze_fs,
};
enum {
@@ -383,7 +389,7 @@ static const struct file_operations ocfs2_osb_debug_fops = {
static int ocfs2_sync_fs(struct super_block *sb, int wait)
{
- int status;
+ int status, flush_journal = 0;
tid_t target;
struct ocfs2_super *osb = OCFS2_SB(sb);
@@ -404,6 +410,17 @@ static int ocfs2_sync_fs(struct super_block *sb, int wait)
jbd2_log_wait_commit(OCFS2_SB(sb)->journal->j_journal,
target);
}
+
+ flush_journal = ocfs2_test_osb_flag(osb, OCFS2_OSB_FREEZE_INPROG);
+
+ /* flushes journal when it's during freeze_b...
2009 Apr 30
42
[PATCH 00/39] ocfs2: Add reflink file support. V3
Hi all,
So I have finally finished the v3 of reflink for ocfs2. The biggest
change is that we support 64bit cluster offset now(Thank Mark and Joel
for it).
[View]
http://oss.oracle.com/git/?p=tma/linux-2.6.git;a=shortlog;h=refcount
[Pull]
git://oss.oracle.com/git/tma/linux-2.6.git refcount
The general information for reflink, please see
http://oss.oracle.com/osswiki/OCFS2/DesignDocs/Reflink.
2009 Mar 27
42
[PATCH 00/42] ocfs2: Add reflink file support. V1
Hi all,
So I have finally finished the v1 of reflink for ocfs2. It has some
bugs that I am still investigating, but the schema is almost there. So
I'd like to send it out first for review. And Tristan and I will
continue to work on the stability of the code.
The general information for reflink, please see
http://oss.oracle.com/osswiki/OCFS2/DesignDocs/Reflink.
For the design doc, please
2009 Apr 03
42
[PATCH 00/42] ocfs2: Add reflink file support. V2
Hi all,
Change from v1 to v2: bug fix and metadata/credits reservation
improvement.
The general information for reflink, please see
http://oss.oracle.com/osswiki/OCFS2/DesignDocs/Reflink.
For the design doc, please see
http://oss.oracle.com/osswiki/OCFS2/DesignDocs/RefcountTrees
http://oss.oracle.com/osswiki/OCFS2/DesignDocs/ReflinkOperation
2009 Feb 08
1
[PATCH] ocfs2/security: Check xattr support in security_init.
...diff --git a/fs/ocfs2/xattr.c b/fs/ocfs2/xattr.c
index 5aec833..8a7db21 100644
--- a/fs/ocfs2/xattr.c
+++ b/fs/ocfs2/xattr.c
@@ -5289,6 +5289,9 @@ int ocfs2_init_security_get(struct inode *inode,
struct inode *dir,
struct ocfs2_security_xattr_info *si)
{
+ if (!ocfs2_supports_xattr(OCFS2_SB(inode->i_sb)))
+ return -EOPNOTSUPP;
+
return security_inode_init_security(inode, dir, &si->name, &si->value,
&si->value_len);
}
--
1.5.4.4
2009 Jul 13
1
[PATCH 1/1] adds mlogs to aops.c
...ret = err;
}
+
+ mlog_exit(ret);
return ret;
}
handle_t *ocfs2_start_walk_page_trans(struct inode *inode,
- struct page *page,
- unsigned from,
- unsigned to)
+ struct page *page,
+ unsigned from,
+ unsigned to)
{
struct ocfs2_super *osb = OCFS2_SB(inode->i_sb);
handle_t *handle;
int ret = 0;
+ mlog_entry("(%llu, 0x%p, %u, %u)\n",
+ OCFS2_I(inode)->ip_blkno, page, from, to);
+
handle = ocfs2_start_trans(osb, OCFS2_INODE_UPDATE_CREDITS);
if (IS_ERR(handle)) {
ret = -ENOMEM;
@@ -484,6 +513,8 @@ out:
ocfs2_co...
2009 Jul 21
1
(no subject)
...ret = err;
}
+
+ mlog_exit(ret);
return ret;
}
handle_t *ocfs2_start_walk_page_trans(struct inode *inode,
- struct page *page,
- unsigned from,
- unsigned to)
+ struct page *page,
+ unsigned from,
+ unsigned to)
{
struct ocfs2_super *osb = OCFS2_SB(inode->i_sb);
handle_t *handle;
int ret = 0;
+ mlog_entry("(%llu, 0x%p, %u, %u)\n",
+ (unsigned long long)OCFS2_I(inode)->ip_blkno, page, from, to);
+
handle = ocfs2_start_trans(osb, OCFS2_INODE_UPDATE_CREDITS);
if (IS_ERR(handle)) {
ret = -ENOMEM;
@@ -484,6 +516,8...
2009 Apr 30
0
[PATCH] ocfs2: Add statistics for the checksum and ecc operations.
...mlog(ML_ERROR, "Fixed CRC32 failed: stored: %u, computed %u\n",
(unsigned int)check.bc_crc32e, (unsigned int)crc);
@@ -448,9 +612,11 @@ int ocfs2_validate_meta_ecc(struct super_block *sb, void *data,
struct ocfs2_block_check *bc)
{
int rc = 0;
+ struct ocfs2_super *osb = OCFS2_SB(sb);
- if (ocfs2_meta_ecc(OCFS2_SB(sb)))
- rc = ocfs2_block_check_validate(data, sb->s_blocksize, bc);
+ if (ocfs2_meta_ecc(osb))
+ rc = ocfs2_block_check_validate(data, sb->s_blocksize, bc,
+ &osb->osb_ecc_stats);
return rc;
}
@@ -468,9 +634,11 @@ int ocfs2_validate_meta...
2008 Oct 17
3
[PATCH 0/3] ocfs2: add security EA and ACL support v3
Hi,
These three patches fix the problems in the version two.
And them base on the Tao's patches:
ocfs2/xattr: xattr improvement
The first patch fix some problem in xattr code.
The second patch add security EA support.
The third patch add ACL support.
Best regards,
tiger
2009 Jul 21
1
[PATCH 1/1] ocfs2: adds mlogs to aops.c -V2
...ret = err;
}
+
+ mlog_exit(ret);
return ret;
}
handle_t *ocfs2_start_walk_page_trans(struct inode *inode,
- struct page *page,
- unsigned from,
- unsigned to)
+ struct page *page,
+ unsigned from,
+ unsigned to)
{
struct ocfs2_super *osb = OCFS2_SB(inode->i_sb);
handle_t *handle;
int ret = 0;
+ mlog_entry("(%llu, 0x%p, %u, %u)\n",
+ (unsigned long long)OCFS2_I(inode)->ip_blkno, page, from, to);
+
handle = ocfs2_start_trans(osb, OCFS2_INODE_UPDATE_CREDITS);
if (IS_ERR(handle)) {
ret = -ENOMEM;
@@ -484,6 +516,8...
2009 Mar 03
3
[PATCH 1/1] OCFS2: anti stale inode for nfs (V6)
...6 +38,7 @@
#include "inode.h"
#include "buffer_head_io.h"
+#include "suballoc.h"
struct ocfs2_inode_handle
{
@@ -49,29 +50,89 @@ static struct dentry *ocfs2_get_dentry(s
struct ocfs2_inode_handle *handle)
{
struct inode *inode;
+ struct ocfs2_super *osb = OCFS2_SB(sb);
+ u64 blkno = handle->ih_blkno;
+ int status, set;
struct dentry *result;
mlog_entry("(0x%p, 0x%p)\n", sb, handle);
- if (handle->ih_blkno == 0) {
- mlog_errno(-ESTALE);
- return ERR_PTR(-ESTALE);
+ if (blkno == 0) {
+ mlog(0, "nfs wants inode with blkno: 0\n&qu...
2011 May 27
2
[PATCH 1/1] ocfs2: Bugfix for hard readonly mount
...rn -EROFS;
+ if (ocfs2_is_hard_readonly(osb)) {
+ if (ex)
+ return -EROFS;
+ return 0;
+ }
if (ocfs2_mount_local(osb))
return 0;
@@ -2647,7 +2656,7 @@ void ocfs2_dentry_unlock(struct dentry *dentry, int ex)
struct ocfs2_dentry_lock *dl = dentry->d_fsdata;
struct ocfs2_super *osb = OCFS2_SB(dentry->d_sb);
- if (!ocfs2_mount_local(osb))
+ if (!ocfs2_is_hard_readonly(osb) && !ocfs2_mount_local(osb))
ocfs2_cluster_unlock(osb, &dl->dl_lockres, level);
}
diff --git a/fs/ocfs2/super.c b/fs/ocfs2/super.c
index 5a521c7..395b26f 100644
--- a/fs/ocfs2/super.c
+++ b/fs/...
2009 Mar 05
0
[PATCH 1/1] OCFS2: anti stale inode for nfs (V6.2)
...quot;inode.h"
#include "buffer_head_io.h"
+#include "suballoc.h"
struct ocfs2_inode_handle
{
@@ -49,29 +50,88 @@ static struct dentry *ocfs2_get_dentry(struct super_block *sb,
struct ocfs2_inode_handle *handle)
{
struct inode *inode;
+ struct ocfs2_super *osb = OCFS2_SB(sb);
+ u64 blkno = handle->ih_blkno;
+ int status, set;
struct dentry *result;
mlog_entry("(0x%p, 0x%p)\n", sb, handle);
- if (handle->ih_blkno == 0) {
- mlog_errno(-ESTALE);
- return ERR_PTR(-ESTALE);
+ if (blkno == 0) {
+ mlog(0, "nfs wants inode with blkno: 0\n&qu...
2009 Mar 06
0
[PATCH 1/1] OCFS2: anti stale inode for nfs (V6.3)
...quot;inode.h"
#include "buffer_head_io.h"
+#include "suballoc.h"
struct ocfs2_inode_handle
{
@@ -49,29 +50,88 @@ static struct dentry *ocfs2_get_dentry(struct super_block *sb,
struct ocfs2_inode_handle *handle)
{
struct inode *inode;
+ struct ocfs2_super *osb = OCFS2_SB(sb);
+ u64 blkno = handle->ih_blkno;
+ int status, set;
struct dentry *result;
mlog_entry("(0x%p, 0x%p)\n", sb, handle);
- if (handle->ih_blkno == 0) {
- mlog_errno(-ESTALE);
- return ERR_PTR(-ESTALE);
+ if (blkno == 0) {
+ mlog(0, "nfs wants inode with blkno: 0\n&qu...
2009 Feb 27
2
[PATCH 1/1] OCFS2: anti stale inode for nfs (V5)
...6 +38,7 @@
#include "inode.h"
#include "buffer_head_io.h"
+#include "suballoc.h"
struct ocfs2_inode_handle
{
@@ -49,29 +50,89 @@ static struct dentry *ocfs2_get_dentry(s
struct ocfs2_inode_handle *handle)
{
struct inode *inode;
+ struct ocfs2_super *osb = OCFS2_SB(sb);
+ u64 blkno = handle->ih_blkno;
+ int status, set;
struct dentry *result;
mlog_entry("(0x%p, 0x%p)\n", sb, handle);
- if (handle->ih_blkno == 0) {
- mlog_errno(-ESTALE);
- return ERR_PTR(-ESTALE);
+ if (blkno == 0) {
+ mlog(0, "nfs wants inode with blkno: 0\n&qu...