Example #1
0
/*
 * Preallocate the whole object to get a better filesystem layout.
 */
int prealloc(int fd, uint32_t size)
{
	int ret = fallocate(fd, 0, 0, size);
	if (ret < 0) {
		if (errno != ENOSYS && errno != EOPNOTSUPP)
			ret = err_to_sderr(0, errno); /* FIXME: set oid */
		else
			ret = write_last_sector(fd, size);
	} else
		ret = SD_RES_SUCCESS;
	return ret;
}
Example #2
0
/*
 * Preallocate the whole object to get a better filesystem layout.
 */
int prealloc(int fd, uint32_t size)
{
    int ret = fallocate(fd, 0, 0, size);
    if (ret < 0) {
        if (errno != ENOSYS && errno != EOPNOTSUPP) {
            dprintf("%m\n");
            ret = SD_RES_SYSTEM_ERROR;
        } else
            ret = write_last_sector(fd, size);
    } else
        ret = SD_RES_SUCCESS;
    return ret;
}