Fix missing error path up_read(&_ps_lock). --- diff/drivers/md/dm-path-selector.c 2004-10-19 16:55:12.000000000 +0100 +++ source/drivers/md/dm-path-selector.c 2004-10-19 16:55:20.000000000 +0100 @@ -75,16 +75,21 @@ { struct ps_internal *psi; + if (!pst) + return; + down_read(&_ps_lock); psi = __find_path_selector_type(pst->name); if (!psi) - return; + goto out; if (--psi->use == 0) module_put(psi->pst.module); if (psi->use < 0) BUG(); + +out: up_read(&_ps_lock); }