Re: [PATCH] Fix Issue: When VirtIO Backend providing VIRTIO_BLK_F_MQ feature, The file system of the front-end OS fails to be mounted.

2024-05-17 Thread Andrey Zhadchenko
Hi Thank you for the patch. vhost-blk didn't spark enough interest to be reviewed and merged into the upstream and the code is not present here. I have forwarded your patch to relevant openvz kernel mailing list. On 5/17/24 07:34, Lynch wrote: --- drivers/vhost/blk.c | 6 -- 1 file

[Devel] [PATCH VZ9] drivers/vhost/blk: increase max queues to 128

2024-02-19 Thread Andrey Zhadchenko
8 queues is too few, for example vhost-scsi have 128. Increase to 32 queues max, as we do not want to eat too much memory. As for performance, 32 queues will top around 3M iops, which should be fine for almost all cases https://virtuozzo.atlassian.net/browse/PSBM-152241 Signed-off-by: Andrey

[Devel] [PATCH VZ9 10/11] drivers/vhost: add ioctl to increase the number of workers

2024-01-04 Thread Andrey Zhadchenko
Finally add ioctl to allow userspace to create additional workers For now only allow to increase the number of workers https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko == Patchset description: vhost-blk: in-kernel accelerator for virtio-blk guests Although QEMU virtio

[Devel] [PATCH VZ9 03/11] vhost: add vhost_worker pointer to vhost_virtqueue

2024-01-04 Thread Andrey Zhadchenko
ris...@oracle.com> Signed-off-by: Michael S. Tsirkin - (cherry picked from ms commit 737bdb643c4f) https://virtuozzo.atlassian.net/browse/PSBM-152375 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/vhost.c | 25 +++-- drivers/vhost/vhost.h | 1 + 2 files chang

[Devel] [PATCH VZ9 11/11] drivers/vhost: vhost-blk accelerator for virtio-blk guests

2024-01-04 Thread Andrey Zhadchenko
| vhost-blk, 1vcpu | 110k | 113k | vhost-blk, 2vcpu | 247k | 252k | vhost-blk, 4vcpu | 558k | 556k | https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko == Patchset description: vhost-blk: in-kernel accelerator

[Devel] [PATCH VZ9 08/11] vhost: convert poll work to be vq based

2024-01-04 Thread Andrey Zhadchenko
polls/vqs we need to know the mappings. Signed-off-by: Mike Christie Message-Id: <20230626232307.97930-8-michael.chris...@oracle.com> Signed-off-by: Michael S. Tsirkin (cherry picked from ms commit 493b94bf5ae0) https://virtuozzo.atlassian.net/browse/PSBM-152375 Signed-off-by:

[Devel] [PATCH VZ9 05/11] vhost: take worker or vq instead of dev for queueing

2024-01-04 Thread Andrey Zhadchenko
the drivers are converted in the next patches. Signed-off-by: Mike Christie Message-Id: <20230626232307.97930-6-michael.chris...@oracle.com> Signed-off-by: Michael S. Tsirkin (cherry picked from ms commit 0921dddcb589) https://virtuozzo.atlassian.net/browse/PSBM-152375 Signed-off-by:

[Devel] [PATCH VZ9 06/11] vhost: take worker or vq for flushing

2024-01-04 Thread Andrey Zhadchenko
-by: Mike Christie Message-Id: <20230626232307.97930-7-michael.chris...@oracle.com> Signed-off-by: Michael S. Tsirkin (cherry picked from ms commit a6fc04739be7) https://virtuozzo.atlassian.net/browse/PSBM-152375 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/vhost.

[Devel] [PATCH VZ9 09/11] vhost: replace single worker pointer with xarray

2024-01-04 Thread Andrey Zhadchenko
ris...@oracle.com> Signed-off-by: Michael S. Tsirkin Also rework vhost_work_queue() to use any worker. We are not going to add patches that rework all its usages. (cherry picked from ms commit 1cdaafa1b8b4) https://virtuozzo.atlassian.net/browse/PSBM-152375 Signed-off-by: Andrey Zhad

[Devel] [PATCH VZ9 01/11] FD: vhost-blk: in-kernel accelerator for virtio-blk guests

2024-01-04 Thread Andrey Zhadchenko
From: Konstantin Khorenko https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Konstantin Khorenko Feature: vhost-blk: in-kernel accelerator for virtio-blk guests --- ...rnel_accelerator_for_virtio_blk_guests.rst | 85 +++ 1 file changed, 85 insertions(+) create mode 100644

[Devel] [PATCH VZ9 00/11] vhost-blk rebase

2024-01-04 Thread Andrey Zhadchenko
into new RHEL tree. This series cherry-picks the most of ms patches, except for the new worker managing API and vhost-net, scsi, etc. upgrades. We will wait till RH decide to merge them all. >From our old patchset we will use vhost-blk patch itself and API patch. Andrey Zhadchenko (3): driv

[Devel] [PATCH VZ9 04/11] vhost, vhost_net: add helper to check if vq has work

2024-01-04 Thread Andrey Zhadchenko
-by: Jason Wang Message-Id: <20230626232307.97930-5-michael.chris...@oracle.com> Signed-off-by: Michael S. Tsirkin - (cherry picked from ms commit 9784df151a60) https://virtuozzo.atlassian.net/browse/PSBM-152375 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/net.c | 2 +- drivers

