[<prev] [next>] [day] [month] [year] [list]
Message-ID: <CAJSP0QXEJeaWgDrGXYAUu0W6skwO10Nhtfx9yaVxd9shAq1OLQ@mail.gmail.com>
Date: Sun, 25 Mar 2012 17:18:28 +0100
From: Stefan Hajnoczi <stefanha@...il.com>
To: Steve Glass <stevie.glass@...il.com>
Subject: Re: vhost question
On Sun, Mar 25, 2012 at 1:29 PM, Steve Glass <stevie.glass@...il.com> wrote:
> On 22 March 2012 19:52, Stefan Hajnoczi <stefanha@...il.com> wrote:
>>
>>
>> Can you queue a tx->rx kick on the vhost work queue with
>> vhost_work_queue()?
>>
>> Stefan
>
>
> I've been looking at this and trying to work out how to achieve that. I can
> see how I can enqueue some work on the vhost queue but the rx_handler needs
> to run in the process context of the receiving VM (or else it can't access
> the ring). I don't think that's true of the work queue (doesn't it run with
> the qemu process context?)
The vhost worker thread has the mm of the process, see use_mm(dev->mm)
in drivers/vhost/vhost.c:vhost_worker(). It sounds like you need
vhost worker A (tx) to schedule work for vhost worker B (rx).
Stefan
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists