Example #1
0
status_t
Inode::CreateFileCache()
{
	TRACE("Inode::CreateFileCache()\n");

	if (fCache != NULL)
		return B_OK;

	TRACE("Inode::CreateFileCache(): Creating file cache: %" B_PRIu32 ", %"
		B_PRIdINO ", %" B_PRIdOFF "\n", fVolume->ID(), ID(), Size());

	fCache = file_cache_create(fVolume->ID(), ID(), Size());
	if (fCache == NULL) {
		ERROR("Inode::CreateFileCache(): Failed to create file cache\n");
		return B_ERROR;
	}

	fMap = file_map_create(fVolume->ID(), ID(), Size());
	if (fMap == NULL) {
		ERROR("Inode::CreateFileCache(): Failed to create file map\n");
		file_cache_delete(fCache);
		fCache = NULL;
		return B_ERROR;
	}

	TRACE("Inode::CreateFileCache(): Done\n");

	return B_OK;
}
Example #2
0
Inode::~Inode()
{
	TRACE("Inode destructor\n");
	file_cache_delete(FileCache());
	file_map_delete(Map());
	TRACE("Inode destructor: Done\n");
}
Example #3
0
	~DataAccessor()
	{
		file_cache_delete(fFileCache);
		delete fReader;
		delete fDataReader;
		mutex_destroy(&fLock);
	}
Example #4
0
Inode::~Inode()
{
	TRACE("Inode destructor\n");

	if (fCached) {
		TRACE("Deleting the file cache and file map\n");
		file_cache_delete(FileCache());
		file_map_delete(Map());
	}

	TRACE("Inode destructor: Done\n");
}
Example #5
0
void
Inode::DeleteFileCache()
{
	TRACE("Inode::DeleteFileCache()\n");

	if (fCache == NULL)
		return;

	file_cache_delete(fCache);
	file_map_delete(fMap);

	fCache = NULL;
	fMap = NULL;
}
Example #6
0
status_t
Inode::DisableFileCache()
{
	TRACE("Inode::DisableFileCache()\n");

	if (!fCached)
		return B_OK;

	file_cache_delete(FileCache());
	file_map_delete(Map());

	fCached = false;

	return B_OK;
}
static status_t
fs_release_vnode(fs_volume* /*_volume*/, fs_vnode* _node, bool /*reenter*/)
{
	iso9660_inode* node = (iso9660_inode*)_node->private_node;

	TRACE(("fs_release_vnode - ENTER (%p)\n", node));

	if (node->id != ISO_ROOTNODE_ID) {
		free(node->name);
		free(node->attr.slName);

		if (node->cache != NULL)
			file_cache_delete(node->cache);

		free(node);
	}

	TRACE(("fs_release_vnode - EXIT\n"));
	return B_OK;
}