}
if (ret < 0)
errval = errno;
+ else if (ret) /* probably not supported */
+ errval = ret;
} else if (f->filetype == FIO_TYPE_CHAR ||
f->filetype == FIO_TYPE_PIPE) {
dprint(FD_IO, "invalidate not supported %s\n", f->file_name);
* continue on our way.
*/
if (errval)
- log_info("fio: cache invalidation of %s failed: %s\n", f->file_name, strerror(errval));
+ log_info("fio: cache invalidation of %s failed: %s\n",
+ f->file_name, strerror(errval));
return 0;
static inline int blockdev_invalidate_cache(struct fio_file *f)
{
- return EINVAL;
+ return ENOTSUP;
}
static inline int blockdev_size(struct fio_file *f, unsigned long long *bytes)
static inline int blockdev_invalidate_cache(struct fio_file *f)
{
- return EINVAL;
+ return ENOTSUP;
}
static inline unsigned long long os_phys_mem(void)
static inline int blockdev_invalidate_cache(struct fio_file *f)
{
- return EINVAL;
+ return ENOTSUP;
}
static inline unsigned long long os_phys_mem(void)
static inline int blockdev_invalidate_cache(struct fio_file *f)
{
- return EINVAL;
+ return ENOTSUP;
}
static inline int blockdev_size(struct fio_file *f, unsigned long long *bytes)
static inline int blockdev_invalidate_cache(struct fio_file *f)
{
- return EINVAL;
+ return ENOTSUP;
}
static inline unsigned long long os_phys_mem(void)
static inline int blockdev_invalidate_cache(struct fio_file *f)
{
- return EINVAL;
+ return ENOTSUP;
}
static inline unsigned long long os_phys_mem(void)
static inline int blockdev_invalidate_cache(struct fio_file *f)
{
- return EINVAL;
+ return ENOTSUP;
}
static inline unsigned long long os_phys_mem(void)
static inline int blockdev_invalidate_cache(struct fio_file *f)
{
- return 0;
+ return ENOTSUP;
}
static inline unsigned long long os_phys_mem(void)
static inline int blockdev_invalidate_cache(struct fio_file *f)
{
- /* There's no way to invalidate the cache in Windows
- * so just pretend to succeed */
- return 0;
+ return ENOTSUP;
}
static inline unsigned long long os_phys_mem(void)