Set deactivation
Phillip Susi
psusi at cfl.rr.com
Thu Dec 4 18:28:58 UTC 2008
Heinz Mauelshagen wrote:
> Before I search...
> Which dmraid version are you referring to.
rc14. I just checked rc15 and it has been changed to:
if (DM_DEVICE_CREATE == type) {
ret = dmraid_uuid(lc, rs, uuid, DM_UUID_LEN) &&
dm_task_set_uuid(dmt, uuid) && dm_task_run(dmt);
} else
ret = dm_task_run(dmt);
Which makes more sense, but I'm still left wondering how deactivation
ever worked in rc14.
> Am Dienstag, den 02.12.2008, 14:43 -0500 schrieb Phillip Susi:
>> I'm trying to debug why dmraid won't deactivate this raid set and am
>> very confused by the code I see. Hopefully someone can shed some light
>> on this.
>>
>> change_set() calls deactivate_set() which calls dm_remove(), which calls
>> run_task() in lib/activate/devmapper.c. run_task() looks like this:
>>
>> if (ret &&
>> DM_DEVICE_CREATE == type)
>> ret = dmraid_uuid(lc, rs, uuid, DM_UUID_LEN) &&
>> dm_task_set_uuid(dmt, uuid) &&
>> dm_task_run(dmt);
>>
>> Now that looks to me like the only kind of task it will run is a create
>> task, not a remove task, like the one it is being asked to do. This
>> code looks like it will never work, as if the removal code was never
>> completed, yet I know that dmraid -an does work normally, so what gives?
More information about the Ataraid-list
mailing list