int nilfs_sufile_resize(struct inode *sufile, __u64 newnsegs); int nilfs_sufile_read(struct super_block *sb, size_t susize, struct nilfs_inode *raw_inode, struct inode **inodep); int nilfs_sufile_trim_fs(struct inode *sufile, struct fstrim_range *range);
/** * nilfs_sufile_scrap - make a segment garbage * @sufile: inode of segment usage file * @segnum: segment number to be freed * * Return: 0 on success, or a negative error code on failure.
*/ staticinlineint nilfs_sufile_scrap(struct inode *sufile, __u64 segnum)
{ return nilfs_sufile_update(sufile, segnum, 1, nilfs_sufile_do_scrap);
}
/** * nilfs_sufile_free - free segment * @sufile: inode of segment usage file * @segnum: segment number to be freed * * Return: 0 on success, or a negative error code on failure.
*/ staticinlineint nilfs_sufile_free(struct inode *sufile, __u64 segnum)
{ return nilfs_sufile_update(sufile, segnum, 0, nilfs_sufile_do_free);
}
/** * nilfs_sufile_freev - free segments * @sufile: inode of segment usage file * @segnumv: array of segment numbers * @nsegs: size of @segnumv array * @ndone: place to store the number of freed segments * * Return: 0 on success, or a negative error code on failure.
*/ staticinlineint nilfs_sufile_freev(struct inode *sufile, __u64 *segnumv,
size_t nsegs, size_t *ndone)
{ return nilfs_sufile_updatev(sufile, segnumv, nsegs, 0, ndone,
nilfs_sufile_do_free);
}
/** * nilfs_sufile_cancel_freev - reallocate freeing segments * @sufile: inode of segment usage file * @segnumv: array of segment numbers * @nsegs: size of @segnumv array * @ndone: place to store the number of cancelled segments * * Return: 0 on success, or a negative error code on failure.
*/ staticinlineint nilfs_sufile_cancel_freev(struct inode *sufile,
__u64 *segnumv, size_t nsegs,
size_t *ndone)
{ return nilfs_sufile_updatev(sufile, segnumv, nsegs, 0, ndone,
nilfs_sufile_do_cancel_free);
}
/** * nilfs_sufile_set_error - mark a segment as erroneous * @sufile: inode of segment usage file * @segnum: segment number * * Description: nilfs_sufile_set_error() marks the segment specified by * @segnum as erroneous. The error segment will never be used again. * * Return: 0 on success, or one of the following negative error codes on * failure: * * %-EINVAL - Invalid segment usage number. * * %-EIO - I/O error (including metadata corruption). * * %-ENOMEM - Insufficient memory available.
*/ staticinlineint nilfs_sufile_set_error(struct inode *sufile, __u64 segnum)
{ return nilfs_sufile_update(sufile, segnum, 0,
nilfs_sufile_do_set_error);
}
#endif/* _NILFS_SUFILE_H */
Messung V0.5
¤ Dauer der Verarbeitung: 0.12 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.