]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
more todos
authorSage Weil <sage@newdream.net>
Mon, 21 Jan 2008 16:58:52 +0000 (08:58 -0800)
committerSage Weil <sage@newdream.net>
Mon, 21 Jan 2008 16:58:52 +0000 (08:58 -0800)
src/TODO
src/kernel/file.c
src/start.sh

index 44d46e14c5f3fc1c5851ab742f3953dd44682e26..fec49c7ca67f83a08b27c32899f2663184d264b6 100644 (file)
--- a/src/TODO
+++ b/src/TODO
@@ -21,22 +21,16 @@ code cleanup
 
 kernel client
 - msgr layer
-  - clean up ceph_send_fault
-  - more testing
-  - callbacks for 'remote reset' (once 'caps' branch is merged in)
-
- - TCP_CLOSE case in callback.. should it set CLOSED bit?
- - ceph_queue_read .. check READING bit?
- - 
-
+  - callbacks for 'remote reset'
+  - idle state, to keep connect_seq around after a disconnect
 - audit locking
 - audit use of kmalloc vs spinlocks
 - convert most everything in ceph_fs.h to le32/le64 notation, cleaning up userspace appropriately
 - vfs
+ - generate paths relative to the appropriate vfsmount root
  - getattr should do an lstat?
- - d_revalidate..
+ - d_revalidate?
  - test truncate
- - fix open: it really shouldn't blindly use existing caps (except for O_DIRECTORY on root?)
 - mds client
 /  - handle file caps, ack back to mds, etc. 
     - actually flush dirty data, too
@@ -45,7 +39,7 @@ kernel client
   - readpages (readahead)
   - async (caching) mode
   - sync mode (write-through)
-  - capability changes (flush)
+  - capability changes (flush.. need way to initiate/block on writeback initiated by mds)
   - osd ack vs commit handling.  hmm!
   - handle map changes (resubmit ops)
 - mon client
index e30b9ecff85750025eb90b6cbf1c68992e43476b..edcfc263a8e24f5cbd62e5940d202f6de611260d 100644 (file)
@@ -50,13 +50,16 @@ struct ceph_inode_cap *ceph_do_open(struct inode *inode, struct file *file)
 int ceph_open(struct inode *inode, struct file *file)
 {
        struct ceph_inode_info *ci = ceph_inode(inode);
-       struct ceph_inode_cap *cap;
+       struct ceph_inode_cap *cap = 0;
        struct ceph_file_info *cf;
        int mode;
        int wanted;
 
        dout(5, "ceph_open inode %p (%lu) file %p\n", inode, inode->i_ino, file);
-       cap = ceph_find_cap(inode, 0);
+       /*
+       if (file->f_flags == O_DIRECTORY && ... ) 
+               cap = ceph_find_cap(inode, 0);
+       */
        if (!cap) {
                cap = ceph_do_open(inode, file);
                if (IS_ERR(cap))
index bf200ccfd0a8fe69f5cc67294ebd78163743d66e..f77c005d50d639a5dcf998d9978face9d99094f1 100755 (executable)
@@ -6,4 +6,4 @@
 ./cosd --mkfs --osd 1 &
 ./cosd --mkfs --osd 2 &
 ./cosd --mkfs --osd 3 &
-./cmds --debug_ms 1 --debug_mds 10 &
+./cmds &