
  PROCEDURE [INLINE] dmp$unlock_avt_entry
    (    avt_index: dmt$active_volume_table_index);

?? PUSH (LISTEXT := ON) ??

    VAR
      actual: integer,
      lock_p: ^ost$signature_lock,
      result: 0 .. 2;

    lock_p := ^dmv$active_volume_table.table_p^ [avt_index].lock;
    REPEAT
      #COMPARE_SWAP (lock_p^.lock_id, $INTEGER (dmc$locked),
            $INTEGER (dmc$unlocked), actual, result);
    UNTIL result <> 2;
    IF result <> 0 THEN
      osp$system_error ('Unable to Unlock AVT Entry', NIL);
    IFEND;

  PROCEND dmp$unlock_avt_entry;

*copyc dmh$unlock_avt_entry
*copyc osp$system_error
*copyc dmt$active_volume_table_index
*copyc dmt$file_table_lock
*copyc dmv$active_volume_table
?? POP ??
