[dm-devel] are there usage examples for dm_sm_metadata_{create|open}?

John Utz John.Utz at wdc.com
Sat May 3 02:24:48 UTC 2014


I am developing a simulator for ZBC/ZAC devices using the linear target source code as the starting point. I talked briefly with Ric Wheeler about this project at Napa so he may be in a position to provide you with more context than i am putting into this email.

Since this simulator is expected to be highly configurable i dont have the luxury of hardcoding anything important, so i am on the hunt for A Cunning Plan.

Specifically, I need to be able to configure the number and size of a series of equally sized subdivisions the linear space into discrete equally sized chunks and then *save* this information off somewhere for future use so that we know how to interpret the data that has been saved to the underlying device.

The needs for the simulator metadata are pretty simple; number of subdivisions, size of subdivisions, etc. They just need to persist beyond the lifetime of the module.

So, the stuff in persistent-data sure seems like a good candidate for getting the job done. :-)

It seems like the first basic action one would want to perform would be to create a metadata 'blob' and then at some point in the future one would regularly want to open said metadata blob. The dm_sm_metadata_create and open functions seem perfect for the job.

But for some reason, I am unable to find a place in the md directory where this is getting used.

I would have thought that dm-cache-metadata.c would be using it, but it doesnt seem to be thinking about this in the same way. It uses dm_block_manager_create() and __create_persistent_data_objects().

I have perused dm-cache-metadata.c and dm-thin-metadata.c and they seem significantly more ambitious than anything the simulator needs to do.

Can any of you folks provide me with some guidance or sample code to look at to get me bootstrapped toward getting this done?



More information about the dm-devel mailing list