All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v4 0/27] write/create for Parallels images with reasonable performance
@ 2015-04-28  7:46 Denis V. Lunev
  2015-04-28  7:46 ` [Qemu-devel] [PATCH 01/27] iotests, parallels: quote TEST_IMG in 076 test to be path-safe Denis V. Lunev
                   ` (29 more replies)
  0 siblings, 30 replies; 50+ messages in thread
From: Denis V. Lunev @ 2015-04-28  7:46 UTC (permalink / raw)
  Cc: Kevin Wolf, Denis V. Lunev, qemu-devel, Stefan Hajnoczi, Roman Kagan

This patchset provides an ability to create of/write to Parallels
images and some testing of the new code. Readings and writings are
optimized out and I expect the same or slightly better performance
as qcow2.

Changes from v4:
- parallels format driver marked as bdrv_has_zero_init_1
- added missed unlocks to parallels_co_readv/writev on error path, locking
  is shortened and simplified
- changed test number for created images
- added check for bdrv_has_zero_init() and availability of bdrv_truncate()
  in parallels_open() and proper error handling in alloc_cluster
- some patch comments are improved

Changes from v3:
- fixed checkpatch warnings even in just moved code. I am tired of them
- fixed contingency check in patch 18

Changes from v2:
- read performance is almost doubled (up to 360 Mb/sec), write performance
  is improved by 15-20%
- bat caching approach changed completely. bat_bitmap now contains the data
  in on-disk format, which allows to use this data for metadata cache
- incorrect close detection code is added (inuse field in the header)
- very basic check consistency code added

Changes from v1:
- patches 13-19 added, which boosts performance from 800 KiB/sec to
  near native performance

Signed-off-by: Denis V. Lunev <den@openvz.org>
CC: Roman Kagan <rkagan@parallels.com>
CC: Kevin Wolf <kwolf@redhat.com>
CC: Stefan Hajnoczi <stefanha@redhat.com>

^ permalink raw reply	[flat|nested] 50+ messages in thread
* [Qemu-devel] [PATCH v3 0/27] write/create for Parallels images with reasonable performance
@ 2015-03-11 10:27 Denis V. Lunev
  2015-03-11 10:28 ` [Qemu-devel] [PATCH 06/27] block/parallels: provide _co_readv routine for parallels format driver Denis V. Lunev
  0 siblings, 1 reply; 50+ messages in thread
From: Denis V. Lunev @ 2015-03-11 10:27 UTC (permalink / raw)
  Cc: Kevin Wolf, Roman Kagan, Jeff Cody, qemu-devel, Stefan Hajnoczi,
	Denis V. Lunev

This patchset provides an ability to create of/write to Parallels
images and some testing of the new code. Readings and writings are
optimized out and I expect the same or slightly better performance
as qcow2.

This patchset consists of not problematic part of the previous
patchset aka
   [PATCH v4 0/16] parallels format support improvements
and new write/create code but it does not contradict questionable code
with XML handling there.

Changes from v3:
- fixed checkpatch warnings even in just moved code. I am tired of them :)
- fixed contingency check in patch 18

Changes from v2:
- read performance is almost doubled (up to 360 Mb/sec), write performance
  is improved by 15-20%
- bat caching approach changed completely. bat_bitmap now contains the data
  in on-disk format, which allows to use this data for metadata cache
- incorrect close detection code is added (inuse field in the header)
- very basic check consistency code added

Changes from v1:
- patches 13-19 added, which boosts performance from 800 KiB/sec to
  near native performance

Signed-off-by: Denis V. Lunev <den@openvz.org>
CC: Roman Kagan <rkagan@parallels.com>
CC: Jeff Cody <jcody@redhat.com>
CC: Kevin Wolf <kwolf@redhat.com>
CC: Stefan Hajnoczi <stefanha@redhat.com>

^ permalink raw reply	[flat|nested] 50+ messages in thread
* [Qemu-devel] [PATCH v3 0/27] write/create for Parallels images with reasonable performance
@ 2015-03-10  8:50 Denis V. Lunev
  2015-03-10  8:51 ` [Qemu-devel] [PATCH 06/27] block/parallels: provide _co_readv routine for parallels format driver Denis V. Lunev
  0 siblings, 1 reply; 50+ messages in thread
