Revision 6f6dc656 block/raw-posix.c

b/block/raw-posix.c
583 583
    return result;
584 584
}
585 585

  
586
static int raw_flush(BlockDriverState *bs)
587
{
588
    BDRVRawState *s = bs->opaque;
589
    int ret;
590

  
591
    ret = qemu_fdatasync(s->fd);
592
    if (ret < 0) {
593
        return -errno;
594
    }
595

  
596
    return 0;
597
}
598

  
599 586
#ifdef CONFIG_XFS
600 587
static int xfs_discard(BDRVRawState *s, int64_t sector_num, int nb_sectors)
601 588
{
......
645 632
    .bdrv_file_open = raw_open,
646 633
    .bdrv_close = raw_close,
647 634
    .bdrv_create = raw_create,
648
    .bdrv_flush = raw_flush,
649 635
    .bdrv_discard = raw_discard,
650 636

  
651 637
    .bdrv_aio_readv = raw_aio_readv,
......
915 901
    .bdrv_create        = hdev_create,
916 902
    .create_options     = raw_create_options,
917 903
    .bdrv_has_zero_init = hdev_has_zero_init,
918
    .bdrv_flush         = raw_flush,
919 904

  
920 905
    .bdrv_aio_readv	= raw_aio_readv,
921 906
    .bdrv_aio_writev	= raw_aio_writev,
......
1035 1020
    .bdrv_create        = hdev_create,
1036 1021
    .create_options     = raw_create_options,
1037 1022
    .bdrv_has_zero_init = hdev_has_zero_init,
1038
    .bdrv_flush         = raw_flush,
1039 1023

  
1040 1024
    .bdrv_aio_readv     = raw_aio_readv,
1041 1025
    .bdrv_aio_writev    = raw_aio_writev,
......
1135 1119
    .bdrv_create        = hdev_create,
1136 1120
    .create_options     = raw_create_options,
1137 1121
    .bdrv_has_zero_init = hdev_has_zero_init,
1138
    .bdrv_flush         = raw_flush,
1139 1122

  
1140 1123
    .bdrv_aio_readv     = raw_aio_readv,
1141 1124
    .bdrv_aio_writev    = raw_aio_writev,
......
1255 1238
    .bdrv_create        = hdev_create,
1256 1239
    .create_options     = raw_create_options,
1257 1240
    .bdrv_has_zero_init = hdev_has_zero_init,
1258
    .bdrv_flush         = raw_flush,
1259 1241

  
1260 1242
    .bdrv_aio_readv     = raw_aio_readv,
1261 1243
    .bdrv_aio_writev    = raw_aio_writev,

Also available in: Unified diff