create metadata from DMRAID

Fang, Ying ying.fang at intel.com
Mon Jul 2 23:51:24 UTC 2007


>
>The data structure already exist: raid_set and raid_dev.
>For one-level sets, a raid_set structure with multiple raid_dev
>structures hanging off.
>For 2-level sets (eg. RAID10), a top-level raid_set structure, multiple
>bottom level raid_set structures hanging off it and multiple raid_dev
>structures hanging off the bottom level ones.
>
>You got to check, if the properties (ie. the structure mebers) are
>sufficient or if we need to add some.
>
>> Then it calls .create of an
>> appropriate handler to build and write metadata to each hard device
of
>> the raid set.
>
>It calls a) .create and of that succeeds it'll call b) .write
>in a followup step.

You mean the metadata creation procedure is the reverse path of building
a raidset from metadata:
1. create a raid set (struct raid_set) and its subsets
2. create a list of raid devices for all subsets
3. call .create for each raid device to generate a complete metadata
attached to the device (struct raid_dev)
4. call .write to write metadata to each hard drive.


>>
>> How about manual and auto rebuilding? Should updating metadata status
be
>> handled by DMRAID or device drivers?
>
>By dmraid using dmeventd, which is part of libdevmapper.
>You got to create a dmraid DSO for dmeventd to make that happen.
>Look at the mirror DSO for dmeventd for an example.
>

Is it to call dm_event_handler_create, and dm_event_registered_device to
create a dmraid DSO? I didn't find the mirror DSO. Could you give me the
name of the file? 

Thanks,
Ying




More information about the Ataraid-list mailing list