From: Denis V. Lunev @ 2015-03-10  8:50 UTC (permalink / raw)
  Cc: Kevin Wolf, Roman Kagan, Jeff Cody, qemu-devel, Stefan Hajnoczi,
	Denis V. Lunev

This patchset provides an ability to create of/write to Parallels
images and some testing of the new code. Reading and writings are
optimized out and I expect the same or slightly better performance
as qcow2.

This patchset consists of not problematic part of the previous
patchset aka
   [PATCH v4 0/16] parallels format support improvements
and new write/create code but it does not contradict questionable code
with XML handling there.

Changes from v2:
- read performance is almost doubled (up to 360 Mb/sec), write performance
  is improved by 15-20%
- bat caching approach changed completely. bat_bitmap now contains the data
  in on-disk format, which allows to use this data for metadata cache
- incorrect close detection code is added (inuse field in the header)
- very basic check consistency code added

Changes from v1:
- patches 13-19 added, which boosts performance from 800 KiB/sec to
  near native performance

Signed-off-by: Denis V. Lunev <den@openvz.org>
CC: Roman Kagan <rkagan@parallels.com>
CC: Jeff Cody <jcody@redhat.com>
CC: Kevin Wolf <kwolf@redhat.com>
CC: Stefan Hajnoczi <stefanha@redhat.com>

P.S. This is definitely not for 2.3...

^ permalink raw reply	[flat|nested] 50+ messages in thread

end of thread, other threads:[~2015-05-19  8:26 UTC | newest]

