• Mike Hibler's avatar
    Mapping changes to support persistent blockstores. · a721e561
    Mike Hibler authored
    Quite simple actually. In ptopgen we add all persistent stores, which
    are identified by having a non-zero lease_idx. To ensure they are only
    matched up with the correct virt_blockstore, we add a feature "bs-lease-NN"
    where NN is the unique lease index with weight 1.0.
    In vtopgen, when a request is made to map a persistent store, we first
    verify that the experiment pid matches that of the blockstore's lease
    (this is a fer-now simple check which is actually redundant as we make
    this check in the parser too) and ensure that the blockstore is not already
    mapped (indicated by the blockstore_state entry having size==0) and then
    we emit an entry with desire "bs-lease-NN" and weight 1.0.
    Most of the file changes were actually to get the "preassign" flag to
    vtopgen forwarded into the various libvtop modules so that I can check it
    and not perform the permission/size check if it is set.