/**
* This form of constructor causes its function argument to be invoked
* when the object is constructed. When used with a static Initialize
- * object, this will cause #func to run before main() runs, so that
- * #func can perform once-only initialization.
+ * object, this will cause \p func to run before main() runs, so that
+ * \p func can perform once-only initialization.
*
* \param func
* This function is invoked with no arguments when the object is
/**
* Returns set S of strings such that for any object
* h where h.match(bits, mask), there is some string
- * s \in S such that s is a prefix of h.to_str().
- * Furthermore, for any s \in S, s is a prefix of
+ * s \f$\in\f$ S such that s is a prefix of h.to_str().
+ * Furthermore, for any s $f\in\f$ S, s is a prefix of
* h.str() implies that h.match(bits, mask).
*/
static set<string> get_prefixes(
*
* Will return the weight for the first instance it finds.
*
- * @param cct cct
* @param id item id to check
* @return weight of item
*/
/**
* crush_find_rule - find a crush_rule id for a given ruleset, type, and size.
- * @map: the crush_map
- * @ruleset: the storage ruleset id (user defined)
- * @type: storage ruleset type (user defined)
- * @size: output set size
+ * @param map: the crush_map
+ * @param ruleset: the storage ruleset id (user defined)
+ * @param type: storage ruleset type (user defined)
+ * @param size: output set size
*/
int crush_find_rule(const struct crush_map *map, int ruleset, int type, int size)
{
/**
* crush_choose_firstn - choose numrep distinct items of given type
- * @map: the crush_map
- * @bucket: the bucket we are choose an item from
- * @x: crush input value
- * @numrep: the number of items to choose
- * @type: the type of item to choose
- * @out: pointer to output vector
- * @outpos: our position in that vector
- * @out_size: size of the out vector
- * @tries: number of attempts to make
- * @recurse_tries: number of attempts to have recursive chooseleaf make
- * @local_retries: localized retries
- * @local_fallback_retries: localized fallback retries
- * @recurse_to_leaf: true if we want one device under each item of given type (chooseleaf instead of choose)
- * @vary_r: pass r to recursive calls
- * @out2: second output vector for leaf items (if @recurse_to_leaf)
- * @parent_r: r value passed from the parent
+ * @param map: the crush_map
+ * @param bucket: the bucket we are choose an item from
+ * @param x: crush input value
+ * @param numrep: the number of items to choose
+ * @param type: the type of item to choose
+ * @param out: pointer to output vector
+ * @param outpos: our position in that vector
+ * @param out_size: size of the out vector
+ * @param tries: number of attempts to make
+ * @param recurse_tries: number of attempts to have recursive chooseleaf make
+ * @param local_retries: localized retries
+ * @param local_fallback_retries: localized fallback retries
+ * @param recurse_to_leaf: true if we want one device under each item of given type (chooseleaf instead of choose)
+ * @param vary_r: pass r to recursive calls
+ * @param out2: second output vector for leaf items (if @recurse_to_leaf)
+ * @param parent_r: r value passed from the parent
*/
static int crush_choose_firstn(const struct crush_map *map,
struct crush_bucket *bucket,
/**
* crush_do_rule - calculate a mapping with the given input and rule
- * @map: the crush_map
- * @ruleno: the rule id
- * @x: hash input
- * @result: pointer to result vector
- * @result_max: maximum result size
- * @weight: weight vector (for map leaves)
- * @weight_max: size of weight vector
- * @scratch: scratch vector for private use; must be >= 3 * result_max
+ * @param map: the crush_map
+ * @param ruleno: the rule id
+ * @param x: hash input
+ * @param result: pointer to result vector
+ * @param result_max: maximum result size
+ * @param weight: weight vector (for map leaves)
+ * @param weight_max: size of weight vector
+ * @param scratch: scratch vector for private use; must be >= 3 * result_max
*/
int crush_do_rule(const struct crush_map *map,
int ruleno, int x, int *result, int result_max,
*
* @param cluster which cluster the pool is in
* @param pool_name name of the pool
- * @param pool_id unique id of the pool
* @param ioctx where to store the io context
* @returns 0 on success, negative error code on failure
*/
/**
* Retrieve hit set for a given hash, and time
*
- * @param uint32_t [in] hash position
+ * @param hash [in] hash position
* @param c [in] completion
* @param stamp [in] time interval that falls within the hit set's interval
* @param pbl [out] buffer to store the result in
* Delete an extended attribute from a striped object.
*
* @param striper the striper in which the rmxattr will occur
- * @param o the name of the object
+ * @param oid name of the object
* @param name which xattr to delete
* @returns 0 on success, negative error code on failure
*/
/**
* synchronously append data to the striped object
- * NOTE: this call steals the contents of @param bl.
+ * NOTE: this call steals the contents of @p bl.
*/
int append(const std::string& soid, const ceph::bufferlist& bl, size_t len);
/**
* asynchronously write to the striped object at the specified offset.
- * NOTE: this call steals the contents of @param bl.
+ * NOTE: this call steals the contents of @p bl.
*/
int aio_write(const std::string& soid, librados::AioCompletion *c, const ceph::bufferlist& bl, size_t len, uint64_t off);
/**
* asynchronously fill the striped object with the specified data
- * NOTE: this call steals the contents of @param bl.
+ * NOTE: this call steals the contents of @p bl.
*/
int aio_write_full(const std::string& soid, librados::AioCompletion *c, const ceph::bufferlist& bl);
/**
* asynchronously append data to the striped object
- * NOTE: this call steals the contents of @param bl.
+ * NOTE: this call steals the contents of @p bl.
*/
int aio_append(const std::string& soid, librados::AioCompletion *c, const ceph::bufferlist& bl, size_t len);
int aio_flush(RBD::AioCompletion *c);
/**
- * Drop any cached data for an image
+ * Drop any cached data for this image
*
- * @param image the image to invalidate cached data for
* @returns 0 on success, negative error code on failure
*/
int invalidate_cache();
*
* @param idata: the index data parsed from the index entry left by the dead
* client.
- * @param errno: the error that caused the client to realize the other client
+ * @param error: the error that caused the client to realize the other client
* died (should be -ENOENT or -ETIMEDOUT)
* @post: rolls forward if -ENOENT, otherwise rolls back.
*/
* Flatten goes through the following state machine to copyup objects
* from the parent image:
*
+ * @verbatim
+ *
* <start>
* |
* v
* . .
* . . . . . . . . . . . . . . . . . . .
*
+ * @endverbatim
+ *
* The _UPDATE_CHILDREN state will be skipped if the image has one or
* more snapshots. The _UPDATE_HEADER state will be skipped if the
* image was concurrently flattened by another client.
* Resize goes through the following state machine to resize the image
* and update the object map:
*
+ * @verbatim
+ *
* <start> -------------> STATE_FINISHED -----------------------------\
* | . (no change) |
* | . |
* v v v
* STATE_SHRINK_OBJECT_MAP ---> <finish>
*
+ * @endverbatim
+ *
* The _OBJECT_MAP states are skipped if the object map isn't enabled.
* The state machine will immediately transition to _FINISHED if there
* are no objects to trim.
* Trim goes through the following state machine to remove whole objects,
* clean partially trimmed objects, and update the object map:
*
+ * @verbatim
+ *
* <start> . . . . > STATE_FINISHED . . . . . . . . .
* | . .
* | . . . . . . . . . . . . .
* . .
* . . . . . . . . . . . . . . . . . . . . . . .
*
+ * @endverbatim
+ *
* The _PRE_REMOVE/_POST_REMOVE states are skipped if the object map
* isn't enabled. The _REMOVE_OBJECTS state is skipped if no whole objects
* are removed. The _CLEAN_BOUNDARY state is skipped if no boundary
* Copyup requests go through the following state machine to read from the
* parent image, update the object map, and copyup the object:
*
+ *
+ * @verbatim
+ *
* <start>
* |
* v
* . |
* v v
* <finish>
+ *
+ * @endverbatim
+ *
* The _OBJECT_MAP state is skipped if the object map isn't enabled.
*/
enum State {
};
/**
- * Like ::trim, but instead of trimming to max_segments, trim all but the latest
+ * Like MDLog::trim, but instead of trimming to max_segments, trim all but the latest
* segment.
*/
int MDLog::trim_all()
}
/**
- * Create an incremental log message from version @sv to @summary.version
+ * Create an incremental log message from version \p sv to \p summary.version
*
* @param mlog Log message we'll send to the client with the messages received
- * since version @sv, inclusive.
+ * since version \p sv, inclusive.
* @param level The max log level of the messages the client is interested in.
* @param sv The version the client is looking for.
*/
* reply in @p result_reply.
*
* @param[in] mon_id Target monitor's ID
- * @param[out] Resulting reply from mon.ID, if param != NULL
+ * @param[out] result_reply reply from mon.ID, if param != NULL
* @returns 0 in case of success; < 0 in case of error,
* -ETIMEDOUT if monitor didn't reply before timeout
* expired (default: conf->client_mount_timeout).
*
* @param m The Message to send. The Messenger consumes a single reference
* when you pass it in.
- * @param con The Connection to send the Message out on.
*
* @return 0 on success, or -errno on failure.
*/
* @param expected_num_objs - expected number of objects in this collection
* @param spos - sequence position
*
- * @Return 0 on success, an error code otherwise
+ * @return 0 on success, an error code otherwise
*/
int _collection_hint_expected_num_objs(coll_t c, uint32_t pg_num,
uint64_t expected_num_objs,
* Reserve and return index for c
*
* @param [in] c Collection for which to get index
- * @param [in] path Path to collection
+ * @param [in] baseDir base directory of collections
* @param [out] index Index for c
* @return error code
*/
* @param start list objects that sort >= this value
* @param min return at least this many results, unless we reach the end
* @param max return no more than this many results
- * @param snapid return no objects with snap < snapid
+ * @param snap return no objects with snap < snapid
* @param ls [out] result
* @param next [out] next item sorts >= this value
* @return zero on success, or negative error
* @param src: The source object
* @param oloc: the source object locator
* @param version: the version of the source object to copy (0 for any)
- * @param temp_dest_oid: the temporary object to use for large objects
*/
void start_copy(CopyCallback *cb, ObjectContextRef obc, hobject_t src,
object_locator_t oloc, version_t version, unsigned flags,