Lines Matching refs:inode

132 static int dlmfs_file_open(struct inode *inode,  in dlmfs_file_open()  argument
139 if (S_ISDIR(inode->i_mode)) in dlmfs_file_open()
142 mlog(0, "open called on inode %lu, flags 0x%x\n", inode->i_ino, in dlmfs_file_open()
160 ip = DLMFS_I(inode); in dlmfs_file_open()
179 static int dlmfs_file_release(struct inode *inode, in dlmfs_file_release() argument
183 struct dlmfs_inode_private *ip = DLMFS_I(inode); in dlmfs_file_release()
186 if (S_ISDIR(inode->i_mode)) in dlmfs_file_release()
189 mlog(0, "close called on inode %lu\n", inode->i_ino); in dlmfs_file_release()
211 struct inode *inode = d_inode(dentry); in dlmfs_file_setattr() local
214 error = inode_change_ok(inode, attr); in dlmfs_file_setattr()
218 setattr_copy(inode, attr); in dlmfs_file_setattr()
219 mark_inode_dirty(inode); in dlmfs_file_setattr()
226 struct inode *inode = file_inode(file); in dlmfs_file_poll() local
227 struct dlmfs_inode_private *ip = DLMFS_I(inode); in dlmfs_file_poll()
247 struct inode *inode = file_inode(filp); in dlmfs_file_read() local
250 inode->i_ino, count, *ppos); in dlmfs_file_read()
252 if (*ppos >= i_size_read(inode)) in dlmfs_file_read()
262 if ((count + *ppos) > i_size_read(inode)) in dlmfs_file_read()
263 readlen = i_size_read(inode) - *ppos; in dlmfs_file_read()
271 got = user_dlm_read_lvb(inode, lvb_buf, readlen); in dlmfs_file_read()
295 struct inode *inode = file_inode(filp); in dlmfs_file_write() local
298 inode->i_ino, count, *ppos); in dlmfs_file_write()
300 if (*ppos >= i_size_read(inode)) in dlmfs_file_write()
310 if ((count + *ppos) > i_size_read(inode)) in dlmfs_file_write()
311 writelen = i_size_read(inode) - *ppos; in dlmfs_file_write()
322 user_dlm_write_lvb(inode, lvb_buf, writelen); in dlmfs_file_write()
342 static struct inode *dlmfs_alloc_inode(struct super_block *sb) in dlmfs_alloc_inode()
355 struct inode *inode = container_of(head, struct inode, i_rcu); in dlmfs_i_callback() local
356 kmem_cache_free(dlmfs_inode_cache, DLMFS_I(inode)); in dlmfs_i_callback()
359 static void dlmfs_destroy_inode(struct inode *inode) in dlmfs_destroy_inode() argument
361 call_rcu(&inode->i_rcu, dlmfs_i_callback); in dlmfs_destroy_inode()
364 static void dlmfs_evict_inode(struct inode *inode) in dlmfs_evict_inode() argument
369 clear_inode(inode); in dlmfs_evict_inode()
371 mlog(0, "inode %lu\n", inode->i_ino); in dlmfs_evict_inode()
373 ip = DLMFS_I(inode); in dlmfs_evict_inode()
375 if (S_ISREG(inode->i_mode)) { in dlmfs_evict_inode()
393 static struct inode *dlmfs_get_root_inode(struct super_block *sb) in dlmfs_get_root_inode()
395 struct inode *inode = new_inode(sb); in dlmfs_get_root_inode() local
398 if (inode) { in dlmfs_get_root_inode()
399 inode->i_ino = get_next_ino(); in dlmfs_get_root_inode()
400 inode_init_owner(inode, NULL, mode); in dlmfs_get_root_inode()
401 inode->i_atime = inode->i_mtime = inode->i_ctime = CURRENT_TIME; in dlmfs_get_root_inode()
402 inc_nlink(inode); in dlmfs_get_root_inode()
404 inode->i_fop = &simple_dir_operations; in dlmfs_get_root_inode()
405 inode->i_op = &dlmfs_root_inode_operations; in dlmfs_get_root_inode()
408 return inode; in dlmfs_get_root_inode()
411 static struct inode *dlmfs_get_inode(struct inode *parent, in dlmfs_get_inode()
416 struct inode * inode = new_inode(sb); in dlmfs_get_inode() local
419 if (!inode) in dlmfs_get_inode()
422 inode->i_ino = get_next_ino(); in dlmfs_get_inode()
423 inode_init_owner(inode, parent, mode); in dlmfs_get_inode()
424 inode->i_atime = inode->i_mtime = inode->i_ctime = CURRENT_TIME; in dlmfs_get_inode()
426 ip = DLMFS_I(inode); in dlmfs_get_inode()
436 inode->i_op = &dlmfs_file_inode_operations; in dlmfs_get_inode()
437 inode->i_fop = &dlmfs_file_operations; in dlmfs_get_inode()
439 i_size_write(inode, DLM_LVB_LEN); in dlmfs_get_inode()
451 inode->i_op = &dlmfs_dir_inode_operations; in dlmfs_get_inode()
452 inode->i_fop = &simple_dir_operations; in dlmfs_get_inode()
456 inc_nlink(inode); in dlmfs_get_inode()
459 return inode; in dlmfs_get_inode()
466 static int dlmfs_mkdir(struct inode * dir, in dlmfs_mkdir()
471 struct inode *inode = NULL; in dlmfs_mkdir() local
485 inode = dlmfs_get_inode(dir, dentry, mode | S_IFDIR); in dlmfs_mkdir()
486 if (!inode) { in dlmfs_mkdir()
492 ip = DLMFS_I(inode); in dlmfs_mkdir()
504 d_instantiate(dentry, inode); in dlmfs_mkdir()
510 iput(inode); in dlmfs_mkdir()
514 static int dlmfs_create(struct inode *dir, in dlmfs_create()
520 struct inode *inode; in dlmfs_create() local
535 inode = dlmfs_get_inode(dir, dentry, mode | S_IFREG); in dlmfs_create()
536 if (!inode) { in dlmfs_create()
542 d_instantiate(dentry, inode); in dlmfs_create()
548 static int dlmfs_unlink(struct inode *dir, in dlmfs_unlink()
552 struct inode *inode = d_inode(dentry); in dlmfs_unlink() local
554 mlog(0, "unlink inode %lu\n", inode->i_ino); in dlmfs_unlink()
558 status = user_dlm_destroy_lock(&DLMFS_I(inode)->ip_lockres); in dlmfs_unlink()