[Devel] [PATCH VZ9 02/11] vhost: dynamically allocate vhost_worker

2024-01-04 Thread Andrey Zhadchenko
ed-off-by: Michael S. Tsirkin - Half of this commit is already present. Add the rest. (cherry picked from ms commit c011bb669ddc) https://virtuozzo.atlassian.net/browse/PSBM-152375 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/vhost.c | 20 drivers/vhost/vhost.h | 2

[Devel] [PATCH VZ9 07/11] drivers/vhost: attach cgrous to specififc worker

2024-01-04 Thread Andrey Zhadchenko
Update vhost_attach_cgroups() to operate with specific worker rather than global vhost device functions https://virtuozzo.atlassian.net/browse/PSBM-152375 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/vhost.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git

[Devel] [PATCH RH9 v3 4/8] dm/dm-qcow2: add calc_front_qio_bytes() helper

2023-09-05 Thread Andrey Zhadchenko
Move code that calculates qio front bytes type and amount into a new helper. Increase code clarity. This will be used later for llseek_hole() Feature: dm: implement SEEK_HOLE for dm-qcow2 and dm-ploop https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- v3: reworked

[Devel] [PATCH RH9 v3 6/8] dm/dm-ploop: reinforce some defines

2023-09-05 Thread Andrey Zhadchenko
Add braces around arguments so callers can use equations while calling these macros. Feature: dm: implement SEEK_HOLE for dm-qcow2 and dm-ploop https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- drivers/md/dm-ploop.h | 8 1 file changed, 4 insertions(+), 4

[Devel] [PATCH RH9 v3 3/8] dm/push_backup: add llseek_hole proxy

2023-09-05 Thread Andrey Zhadchenko
push_backup dm module llseek_hole() should just call the same function from it's origin bdev Feature: dm: implement SEEK_HOLE for dm-qcow2 and dm-ploop https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- drivers/md/dm-push-backup.c | 12 1 file changed

[Devel] [PATCH RH9 v3 7/8] dm/dm-ploop: allow to check if cluster is locked

2023-09-05 Thread Andrey Zhadchenko
When looking for SEEK_HOLE, we would like to check if cluster is locked without valid pio Feature: dm: implement SEEK_HOLE for dm-qcow2 and dm-ploop https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- drivers/md/dm-ploop-map.c | 2 +- 1 file changed, 1 insertion(+), 1

[Devel] [PATCH RH9 v3 1/8] block/fops: add llseek_hole to blockdevops

