An error path in table_load() forgets to release a table that won't now be referenced. From: Kiyoshi Ueda Signed-Off-By: Alasdair G Kergon [Submitted upstream 2005/11/18] Index: linux-2.6.14/drivers/md/dm-ioctl.c =================================================================== --- linux-2.6.14.orig/drivers/md/dm-ioctl.c 2005-11-14 16:50:11.000000000 +0000 +++ linux-2.6.14/drivers/md/dm-ioctl.c 2005-11-14 16:50:39.000000000 +0000 @@ -974,6 +974,7 @@ static int table_load(struct dm_ioctl *p if (!hc) { DMWARN("device doesn't appear to be in the dev hash table."); up_write(&_hash_lock); + dm_table_put(t); return -ENXIO; }