kmultipathd = create_workqueue("kmpathd"); if (!kmultipathd) { DMERR("%s: failed to create workqueue kmpathd", multipath_target.name); dm_unregister_target(&multipath_target); kmem_cache_destroy(_mpio_cache); return -ENOMEM; }  
static int __init dm_multipath_init(void){	int r;	/* allocate a slab for the dm_ios */	_mpio_cache = kmem_cache_create("dm_mpath", sizeof(struct mpath_io),					0, 0, NULL, NULL);	if (!_mpio_cache)		return -ENOMEM;	r = dm_register_target(&multipath_target);	if (r < 0) {		DMERR("%s: register failed %d", multipath_target.name, r);		kmem_cache_destroy(_mpio_cache);		return -EINVAL;	}	DMINFO("dm-multipath version %u.%u.%u loaded",	       multipath_target.version[0], multipath_target.version[1],	       multipath_target.version[2]);	return r;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/c557308e1f4b6f7d6144a06e8f98c467814f3aed/dm-mpath.c/buggy/drivers/md/dm-mpath.c