int jbegin_count = JOURNAL_PER_BALANCE_CNT * 3 + 2 * (REISERFS_QUOTA_INIT_BLOCKS+REISERFS_QUOTA_TRANS_BLOCKS); 
int jbegin_count = JOURNAL_PER_BALANCE_CNT * 3 + 2 * (REISERFS_QUOTA_INIT_BLOCKS(parent_dir->i_sb)+REISERFS_QUOTA_TRANS_BLOCKS(parent_dir->i_sb)); 
static int reiserfs_symlink (struct inode * parent_dir,                             struct dentry * dentry, const char * symname){    int retval;    struct inode * inode;    char * name;    int item_len;    struct reiserfs_transaction_handle th ;    int mode = S_IFLNK | S_IRWXUGO;    /* We need blocks for transaction + (user+group)*(quotas for new inode + update of quota for directory owner) */    int jbegin_count = JOURNAL_PER_BALANCE_CNT * 3 + 2 * (REISERFS_QUOTA_INIT_BLOCKS+REISERFS_QUOTA_TRANS_BLOCKS);    if (!(inode = new_inode(parent_dir->i_sb))) {	return -ENOMEM ;    }    new_inode_init(inode, parent_dir, mode);    reiserfs_write_lock(parent_dir->i_sb);    item_len = ROUND_UP (strlen (symname));    if (item_len > MAX_DIRECT_ITEM_LEN (parent_dir->i_sb->s_blocksize)) {	retval =  -ENAMETOOLONG;	drop_new_inode(inode);	goto out_failed;    }      name = reiserfs_kmalloc (item_len, GFP_NOFS, parent_dir->i_sb);    if (!name) {	drop_new_inode(inode);	retval =  -ENOMEM;	goto out_failed;    }    memcpy (name, symname, strlen (symname));    padd_item (name, item_len, strlen (symname));    /* We would inherit the default ACL here, but symlinks don't get ACLs */    retval = journal_begin(&th, parent_dir->i_sb, jbegin_count) ;    if (retval) {        drop_new_inode (inode);        reiserfs_kfree (name, item_len, parent_dir->i_sb);        goto out_failed;    }    retval = reiserfs_new_inode (&th, parent_dir, mode, name, strlen (symname),                                  dentry, inode);    reiserfs_kfree (name, item_len, parent_dir->i_sb);    if (retval) { /* reiserfs_new_inode iputs for us */	goto out_failed;    }    reiserfs_update_inode_transaction(inode) ;    reiserfs_update_inode_transaction(parent_dir) ;    inode->i_op = &reiserfs_symlink_inode_operations;    inode->i_mapping->a_ops = &reiserfs_address_space_operations;    // must be sure this inode is written with this transaction    //    //reiserfs_update_sd (&th, inode, READ_BLOCKS);    retval = reiserfs_add_entry (&th, parent_dir, dentry->d_name.name,                                  dentry->d_name.len, inode, 1/*visible*/);    if (retval) {	int err;	inode->i_nlink--;	reiserfs_update_sd (&th, inode);	err = journal_end(&th, parent_dir->i_sb, jbegin_count) ;	if (err)	    retval = err;	iput (inode);	goto out_failed;    }    d_instantiate(dentry, inode);    retval = journal_end(&th, parent_dir->i_sb, jbegin_count) ;out_failed:    reiserfs_write_unlock(parent_dir->i_sb);    return retval;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/556a2a45bce1740f035befaa7201e4ad836c7257/namei.c/clean/fs/reiserfs/namei.c