Thread overview: 50+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-04-28  7:46 [Qemu-devel] [PATCH v4 0/27] write/create for Parallels images with reasonable performance Denis V. Lunev
2015-04-28  7:46 ` [Qemu-devel] [PATCH 01/27] iotests, parallels: quote TEST_IMG in 076 test to be path-safe Denis V. Lunev
2015-04-28  7:46 ` [Qemu-devel] [PATCH 02/27] block/parallels: rename parallels_header to ParallelsHeader Denis V. Lunev
2015-04-28  7:46 ` [Qemu-devel] [PATCH 03/27] block/parallels: switch to bdrv_read Denis V. Lunev
2015-05-18 16:11   ` Stefan Hajnoczi
2015-04-28  7:46 ` [Qemu-devel] [PATCH 04/27] block/parallels: read up to cluster end in one go Denis V. Lunev
2015-04-28  7:46 ` [Qemu-devel] [PATCH 05/27] block/parallels: add get_block_status Denis V. Lunev
2015-05-18 16:11   ` Stefan Hajnoczi
2015-04-28  7:46 ` [Qemu-devel] [PATCH 06/27] block/parallels: provide _co_readv routine for parallels format driver Denis V. Lunev
2015-04-28  9:26   ` Roman Kagan
2015-05-18 16:12   ` Stefan Hajnoczi
2015-04-28  7:46 ` [Qemu-devel] [PATCH 07/27] block/parallels: replace magic constants 4, 64 with proper sizeofs Denis V. Lunev
2015-04-28  7:46 ` [Qemu-devel] [PATCH 08/27] block/parallels: mark parallels format driver as zero inited Denis V. Lunev
2015-04-28  9:53   ` Roman Kagan
2015-05-18 16:13   ` Stefan Hajnoczi
2015-04-28  7:46 ` [Qemu-devel] [PATCH 09/27] block/parallels: _co_writev callback for Parallels format Denis V. Lunev
2015-04-28 10:40   ` Roman Kagan
2015-05-18 16:29   ` Stefan Hajnoczi
2015-04-28  7:46 ` [Qemu-devel] [PATCH 10/27] iotests, parallels: test for write into Parallels image Denis V. Lunev
2015-04-28  7:46 ` [Qemu-devel] [PATCH 11/27] block/parallels: support parallels image creation Denis V. Lunev
2015-04-28  7:46 ` [Qemu-devel] [PATCH 12/27] iotests, parallels: test for newly created parallels image via qemu-img Denis V. Lunev
2015-04-28  7:46 ` [Qemu-devel] [PATCH 13/27] parallels: change copyright information in the image header Denis V. Lunev
2015-04-28  7:46 ` [Qemu-devel] [PATCH 14/27] block/parallels: rename catalog_ names to bat_ Denis V. Lunev
2015-04-28  7:46 ` [Qemu-devel] [PATCH 15/27] block/parallels: create bat2sect helper Denis V. Lunev
2015-04-28  7:46 ` [Qemu-devel] [PATCH 16/27] block/parallels: keep BAT bitmap data in little endian in memory Denis V. Lunev
2015-04-28  7:46 ` [Qemu-devel] [PATCH 17/27] block/parallels: read parallels image header and BAT into single buffer Denis V. Lunev
2015-04-28  7:46 ` [Qemu-devel] [PATCH 18/27] block/parallels: move parallels_open/probe to the very end of the file Denis V. Lunev
2015-04-28  7:46 ` [Qemu-devel] [PATCH 19/27] block/parallels: implement parallels_check method of block driver Denis V. Lunev
2015-04-28  7:46 ` [Qemu-devel] [PATCH 20/27] block/parallels: implement incorrect close detection Denis V. Lunev
2015-04-28  7:46 ` [Qemu-devel] [PATCH 21/27] iotests, parallels: check for incorrectly closed image in tests Denis V. Lunev
2015-04-28  7:46 ` [Qemu-devel] [PATCH 22/27] block/parallels: improve image reading performance Denis V. Lunev
2015-04-28  7:46 ` [Qemu-devel] [PATCH 23/27] block/parallels: create bat_entry_off helper Denis V. Lunev
2015-04-28  7:46 ` [Qemu-devel] [PATCH 24/27] block/parallels: delay writing to BAT till bdrv_co_flush_to_os Denis V. Lunev
2015-04-28  7:46 ` [Qemu-devel] [PATCH 25/27] block/parallels: add prealloc-mode and prealloc-size open paramemets Denis V. Lunev
2015-04-28 10:59   ` Roman Kagan
2015-04-29 11:20     ` Roman Kagan
2015-05-18 16:32   ` Stefan Hajnoczi
2015-04-28  7:46 ` [Qemu-devel] [PATCH 26/27] block/parallels: optimize linear image expansion Denis V. Lunev
2015-04-28 11:00   ` Roman Kagan
2015-05-18 16:32   ` Stefan Hajnoczi
2015-04-28  7:47 ` [Qemu-devel] [PATCH 27/27] block/parallels: improve image writing performance further Denis V. Lunev
2015-05-18 16:33   ` Stefan Hajnoczi
2015-05-08 17:39 ` [Qemu-devel] [PATCH v4 0/27] write/create for Parallels images with reasonable performance Denis V. Lunev
2015-05-18  8:24 ` Denis V. Lunev
2015-05-18 16:45 ` Stefan Hajnoczi
2015-05-19  8:26   ` Kevin Wolf
  -- strict thread matches above, loose matches on Subject: below --
2015-03-11 10:27 [Qemu-devel] [PATCH v3 " Denis V. Lunev
2015-03-11 10:28 ` [Qemu-devel] [PATCH 06/27] block/parallels: provide _co_readv routine for parallels format driver Denis V. Lunev
2015-04-22 12:41   ` Stefan Hajnoczi
2015-04-22 12:43     ` Denis V. Lunev
2015-03-10  8:50 [Qemu-devel] [PATCH v3 0/27] write/create for Parallels images with reasonable performance Denis V. Lunev
2015-03-10  8:51 ` [Qemu-devel] [PATCH 06/27] block/parallels: provide _co_readv routine for parallels format driver Denis V. Lunev

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.