From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:58611) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RxEnM-0000of-5k for qemu-devel@nongnu.org; Tue, 14 Feb 2012 04:35:37 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RxEnH-0005IS-5H for qemu-devel@nongnu.org; Tue, 14 Feb 2012 04:35:32 -0500 Received: from mx1.redhat.com ([209.132.183.28]:17684) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RxEnG-0005IM-Tc for qemu-devel@nongnu.org; Tue, 14 Feb 2012 04:35:27 -0500 Message-ID: <4F3A2A6F.9010800@redhat.com> Date: Tue, 14 Feb 2012 11:33:35 +0200 From: Yonit Halperin MIME-Version: 1.0 References: <1329207018-7542-1-git-send-email-yhalperi@redhat.com> <4F3A1CD4.4070005@redhat.com> <4F3A2513.4060105@redhat.com> <4F3A284E.1080008@redhat.com> In-Reply-To: <4F3A284E.1080008@redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH] qxl: make sure primary surface is saved on migration also in compat mode List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Gerd Hoffmann Cc: qemu-devel@nongnu.org, spice-devel@freedesktop.org On 02/14/2012 11:24 AM, Gerd Hoffmann wrote: > Hi, > >> I can do it, by retrieving the surfaces addresses from the tracked guest >> commands. > > Exactly. > >> However, if we already do it, it would be even better if we >> just dirty only the areas that are actually modified by the update_area >> calls. The problem is that (1) spice-server updates surfaces also >> without request from driver. > > On worker->stop() for example, which renderes all outstanding commands > so all state is flushed to the surfaces (and thereby device memory). > This is done on vm_stop too, so I wouldn't be surprised if most surfaces > are dirtied anyway at this point. Getting notifications about > spice-server touching surfaces doesn't buy us much then. We also render drawables that are not hidden by other ones, when we lack free memory in the driver. In addition inter-surfaces dependencies are handled in a brute-force manner by rendering old drawables (I plan to improve this). But anyway, as I mentioned it the preceding email, since most of the surfaces are destroyed (at least with the current drivers), I prefer not to dirty them "live". So I'll make the change you originally suggested. Regards, Yonit. > > cheers, > Gerd >