anchor.diff:              exit(Reason0)
       end.
   
  +-spec stop() -> ok.
   stop() ->
       gen_server:call(ddfs_node, stop).
   
  
positive.code: -include("ddfs_tag.hrl").
  
  -record(state, {nodename :: string(),
                  root :: nonempty_string(),
                  vols :: [volume()],
                  putq :: http_queue:q(),
                  getq :: http_queue:q(),
                  tags :: gb_tree(),
                  scanner :: pid()}).
  
  -spec start_link(term()) -> no_return().
  start_link(Config) ->
  
negative.code:                         {TotalFree + Free, TotalUsed + Used}
                  end, {0, 0}, Vols).
  
  -type put_blob_result() :: full | {error, no_volumes}.
  -spec do_put_blob(nonempty_string(), {pid(), _}, #state{}) ->
                           {reply, put_blob_result(), #state{}}
                           | {noreply, #state{}}.
  do_put_blob(_BlobName, _From, #state{vols = []} = S) ->
      {reply, {error, no_volumes}, S};
  do_put_blob(BlobName, {Pid, _Ref} = From,
  