|
From: alebre <al...@us...> - 2010-12-20 15:33:58
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "kdfs".
The branch, make_kdfs_compile has been updated
via 8d8c25a410ddabb5c0165caa6dc42e878e4644fa (commit)
from 8bb8fee611cfe981850e8752ac394f6af4716f64 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 8d8c25a410ddabb5c0165caa6dc42e878e4644fa
Author: ad <leb...@fr...>
Date: Mon Dec 20 16:33:09 2010 +0000
Some Fixes - Adrien/Marko
diff --git a/fs/kdfs/address_space.c b/fs/kdfs/address_space.c
index 8ba57c0..a604aa5 100644
--- a/fs/kdfs/address_space.c
+++ b/fs/kdfs/address_space.c
@@ -207,8 +207,10 @@ int __kdfs_commit_write(struct file *file,
kdfs_distmark_page_dirty(k_inode, page->index);
_kdfs_put_page((struct kdfs_page*)page->private);
- // TODO: Why synchronize the inode at each page modification, I presume that it should be done
- kdfs_mark_inode_dirty(k_inode);
+ // TODO, NOW Adrien Fix that point ASAP (the inode is currently not synchronized)
+ // Why synchronize the inode at each page modification, I presume that it should be done
+ // not for each page but at the higher level (write/read/..... functions)
+ // kdfs_mark_inode_dirty(k_inode);
kdfs_iput(k_inode->inode->i_ino);
PRINT_FUNCTION_EXIT;
diff --git a/fs/kdfs/file.c b/fs/kdfs/file.c
index 4f6b131..74fd1a1 100644
--- a/fs/kdfs/file.c
+++ b/fs/kdfs/file.c
@@ -231,7 +231,7 @@ kddm_set_t *create_file_kddm_set(struct kdfs_inode *k_inode)
#endif
if (!IS_ERR(kddm_set)) {
k_inode->content_setid=kddm_set->id;
- DEBUG(DBG_INFO, "Create content kddm_set for file %s (inode %ld) with id %ld\n",
+ DEBUG(DBG_INFO, "Create content kddm_set for file %s (inode %ld) with id %lu\n",
list_entry(k_inode->inode->i_dentry.next, struct dentry, d_alias)->d_name.name,
k_inode->inode->i_ino, k_inode->content_setid);
} else {
diff --git a/fs/kdfs/inode.c b/fs/kdfs/inode.c
index 880d0ab..072b18f 100644
--- a/fs/kdfs/inode.c
+++ b/fs/kdfs/inode.c
@@ -149,7 +149,6 @@ struct kdfs_inode *__kdfs_mknod(struct kdfs_inode *k_pdir,
/* Get an inode ID */
ino = kdfs_get_freeino(k_sb);
- // TODO PRIORITY 2 Adrien put here or later
__kdfs_putsb(k_sb);
k_nnod = kdfs_icreate(ino); /* get a kDFS inode from the kDDM set (k_inode is lock)*/
@@ -294,11 +293,6 @@ int kdfs_create(struct inode *dir, struct dentry *dentry,
int kdfs_mkdir(struct inode *dir, struct dentry *dentry, int mode)
{
int err = 0;
- /*
- * TODO Adrien, NOW
- * Fix err when kdfs_igrab or __mkknod crash
- */
-
struct kdfs_inode *k_pdir, *k_nnod;
DEBUG(DBG_TRACE,
@@ -332,7 +326,6 @@ int kdfs_mkdir(struct inode *dir, struct dentry *dentry, int mode)
"mkdir %s done: res = %d\n",
dentry->d_name.name, err);
return err;
-
}
/*
@@ -377,7 +370,7 @@ int kdfs_symlink(struct inode *dir, struct dentry *dentry, const char *symname)
} else {
/* Get the first file page to write the symb link into */
create_file_kddm_set(k_nnod);
- k_page = kdfs_grab_page(k_nnod->content_setid, 0);
+ k_page = kdfs_distgrab_page(k_nnod->content_setid, 0);
if (IS_ERR(k_page))
DEBUG (DBG_PANIC,
"Can't grab page for newnode %ld (contentset_id %ld)\n",
diff --git a/fs/kdfs/super.c b/fs/kdfs/super.c
index d68c0be..7506a1d 100644
--- a/fs/kdfs/super.c
+++ b/fs/kdfs/super.c
@@ -1743,15 +1743,10 @@ void kdfs_removesb(unsigned long sbid)
struct kdfs_super_block *kdfs_twice_grabsb(unsigned long sbid)
{
struct kdfs_generic_sb *kgsb = kddm_find_object(kddm_def_ns, KDFS_SB_KDDM_ID, sbid);
- struct kdfs_super_block *k_sb = NULL;
if (!kgsb)
- return NULL;
- k_sb = kgsb->real_sb;
- if (!k_sb) {
kgsb = kddm_grab_object(kddm_def_ns, KDFS_SB_KDDM_ID, sbid);
- k_sb = kgsb->real_sb;
- }
- return k_sb;
+
+ return kgsb->real_sb;
}
/*
@@ -1762,12 +1757,9 @@ struct kdfs_super_block *kdfs_twice_grabsb(unsigned long sbid)
struct kdfs_super_block *kdfs_twice_getsb(unsigned long sbid)
{
struct kdfs_generic_sb *kgsb = kddm_find_object(kddm_def_ns, KDFS_SB_KDDM_ID, sbid);
- struct kdfs_super_block *k_sb = kgsb->real_sb;
- if (!k_sb) {
+ if (!kgsb)
kgsb = kddm_get_object(kddm_def_ns, KDFS_SB_KDDM_ID, sbid);
- k_sb = kgsb->real_sb;
- }
- return k_sb;
+ return kgsb->real_sb;
}
/* Release a copy */
diff --git a/kddm/kddm_set.c b/kddm/kddm_set.c
index 4443dd6..38a7574 100644
--- a/kddm/kddm_set.c
+++ b/kddm/kddm_set.c
@@ -787,7 +787,7 @@ void kddm_set_init()
kddm_tree_lvl_cachep = KMEM_CACHE(kddm_tree_lvl, SLAB_PANIC);
__rpc_register(REQ_KDDM_SET_LOOKUP,
- RPC_TARGET_NODE, RPC_HANDLER_KTHREAD_VOID,
+ RPC_TARGET_NODE, RPC_HANDLER_KTHREAD_VOID,
kddm_server, handle_req_kddm_set_lookup, 0);
__rpc_register(REQ_KDDM_CHANGE_MGR,
@@ -796,8 +796,8 @@ void kddm_set_init()
__rpc_register(REQ_KDDM_SET_DESTROY,
// Change proposed by Louis Rilling
- // RPC_TARGET_NODE, RPC_HANDLER_KTHREAD_VOID,
- RPC_TARGET_NODE, RPC_HANDLER_KTHREAD_INT,
+ // RPC_TARGET_NODE, RPC_HANDLER_KTHREAD_INT,
+ RPC_TARGET_NODE, RPC_HANDLER_KTHREAD_VOID,
kddm_server, handle_req_kddm_set_destroy, 0);
-----------------------------------------------------------------------
Summary of changes:
fs/kdfs/address_space.c | 6 ++++--
fs/kdfs/file.c | 2 +-
fs/kdfs/inode.c | 9 +--------
fs/kdfs/super.c | 16 ++++------------
kddm/kddm_set.c | 6 +++---
5 files changed, 13 insertions(+), 26 deletions(-)
hooks/post-receive
--
kdfs
|