2023-09-05 Thread Andrey Zhadchenko
Add new function for block_device_operations, which will be used for SEEK_HOLE and SEEK_DATA llseek calls Feature: dm: implement SEEK_HOLE for dm-qcow2 and dm-ploop https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- v2: fix critical bug: do not (SEEK_HOLE | SEEK_DATA

[Devel] [PATCH RH9 v3 8/8] dm/dm-ploop: add llseek_hole

2023-09-05 Thread Andrey Zhadchenko
Implement find_hole() for dm-ploop target. Iterate over clusters until we find hole or data by using ploop_bat_entries() which will do all our work Feature: dm: implement SEEK_HOLE for dm-qcow2 and dm-ploop https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- v3

[Devel] [PATCH RH9 v3 5/8] dm/dm-qcow2: add llseek_hole

2023-09-05 Thread Andrey Zhadchenko
-by: Andrey Zhadchenko --- v2 major rework: - move some code to new functions - alloc seek qios dynamically - handle chaining images with more care - do not skip L2 if backing image exists v3: remove edge case handling as it is now done by generic blockdev helper drivers/md/dm-qcow2-map.c| 247

[Devel] [PATCH RH9 v3 0/8] allow to seek holes in block devices

2023-09-05 Thread Andrey Zhadchenko
SEEK_HOLE for dm-qcow2 and dm-ploop v2: - s/find_hole/llseek_hole/ - add new patch with calc_front_qio_bytes() helper - rework dm-qcow2 llseek_hole function v3: - add new helper blkdev_llseek_wrapper() to cover common edge cases - rework calc_front_qio_bytes() to increase clarity Andrey

[Devel] [PATCH RH9 v3 2/8] dm: add llseek_hole infrastructure

2023-09-05 Thread Andrey Zhadchenko
Add new function to target_type, so any dm devices may realize it Implement intermediate llseek_hole() on device-mapper layer, do some simple checks. Feature: dm: implement SEEK_HOLE for dm-qcow2 and dm-ploop https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- v2: fix

Re: [Devel] [PATCH RH9 v2 5/8] dm/dm-qcow2: add llseek_hole

2023-08-21 Thread Andrey Zhadchenko
On 8/21/23 19:20, Alexander Atanasov wrote: On 16.08.23 12:32, Andrey Zhadchenko wrote: Implement llseek_hole() for dm-qcow2 target. Iterate over ranges with cluster granularity until hole or data is found. To reduce code duplication, we should use already existing parse_metadata() We can

Re: [Devel] [PATCH RH9 v2 2/8] dm: add llseek_hole infrastructure

2023-08-21 Thread Andrey Zhadchenko
On 8/21/23 14:07, Alexander Atanasov wrote: On 16.08.23 12:32, Andrey Zhadchenko wrote: Add new function to target_type, so any dm devices may realize it Implement intermediate llseek_hole() on device-mapper layer, do some simple checks. Feature: dm: implement SEEK_HOLE for dm-qcow2 and dm

[Devel] [PATCH RH9 v2 1/8] block/fops: add llseek_hole to blockdevops

2023-08-16 Thread Andrey Zhadchenko
Add new function for block_device_operations, which will be used for SEEK_HOLE and SEEK_DATA llseek calls Feature: dm: implement SEEK_HOLE for dm-qcow2 and dm-ploop https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- v2: fix critical bug: do not (SEEK_HOLE | SEEK_DATA

[Devel] [PATCH RH9 v2 3/8] dm/push_backup: add llseek_hole proxy

2023-08-16 Thread Andrey Zhadchenko
push_backup dm module llseek_hole() should just call the same function from it's origin bdev Feature: dm: implement SEEK_HOLE for dm-qcow2 and dm-ploop https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- drivers/md/dm-push-backup.c | 12 1 file changed

[Devel] [PATCH RH9 v2 7/8] dm/dm-ploop: allow to check if cluster is locked

2023-08-16 Thread Andrey Zhadchenko
When looking for SEEK_HOLE, we would like to check if cluster is locked without valid pio Feature: dm: implement SEEK_HOLE for dm-qcow2 and dm-ploop https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- drivers/md/dm-ploop-map.c | 2 +- 1 file changed, 1 insertion(+), 1

[Devel] [PATCH RH9 v2 4/8] dm/dm-qcow2: add calc_front_qio_bytes() helper

2023-08-16 Thread Andrey Zhadchenko
Move code that calculates qio front bytes type and amount into a new helper. It will be used later for llseek_hole() Feature: dm: implement SEEK_HOLE for dm-qcow2 and dm-ploop https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- drivers/md/dm-qcow2-map.c | 46

[Devel] [PATCH RH9 v2 6/8] dm/dm-ploop: reinforce some defines

2023-08-16 Thread Andrey Zhadchenko
Add braces around arguments so callers can use equations while calling these macros. Feature: dm: implement SEEK_HOLE for dm-qcow2 and dm-ploop https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- drivers/md/dm-ploop.h | 8 1 file changed, 4 insertions(+), 4

[Devel] [PATCH RH9 v2 5/8] dm/dm-qcow2: add llseek_hole

2023-08-16 Thread Andrey Zhadchenko
-by: Andrey Zhadchenko --- v2 major rework: - move some code to new functions - alloc seek qios dynamically - handle chaining images with more care - do not skip L2 if backing image exists drivers/md/dm-qcow2-map.c| 257 +++ drivers/md/dm-qcow2-target.c | 1

[Devel] [PATCH RH9 v2 2/8] dm: add llseek_hole infrastructure

2023-08-16 Thread Andrey Zhadchenko
Add new function to target_type, so any dm devices may realize it Implement intermediate llseek_hole() on device-mapper layer, do some simple checks. Feature: dm: implement SEEK_HOLE for dm-qcow2 and dm-ploop https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- v2: fix

[Devel] [PATCH RH9 v2 8/8] dm/dm-ploop: add llseek_hole

2023-08-16 Thread Andrey Zhadchenko
Implement find_hole() for dm-ploop target. Iterate over clusters until we find hole or data by using ploop_bat_entries() which will do all our work Feature: dm: implement SEEK_HOLE for dm-qcow2 and dm-ploop https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- drivers

[Devel] [PATCH RH9 v2 0/8] allow to seek holes in block devices

2023-08-16 Thread Andrey Zhadchenko
SEEK_HOLE for dm-qcow2 and dm-ploop v2: - s/find_hole/llseek_hole/ - add new patch with calc_front_qio_bytes() helper - rework dm-qcow2 llseek_hole function Andrey Zhadchenko (8): block/fops: add llseek_hole to blockdevops dm: add llseek_hole infrastructure dm/push_backup: add llseek_hole

Re: [Devel] [PATCH RH9 4/7] dm/dm-qcow2: add find_hole

2023-08-09 Thread Andrey Zhadchenko
Hi! Sorry for not answering for so late On 7/24/23 15:54, Alexander Atanasov wrote: On 24.07.23 15:57, Andrey Zhadchenko wrote: On 7/24/23 14:20, Alexander Atanasov wrote: On 24.07.23 11:03, Konstantin Khorenko wrote: Implement find_hole() for dm-qcow2 target. Iterate over ranges

Re: [Devel] [PATCH RH9 4/7] dm/dm-qcow2: add find_hole

2023-07-24 Thread Andrey Zhadchenko
/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko ---   drivers/md/dm-qcow2-map.c    | 140 +++   drivers/md/dm-qcow2-target.c |   1 +   drivers/md/dm-qcow2.h    |   2 +   3 files changed, 143 insertions(+) diff --git a/drivers/md/dm-qcow2-map.c b/drivers/md/dm

[Devel] [PATCH RH9 3/7] dm/push_backup: add seek proxy

2023-07-24 Thread Andrey Zhadchenko
Push backup dm module find_hole() should just call same function from it's origin bdev https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- drivers/md/dm-push-backup.c | 12 1 file changed, 12 insertions(+) diff --git a/drivers/md/dm-push-backup.c b

[Devel] [PATCH RH9 1/7] block/fops: add find_hole to blockdevops

2023-07-24 Thread Andrey Zhadchenko
Add new function for block_device_operations, which will be used for SEEK_HOLE and SEEK_DATA llseek calls https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- block/fops.c | 11 +++ include/linux/blkdev.h | 1 + 2 files changed, 12 insertions

[Devel] [PATCH RH9 7/7] dm/dm-ploop: add find_hole

2023-07-24 Thread Andrey Zhadchenko
Just iterate over clusters one-by-one calling ploop_bat_entries(), which will do all our work https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- drivers/md/dm-ploop-map.c| 50 drivers/md/dm-ploop-target.c | 1 + drivers/md/dm

[Devel] [PATCH RH9 6/7] dm/dm-ploop: allow to check if cluster is locked

2023-07-24 Thread Andrey Zhadchenko
We want to check if cluster is locked without valid pio when seeking holes https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- drivers/md/dm-ploop-map.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/md/dm-ploop-map.c b/drivers/md/dm-ploop

[Devel] [PATCH RH9 4/7] dm/dm-qcow2: add find_hole

2023-07-24 Thread Andrey Zhadchenko
in our favor. Since parse_metadata() support request postponing (for example when the requested L2 cluster is absent in RAM), we should create separate qio list for our queries. https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- drivers/md/dm-qcow2-map.c| 140

[Devel] [PATCH RH9 5/7] dm/dm-ploop: reinforce some defines

2023-07-24 Thread Andrey Zhadchenko
Add braces around arguments so callers can use equations while calling these macro. https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- drivers/md/dm-ploop.h | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/md/dm-ploop.h b/drivers/md

[Devel] [PATCH RH9 2/7] dm: add find_hole infrastructure

2023-07-24 Thread Andrey Zhadchenko
Implement intermediate find_hole() on device-mapper layer. Do some simple checks, add new function to target_type, so any dm devices may realize it https://jira.vzint.dev/browse/PSBM-145746 Signed-off-by: Andrey Zhadchenko --- drivers/md/dm.c | 39

[Devel] [PATCH RH9 0/7] allow to seek holes is block devices

2023-07-24 Thread Andrey Zhadchenko
We need to be able to know if and where the image is sparse during backups. Implement blockdev and dm infrastructure, add an ability to find holes for dm-qcow2, dm-ploop, dm-push-backup After this patches llseek with SEEK_HOLES and SEEK_DATA can be used with block devices Andrey Zhadchenko (7

Re: [Devel] [PATCH RH9 0/4] net/openvswitch: pull ms API

2023-04-27 Thread Andrey Zhadchenko
, Andrey Zhadchenko wrote: Revert our patch for openvswitch, apply the ones that got accepted into mainstream: https://lore.kernel.org/all/20220825020450.664147-1-andrey.zhadche...@virtuozzo.com/ Andrey Zhadchenko (4):    Revert "net: openvswitch: add capability to specify ifindex o

[Devel] [PATCH RH9 2/4] openvswitch: fix memory leak at failed datapath creation

2023-04-25 Thread Andrey Zhadchenko
12dacf7d>] ___sys_sendmsg+0x88/0xd0 [<11776020>] __sys_sendmsg+0x59/0xa0 [<2e8f2dc1>] do_syscall_64+0x3b/0x90 [<3243e7cb>] entry_SYSCALL_64_after_hwframe+0x63/0xcd Fixes: b83d23a2a38b ("openvswitch: Introduce per-cpu upcall dispatch&qu

[Devel] [PATCH RH9 0/4] net/openvswitch: pull ms API

2023-04-25 Thread Andrey Zhadchenko
Revert our patch for openvswitch, apply the ones that got accepted into mainstream: https://lore.kernel.org/all/20220825020450.664147-1-andrey.zhadche...@virtuozzo.com/ Andrey Zhadchenko (4): Revert "net: openvswitch: add capability to specify ifindex of new links" openvswitch:

[Devel] [PATCH RH9 3/4] openvswitch: allow specifying ifindex of new interfaces

2023-04-25 Thread Andrey Zhadchenko
OVS_VPORT_CMD_NEW to specify new netdev ifindex. Signed-off-by: Andrey Zhadchenko Acked-by: Christian Brauner (Microsoft) Signed-off-by: Jakub Kicinski (cherry picked from ms commit 54c4ef34c4b6f9720fded620e2893894f9f2c554) Signed-off-by: Andrey Zhadchenko --- include/uapi/linux/openvswitch.h

[Devel] [PATCH RH9 4/4] openvswitch: add OVS_DP_ATTR_PER_CPU_PIDS to get requests

2023-04-25 Thread Andrey Zhadchenko
CRIU needs OVS_DP_ATTR_PER_CPU_PIDS to checkpoint/restore newest openvswitch versions. Add pids to generic datapath reply. Limit exported pids amount to nr_cpu_ids. Signed-off-by: Andrey Zhadchenko Acked-by: Christian Brauner (Microsoft) Signed-off-by: Jakub Kicinski (cherry picked from ms

[Devel] [PATCH RH9 1/4] Revert "net: openvswitch: add capability to specify ifindex of new links"

2023-04-25 Thread Andrey Zhadchenko
This reverts commit 757ebade1eec8c6a3d1a150c8bd6f564c939c058. We should use the version upstream accepted https://jira.vzint.dev/browse/PSBM-105844 Signed-off-by: Andrey Zhadchenko --- net/openvswitch/datapath.c | 16 ++-- net/openvswitch/vport-internal_dev.c | 1 - net

[Devel] [PATCH vz9] dm/push_backup: allow to stop push_backup at any time

2023-02-13 Thread Andrey Zhadchenko
yscall. Signed-off-by: Andrey Zhadchenko --- drivers/md/dm-push-backup.c | 13 +++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/drivers/md/dm-push-backup.c b/drivers/md/dm-push-backup.c index 1500d0681cee..bd021560a3e9 100644 --- a/drivers/md/dm-push-backup.c +++ b/drivers

[Devel] [PATCH RH9 v5 10/10] drivers/vhost: queue vhost_blk works at vq workers

2022-11-11 Thread Andrey Zhadchenko
workers | 903k | 779k | https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/blk.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/vhost/blk.c b/drivers/vhost/blk.c index ce1c8ac27688..44fbf253e773 100644

[Devel] [PATCH RH9 v5 09/10] drivers/vhost: allow polls to be bound to workers via vqs

2022-11-11 Thread Andrey Zhadchenko
Allow vhost polls to be associated with vqs so we can queue them on assigned workers. If polls are not associated with specific vqs queue them on the first worker. https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/vhost.c | 24

[Devel] [PATCH RH9 v5 07/10] drivers/vhost: assign workers to virtqueues

2022-11-11 Thread Andrey Zhadchenko
Add worker pointer to every virtqueue. Add routine to assing workers to virtqueues and call it after any worker creation https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- v4: Set vq->worker = NULL in vhost_vq_reset. This will fix both https://jira.sw.ru/browse/P

[Devel] [PATCH RH9 v5 03/10] drivers/vhost: adjust vhost to flush all workers

2022-11-11 Thread Andrey Zhadchenko
Make vhost_work_dev_flush support several workers and flush them simultaneously https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- v2: - don't bother with checking dev->workers[0].worker since dev->nworkers will always contain 0 in this case drivers/vhost/vhost.

[Devel] [PATCH RH9 v5 02/10] drivers/vhost: use array to store workers

2022-11-11 Thread Andrey Zhadchenko
We want to support several vhost workers. The first step is to rework vhost to use array of workers rather than single pointer. Update creation and cleanup routines. https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- v3: set vq->worker to NULL in vhost_vq_re

[Devel] [PATCH RH9 v5 01/10] drivers/vhost: vhost-blk accelerator for virtio-blk guests

2022-11-11 Thread Andrey Zhadchenko
| vhost-blk, 1vcpu | 110k | 113k | vhost-blk, 2vcpu | 247k | 252k | vhost-blk, 4vcpu | 558k | 556k | https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- v2: - removed unused VHOST_BLK_VQ - reworked bio handling

[Devel] [PATCH RH9 v5 06/10] drivers/vhost: add ioctl to increase the number of workers

2022-11-11 Thread Andrey Zhadchenko
Finally add ioctl to allow userspace to create additional workers For now only allow to increase the number of workers https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- v2: - Make code do what docs suggest. Previously ioctl-supplied new number of workers were treated

[Devel] [PATCH RH9 v5 08/10] drivers/vhost: add API to queue work at virtqueue worker

2022-11-11 Thread Andrey Zhadchenko
Add routines to queue works on virtqueue assigned workers https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/vhost.c | 22 ++ drivers/vhost/vhost.h | 5 + 2 files changed, 27 insertions(+) diff --git a/drivers/vhost/vhost.c b

[Devel] [PATCH RH9 v5 00/10] vhost-blk: in-kernel accelerator for virtio-blk guests

2022-11-11 Thread Andrey Zhadchenko
;worker = NULL to patch #7 where this field is introduced. patch 7/10 - Set vq->worker = NULL in vhost_vq_reset. This will fix both https://jira.sw.ru/browse/PSBM-142058 https://jira.sw.ru/browse/PSBM-142852 v5: patch 1/10 - several codestyle/spacing fixes - added WARN_ON() for vhost_blk_flush

Re: [Devel] [PATCH RH9 v4 01/10] drivers/vhost: vhost-blk accelerator for virtio-blk guests

2022-11-04 Thread Andrey Zhadchenko
Cool, thanks! От: Pavel Tikhomirov Отправлено: 4 ноября 2022 г. 15:56 Кому: Andrey Zhadchenko Копия: devel@openvz.org ; Konstantin Khorenko Тема: Re: [PATCH RH9 v4 01/10] drivers/vhost: vhost-blk accelerator for virtio-blk guests On 04.11.2022 15:28, Andrey

Re: [Devel] [PATCH RH9 v4 01/10] drivers/vhost: vhost-blk accelerator for virtio-blk guests

2022-11-04 Thread Andrey Zhadchenko
On 11/4/22 14:31, Pavel Tikhomirov wrote: On 01.11.2022 10:25, Andrey Zhadchenko wrote: +/* It is forbidden to call more than one vhost_blk_flush() simultaneously */ +static void vhost_blk_flush(struct vhost_blk *blk) +{ +    int flush_bin; + +    spin_lock(>flush_lock); +   

[Devel] [PATCH RH9 v4 05/10] drivers/vhost: rework worker creation

2022-11-01 Thread Andrey Zhadchenko
Add function to create a vhost worker and add it into the device. Rework vhost_dev_set_owner https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/vhost.c | 68 +-- 1 file changed, 40 insertions(+), 28 deletions(-) diff

[Devel] [PATCH RH9 v4 03/10] drivers/vhost: adjust vhost to flush all workers

2022-11-01 Thread Andrey Zhadchenko
Make vhost_work_dev_flush support several workers and flush them simultaneously https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- v2: - don't bother with checking dev->workers[0].worker since dev->nworkers will always contain 0 in this case drivers/vhost/vhost.

[Devel] [PATCH RH9 v4 10/10] drivers/vhost: queue vhost_blk works at vq workers

2022-11-01 Thread Andrey Zhadchenko
workers | 803k | 779k | https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/blk.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/vhost/blk.c b/drivers/vhost/blk.c index 7a29e65d57d1..dce339a8220f 100644

[Devel] [PATCH RH9 v4 08/10] drivers/vhost: add API to queue work at virtqueue worker

2022-11-01 Thread Andrey Zhadchenko
Add routines to queue works on virtqueue assigned workers https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/vhost.c | 22 ++ drivers/vhost/vhost.h | 5 + 2 files changed, 27 insertions(+) diff --git a/drivers/vhost/vhost.c b

[Devel] [PATCH RH9 v4 01/10] drivers/vhost: vhost-blk accelerator for virtio-blk guests

2022-11-01 Thread Andrey Zhadchenko
| vhost-blk, 1vcpu | 110k | 113k | vhost-blk, 2vcpu | 247k | 252k | vhost-blk, 4vcpu | 558k | 556k | https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- v2: - removed unused VHOST_BLK_VQ - reworked bio handling

[Devel] [PATCH RH9 v4 04/10] drivers/vhost: rework attaching cgroups to be worker aware

2022-11-01 Thread Andrey Zhadchenko
Rework vhost_attach_cgroups to manipulate specified worker. Implement vhost_worker_flush as we need to flush specific worker. https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/vhost.c | 18 ++ 1 file changed, 14 insertions(+), 4 deletions

[Devel] [PATCH RH9 v4 07/10] drivers/vhost: assign workers to virtqueues

2022-11-01 Thread Andrey Zhadchenko
Add worker pointer to every virtqueue. Add routine to assing workers to virtqueues and call it after any worker creation https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- v4: Set vq->worker = NULL in vhost_vq_reset. This will fix both https://jira.sw.ru/browse/P

[Devel] [PATCH RH9 v4 06/10] drivers/vhost: add ioctl to increase the number of workers

2022-11-01 Thread Andrey Zhadchenko
Finally add ioctl to allow userspace to create additional workers For now only allow to increase the number of workers https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- v2: - Make code do what docs suggest. Previously ioctl-supplied new number of workers were treated

[Devel] [PATCH RH9 v4 02/10] drivers/vhost: use array to store workers

2022-11-01 Thread Andrey Zhadchenko
We want to support several vhost workers. The first step is to rework vhost to use array of workers rather than single pointer. Update creation and cleanup routines. https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- v3: set vq->worker to NULL in vhost_vq_re

[Devel] [PATCH RH9 v4 09/10] drivers/vhost: allow polls to be bound to workers via vqs

2022-11-01 Thread Andrey Zhadchenko
Allow vhost polls to be associated with vqs so we can queue them on assigned workers. If polls are not associated with specific vqs queue them on the first worker. https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/vhost.c | 24

[Devel] [PATCH RH9 v4 00/10] vhost-blk: in-kernel accelerator for virtio-blk guests

2022-11-01 Thread Andrey Zhadchenko
;worker = NULL to patch #7 where this field is introduced. patch 7/10 - Set vq->worker = NULL in vhost_vq_reset. This will fix both https://jira.sw.ru/browse/PSBM-142058 https://jira.sw.ru/browse/PSBM-142852 Andrey Zhadchenko (10): drivers/vhost: vhost-blk accelerator for virtio-blk guests

Re: [Devel] [PATCH RH9 v3 01/10] drivers/vhost: vhost-blk accelerator for virtio-blk guests

2022-10-31 Thread Andrey Zhadchenko
On 10/13/22 19:17, Pavel Tikhomirov wrote: On 10.10.2022 17:56, Andrey Zhadchenko wrote: Although QEMU virtio is quite fast, there is still some room for improvements. Disk latency can be reduced if we handle virito-blk requests in host kernel istead of passing them to QEMU. The patch

Re: [Devel] [PATCH RH9 v3 01/10] drivers/vhost: vhost-blk accelerator for virtio-blk guests

2022-10-27 Thread Andrey Zhadchenko
On 10/13/22 19:09, Pavel Tikhomirov wrote: On 10.10.2022 17:56, Andrey Zhadchenko wrote: Although QEMU virtio is quite fast, there is still some room for improvements. Disk latency can be reduced if we handle virito-blk requests in host kernel istead of passing them to QEMU. The patch

[Devel] [PATCH RH9 v3 10/10] drivers/vhost: queue vhost_blk works at vq workers

2022-10-10 Thread Andrey Zhadchenko
workers | 730k | 701k | https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/blk.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/vhost/blk.c b/drivers/vhost/blk.c index 933c9c50b0a6..6aa87c22c4df 100644

[Devel] [PATCH RH9 v3 01/10] drivers/vhost: vhost-blk accelerator for virtio-blk guests

2022-10-10 Thread Andrey Zhadchenko
, 2vcpu | 247k | 252k | vhost-blk, 4vcpu | 576k | 567k | https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- v2: - removed unused VHOST_BLK_VQ - reworked bio handling a bit: now add all pages from signle iov into single bio istead

[Devel] [PATCH RH9 v3 04/10] drivers/vhost: rework attaching cgroups to be worker aware

2022-10-10 Thread Andrey Zhadchenko
Rework vhost_attach_cgroups to manipulate specified worker. Implement vhost_worker_flush as we need to flush specific worker. https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/vhost.c | 18 ++ 1 file changed, 14 insertions(+), 4 deletions

[Devel] [PATCH RH9 v3 08/10] drivers/vhost: add API to queue work at virtqueue worker

2022-10-10 Thread Andrey Zhadchenko
Add routines to queue works on virtqueue assigned workers https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/vhost.c | 22 ++ drivers/vhost/vhost.h | 5 + 2 files changed, 27 insertions(+) diff --git a/drivers/vhost/vhost.c b

[Devel] [PATCH RH9 v3 09/10] drivers/vhost: allow polls to be bound to workers via vqs

2022-10-10 Thread Andrey Zhadchenko
Allow vhost polls to be associated with vqs so we can queue them on assigned workers. If polls are not associated with specific vqs queue them on the first worker. https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/vhost.c | 24

[Devel] [PATCH RH9 v3 06/10] drivers/vhost: add ioctl to increase the number of workers

2022-10-10 Thread Andrey Zhadchenko
Finally add ioctl to allow userspace to create additional workers For now only allow to increase the number of workers https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- v2: - Make code do what docs suggest. Previously ioctl-supplied new number of workers were treated

[Devel] [PATCH RH9 v3 03/10] drivers/vhost: adjust vhost to flush all workers

2022-10-10 Thread Andrey Zhadchenko
Make vhost_work_dev_flush support several workers and flush them simultaneously https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- v2: - don't bother with checking dev->workers[0].worker since dev->nworkers will always contain 0 in this case drivers/vhost/vhost.

[Devel] [PATCH RH9 v3 00/10] vhost-blk: in-kernel accelerator for virtio-blk guests

2022-10-10 Thread Andrey Zhadchenko
- now create new only if the previous is full patch 2/10 - set vq->worker = NULL in vhost_vq_reset() https://jira.sw.ru/browse/PSBM-139414 Andrey Zhadchenko (10): drivers/vhost: vhost-blk accelerator for virtio-blk guests drivers/vhost: use array to store workers drivers/vhost: adj

[Devel] [PATCH RH9 v3 07/10] drivers/vhost: assign workers to virtqueues

2022-10-10 Thread Andrey Zhadchenko
Add worker pointer to every virtqueue. Add routine to assing workers to virtqueues and call it after any worker creation https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/vhost.c | 13 + drivers/vhost/vhost.h | 2 ++ 2 files changed, 15

[Devel] [PATCH RH9 v3 05/10] drivers/vhost: rework worker creation

2022-10-10 Thread Andrey Zhadchenko
Add function to create a vhost worker and add it into the device. Rework vhost_dev_set_owner https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/vhost.c | 68 +-- 1 file changed, 40 insertions(+), 28 deletions(-) diff

[Devel] [PATCH RH9 v3 02/10] drivers/vhost: use array to store workers

2022-10-10 Thread Andrey Zhadchenko
We want to support several vhost workers. The first step is to rework vhost to use array of workers rather than single pointer. Update creation and cleanup routines. https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- v3: set vq->worker to NULL in vhost_vq_re

[Devel] [PATCH RH9 06/10] drivers/vhost: add ioctl to increase the number of workers

2022-08-16 Thread Andrey Zhadchenko
Finally add ioctl to allow userspace to create additional workers For now only allow to increase the number of workers https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/vhost.c | 31 ++- include/uapi/linux/vhost.h | 9

[Devel] [PATCH RH9 05/10] drivers/vhost: rework worker creation

2022-08-16 Thread Andrey Zhadchenko
Add function to create a vhost worker and add it into the device. Rework vhost_dev_set_owner https://jira.sw.ru/browse/PSBM-139414 Signed-off-by: Andrey Zhadchenko --- drivers/vhost/vhost.c | 68 +-- 1 file changed, 40 insertions(+), 28 deletions(-) diff

[Devel] [PATCH RH9 21/28] mm/vmscan: add cond_resched() to loop in shrink_slab_memcg()

2021-10-14 Thread Andrey Zhadchenko
picked from vz7 commit c2ccf83304f1 ("mm/vmscan: add cond_resched() to loop in shrink_slab_memcg()")) Signed-off-by: Andrey Zhadchenko (cherry picked from vz8 commit 5af0061feb0f264d1ad23580f5febe0bd10a154d) Signed-off-by: Andrey Zhadchenko --- mm/vmscan.c | 2 ++ 1 file changed, 2

[Devel] [PATCH RH9 01/28] ve/mount: allow pseudosuper to temporary exceed the container limit

2021-10-14 Thread Andrey Zhadchenko
se part https://jira.sw.ru/browse/PSBM-127837 Signed-off-by: Alexander Mikhalitsyn (cherry picked from vz8 commit 454d3b6b7b79d76ce785d21d2c95d2efc173eddc) Signed-off-by: Andrey Zhadchenko --- fs/namespace.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/namespace.c b/fs/name

[Devel] [PATCH RH9 25/28] ve/time/ntp: allow CT ntp adjustment time tuning under VE_FEATURE_TIME feature

2021-10-14 Thread Andrey Zhadchenko
commit dee0301a8848 ("ve/time/ntp: allow CT ntp adjustment time tuning under VE_FEATURE_TIME feature")) Signed-off-by: Pavel Tikhomirov (cherry picked from vz8 commit d0bba429c03cf20e4e344b12b8dd1c8d298b4575) Signed-off-by: Andrey Zhadchenko --- kernel/time/timekeeping.c | 9 ++--- 1 fi

[Devel] [PATCH RH9 12/28] ve/meminfo: show "MemAvailable: ..." line in CT's meminfo

2021-10-14 Thread Andrey Zhadchenko
50cef4107c11 ("ve/meminfo: show "MemAvailable: ..." line in CT's meminfo")) Signed-off-by: Andrey Zhadchenko (cherry picked from vz8 commit f8e40396e7e0a9d6053d41941d7e8bb28bbd36c1) Signed-off-by: Andrey Zhadchenko --- fs/proc/meminfo.c| 1 + include/linux/virtinfo.h |

[Devel] [PATCH RH9 06/28] kvm/x86: extend info on emualation failure

2021-10-14 Thread Andrey Zhadchenko
xtend info on emualation failure")) https://jira.sw.ru/browse/PSBM-127849 Signed-off-by: Valeriy Vdovin (cherry picked from vz8 commit 5a3089e978c6274806deb2b775ce3b71c7f720f7) Signed-off-by: Andrey Zhadchenko --- arch/x86/kvm/x86.c | 22 +++--- 1 file changed, 15 insert

[Devel] [PATCH RH9 20/28] ve/cpu: handle sysfs attributes for CTs

2021-10-14 Thread Andrey Zhadchenko
} entries inside Container 2) to show only limited number of /sys/devices/system/cpu/cpuX directories inside Containers depending on $CPUS CT settings. (cherry picked from vz7 commit 11a5446266aa ("ve/cpu: handle sysfs attributes for CTs")) Signed-off-by: Andrey Zhadchenko (cherry picke

[Devel] [PATCH RH9 16/28] pid_ns: Virtualize pid_max

2021-10-14 Thread Andrey Zhadchenko
/browse/PSBM-127857 Signed-off-by: Valeriy Vdovin (cherry picked from vz8 commit c3299968d4753f7fdf13a792d04795605951c533) Signed-off-by: Andrey Zhadchenko --- include/linux/pid_namespace.h | 1 + include/linux/threads.h | 1 + kernel/pid.c | 2 +- kernel/pid_namespace.c

[Devel] [PATCH RH9 11/28] fs: Export symbols replace_fd() and create_pipe_files()

2021-10-14 Thread Andrey Zhadchenko
://pmc.acronis.com/browse/VSTOR-10187 Signed-off-by: Sergey Lysanov (cherry-picked from vz7 commit a65a2e655b78 ("fs: Export symbols replace_fd() and create_pipe_files()")) Signed-off-by: Andrey Zhadchenko (cherry picked from vz8 commit 63148b36d11de4e546b163948cb32279516b789a) Signed-off-

[Devel] [PATCH RH9 05/28] kvm/x86: add log printing on emulation failure

2021-10-14 Thread Andrey Zhadchenko
(cherry-picked from vz7 commit 47d875ee2284 ("kvm/x86: add log printing on emulation failure")) https://jira.sw.ru/browse/PSBM-127849 Signed-off-by: Valeriy Vdovin (cherry picked from vz8 commit e3aa92a51c1dd901cd06ccd70eff7cce0ba3b6c8) Signed-off-by: Andrey Zhadchenko --- arc

[Devel] [PATCH RH9 23/28] ve/capability: introduce capable() wrapper which honors CT features

2021-10-14 Thread Andrey Zhadchenko
ot;ve/capability: introduce capable() wrapper which honors CT features")) Signed-off-by: Pavel Tikhomirov (cherry picked from vz8 commit 0c6787703b466480564e5b841c1a28c35f376218) Signed-off-by: Andrey Zhadchenko --- include/linux/capability.h | 1 + kernel/capability.c| 12 +

[Devel] [PATCH RH9 26/28] scsi: aacraid: resurrect correct arc ctrl checks for Series-6

2021-10-14 Thread Andrey Zhadchenko
ef57cd4ac62e) Signed-off-by: Andrey Zhadchenko --- drivers/scsi/aacraid/aacraid.h | 11 --- drivers/scsi/aacraid/comminit.c | 14 ++ drivers/scsi/aacraid/commsup.c | 4 +++- drivers/scsi/aacraid/linit.c| 7 +-- 4 files changed, 18 insertions(+), 18 deletions(-)

[Devel] [PATCH RH9 15/28] DMA-API: exceeded 7 overlapping mappings of cacheline share

2021-10-14 Thread Andrey Zhadchenko
eb9c64c3e00d ("DMA-API: exceeded 7 overlapping mappings of cacheline share")) Signed-off-by: Pavel Tikhomirov (cherry picked from vz8 commit a60ed8dff6132704c3fdbbf3d97b4de9be58c0eb) Signed-off-by: Andrey Zhadchenko --- kernel/dma/debug.c | 5 - 1 file changed, 4 insertions(+), 1 dele

  1   2   3   4   >