예제 #1
0
void
testfs_put_inode_freemap(struct super_block *sb, int inode_nr)
{
	assert(sb->inode_freemap);
	bitmap_unmark(sb->inode_freemap, inode_nr);
	testfs_write_inode_freemap(sb, inode_nr);
	assert(sb->sb.used_inode_count > 0);
	sb->sb.used_inode_count--;
	testfs_write_super_block(sb);
}
예제 #2
0
파일: super.c 프로젝트: shehbazj/fslice
/* return free inode number or negative value */
int testfs_get_inode_freemap(struct super_block *sb) {
	u_int32_t index;
	int ret;

	assert(sb->inode_freemap);
	ret = bitmap_alloc(sb->inode_freemap, &index);
	if (ret < 0)
		return ret;
	testfs_write_inode_freemap(sb, index);
	return index;
}
예제 #3
0
파일: super.c 프로젝트: shehbazj/fslice
/* release allocated inode */
void testfs_put_inode_freemap(struct super_block *sb, int inode_nr) {
	assert(sb->inode_freemap);
	bitmap_unmark(sb->inode_freemap, inode_nr);
	testfs_write_inode_freemap(sb, inode_nr);
}