mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Dongli Zhang <dongli.zhang@oracle.com>
To: Juergen Gross <jgross@suse.com>,
	xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org
Cc: wei.liu2@citrix.com, boris.ostrovsky@oracle.com,
	ian.jackson@eu.citrix.com, srinivas.eeda@oracle.com
Subject: Re: [Xen-devel] [RFC 0/2] To introduce xenwatch multithreading (xen mtwatch)
Date: Sat, 7 Apr 2018 22:22:16 +0800	[thread overview]
Message-ID: <6754eb61-15c0-3eac-d509-b81a5957cb82@oracle.com> (raw)
In-Reply-To: <5c8c5c98-c16f-2df4-8582-90b5facc9f54@suse.com>

Hi Juergen,

On 04/07/2018 07:59 PM, Juergen Gross wrote:
> On 07/04/18 13:25, Dongli Zhang wrote:
>> This is to introduce "xenwatch multithreading" (or "multithreaded xenwatch",
>> abbreviated as 'mtwatch'). The implementation of xen mtwatch involves below
>> components:
>>
>> * dom0 linux kernel
>> * xen toolstack
>>
>> Here are what the RFC is going to discuss:
>>
>> - what is the problem
>> - what is the objective
>> - what is the solution
> 
> Instead of creating one thread per domU, wouldn't it make much more
> sense to use another mechanism, e.g. a workqueue, to deliver the
> watch events? This would be one central place, wouldn't need any
> changes in Xen tools or complex mechanisms to select the correct
> thread, save resources, and domUs would benefit, too.

I think the xenwatch events of the same domU are expected to be processed in
order. I do not think we are able to guarantee the events of same domU are
processed in order with a central workqueue (unless it is an ordered workqueue).

Suppose an event callback function is stalled, we expected all following events
belong to the same domU are delayed until there is workaround/solution to
unblock the stalled function.

For instance, as mentioned in below mailing list archive, once the NIC is reset,
all in-flight packets are flushed and the stalled callback function moves
forward and complete. As all events (especially the events belong to the same
domU) are still queued, the pv device backend can disconnect correctly and
successfully. With a central workqueue, the following events belong to the same
domU are already processed so that the pv device backend may not disconnect
successfully.

https://lists.xenproject.org/archives/html/xen-devel/2016-06/msg00195.html

Dongli Zhang

  reply	other threads:[~2018-04-07 14:22 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-07 11:25 Dongli Zhang
2018-04-07 11:25 ` [PATCH RFC linux 1/2] xenbus: introduce xenwatch multithreading to dom0 linux kernel Dongli Zhang
2018-04-07 11:25 ` [PATCH RFC xen 2/2] libxl: introduce xenwatch multithreading to xen toolstack Dongli Zhang
2018-04-07 11:59 ` [RFC 0/2] To introduce xenwatch multithreading (xen mtwatch) Juergen Gross
2018-04-07 14:22   ` Dongli Zhang [this message]
2018-04-23 14:09 ` Wei Liu
2018-04-23 23:55   ` [Xen-devel] " Dongli Zhang
2018-04-24  5:22     ` Juergen Gross
2018-04-24  5:52       ` Dongli Zhang
2018-04-24  6:03         ` Juergen Gross
2018-04-24  6:10           ` Dongli Zhang
2018-04-24  6:23             ` Juergen Gross

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=6754eb61-15c0-3eac-d509-b81a5957cb82@oracle.com \
    --to=dongli.zhang@oracle.com \
    --cc=boris.ostrovsky@oracle.com \
    --cc=ian.jackson@eu.citrix.com \
    --cc=jgross@suse.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=srinivas.eeda@oracle.com \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xenproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®