[{"id":3678657,"web_url":"http://patchwork.ozlabs.org/comment/3678657/","msgid":"<CAAjaMXYTKf49g6tEyENcZyaNhJ9dWdxJznXMJag6k+tZ9Hmm3g@mail.gmail.com>","list_archive_url":null,"date":"2026-04-17T10:44:52","subject":"Re: [RFC PATCH] hw/display: don't accidentally autofree existing\n virgl resources","submitter":{"id":86526,"url":"http://patchwork.ozlabs.org/api/people/86526/","name":"Manos Pitsidianakis","email":"manos.pitsidianakis@linaro.org"},"content":"On Fri, Apr 17, 2026 at 12:44 PM Alex Bennée <alex.bennee@linaro.org> wrote:\n>\n> While sanity checking a create blob operation the use of the auto\n> freed res variable could lead to inadvertently freeing an existing\n> blob.\n>\n> Avoid this by in-lining the virtio_gpu_virgl_find_resource() check as\n> the value is not needed anyway.\n>\n> While at it add a comment to the end and use g_steal_pointer to make\n> it clearer the object lifetime exceeds the function bounds if we pass\n> all the checks.\n>\n> Fixes: 7c092f17cce (virtio-gpu: Handle resource blob commands)\n> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>\n> Cc: qemu-stable@nongnu.org\n> ---\n>  hw/display/virtio-gpu-virgl.c | 6 +++---\n>  1 file changed, 3 insertions(+), 3 deletions(-)\n>\n> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c\n> index b7a2d160ddd..add85bd4e61 100644\n> --- a/hw/display/virtio-gpu-virgl.c\n> +++ b/hw/display/virtio-gpu-virgl.c\n> @@ -830,8 +830,7 @@ static void virgl_cmd_resource_create_blob(VirtIOGPU *g,\n>          return;\n>      }\n>\n> -    res = virtio_gpu_virgl_find_resource(g, cblob.resource_id);\n> -    if (res) {\n> +    if (virtio_gpu_virgl_find_resource(g, cblob.resource_id)) {\n>          qemu_log_mask(LOG_GUEST_ERROR, \"%s: resource already exists %d\\n\",\n>                        __func__, cblob.resource_id);\n>          cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;\n> @@ -884,8 +883,9 @@ static void virgl_cmd_resource_create_blob(VirtIOGPU *g,\n>\n>      res->base.dmabuf_fd = info.fd;\n>\n> +    /* Now live, cleaned up in virtio_gpu_virgl_resource_unref */\n>      QTAILQ_INSERT_HEAD(&g->reslist, &res->base, next);\n> -    res = NULL;\n> +    g_steal_pointer(&res);\n>  }\n>\n>  static void virgl_cmd_resource_map_blob(VirtIOGPU *g,\n> --\n> 2.47.3\n>\n\nReviewed-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256\n header.s=google header.b=SrE9Qc8S;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org\n (client-ip=209.51.188.17; helo=lists1p.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17])\n\t(using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fxs4337Rcz1yCv\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 17 Apr 2026 20:45:55 +1000 (AEST)","from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists1p.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1wDghR-0000NQ-6y; Fri, 17 Apr 2026 06:45:25 -0400","from eggs.gnu.org ([2001:470:142:3::10])\n by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <manos.pitsidianakis@linaro.org>)\n id 1wDghP-0000Mj-Ff\n for qemu-devel@nongnu.org; Fri, 17 Apr 2026 06:45:23 -0400","from mail-wm1-x333.google.com ([2a00:1450:4864:20::333])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.90_1) (envelope-from <manos.pitsidianakis@linaro.org>)\n id 1wDghN-0007j6-ME\n for qemu-devel@nongnu.org; Fri, 17 Apr 2026 06:45:23 -0400","by mail-wm1-x333.google.com with SMTP id\n 5b1f17b1804b1-48334ee0aeaso5013335e9.1\n for <qemu-devel@nongnu.org>; Fri, 17 Apr 2026 03:45:20 -0700 (PDT)"],"ARC-Seal":"i=1; a=rsa-sha256; t=1776422719; cv=none;\n d=google.com; s=arc-20240605;\n b=VGnURxvN784H8kdMgkeL4Ko0iL8jN46sGpcRyQylGPnRdiHVHOqVgVfZKlsHUBeJDD\n L8p9PxcdUX+A/GHfJVViPUlhamLaBAwUIpc87UTPfC9iO0621sRjsBYCOjpgAHZDmt+a\n Ts0ogNwRChNqJp22DtHNxXMYB9KfleoN95pWm/AQNdkCH5a+yGCvdYhVSsclKPohPaaT\n FTbmoCBDox8dKpLbu0nNuX+vq3yeV1o0dFDIkQKWGCcCsR3F9wfTGZGRbfZb7hTosECd\n 8CLwP6tSvrUwzvzgXv47BnAdi5QxaH5LCQbhjnWnTzEyeE2E/NxZsFIoj5yoqpLzHj+o\n 9R/A==","ARC-Message-Signature":"i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;\n s=arc-20240605;\n h=content-transfer-encoding:cc:to:subject:message-id:date:from\n :in-reply-to:references:mime-version:dkim-signature;\n bh=Yf0JSeCSQzCxz4BOh4B+UxqSMI3NRUZ8Y2ohqqgR3XY=;\n fh=IxRDZG8NwOSR+ModRna/15joIedqUObs31xrk2mqPV0=;\n b=AAEDX6PNTmPNG2i69NpkXuJz9TRovgP51I3Zosn2mkdvRmJ4IGmgFurSzQxBWuZ6we\n mcI8JpRmVTwIrYrmacQP4A2bqZdzKtKaQDLgbo6kBNPjrmN3nHwTDBYAf+7D4cq5Pjr7\n 7c46PRUcPj6ZJSm8s09cW3iJHJiRfu9U+wdE5FaP8jMTOvfTOfJDkp80YJ/IoE/RTbA1\n Pm3t87LJ6UuQEtvu3gsjb1xFE6Z6MbN57F0y1VtYM0VpF3iCwm3Hs+SnMvaAGq1jD2kz\n NM6JPkbg9yrjGAJIAjN6OA+2/YQrqT4jvXbau1AmVltDFwCR3EsYh45wKawaGtAEaZjM\n advw==; darn=nongnu.org","ARC-Authentication-Results":"i=1; mx.google.com; arc=none","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=linaro.org; s=google; t=1776422719; x=1777027519; darn=nongnu.org;\n h=content-transfer-encoding:cc:to:subject:message-id:date:from\n :in-reply-to:references:mime-version:from:to:cc:subject:date\n :message-id:reply-to;\n bh=Yf0JSeCSQzCxz4BOh4B+UxqSMI3NRUZ8Y2ohqqgR3XY=;\n b=SrE9Qc8SriUqwaxxWAMhg82nqJYFBMg5HVR8xicMM29wImMXR19jZH/m7KxoBqtkNI\n sBOpYgjw4Gv1ZpUb9NV18Ykd+jehVtKjxKNy8EoIglMtJcvFDh7CENLaQN7k12yW1oiG\n 8cVv+1m4gzt1hRBtEazRcTmgoTJKp4vwjuWqw0V2ZRFPKnWx0VTzGpZBEL+6NsMxu4va\n lgT9Btnw2WVXGckKPrGHIaIY/tFfkPpenAKx6O2grD54kZQGJkF8qjm+VVMa27J5j+3m\n gyuXsIL1+F0uDrNnyd+6j+Kxu8dLu3xUnuZK2q5Gp1yWVj6guv/dAoVDR80MC1YjMQEK\n 4R1A==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1776422719; x=1777027519;\n h=content-transfer-encoding:cc:to:subject:message-id:date:from\n :in-reply-to:references:mime-version:x-gm-gg:x-gm-message-state:from\n :to:cc:subject:date:message-id:reply-to;\n bh=Yf0JSeCSQzCxz4BOh4B+UxqSMI3NRUZ8Y2ohqqgR3XY=;\n b=DTbxJqe4tIHfr4y5qtxAy07HSoLGFf+c1rzBQ3ttmkgcF06hJ2qKywZssstgRnYoki\n f5hsu2pm/6b4t+q0thpHfQOZ0hza+HDOiHKFcRTycFqaDpmEEmAvI/nHsIXTY1pHT+YL\n 8O5eJNCQX0I/7IwOz8RY0pwYL/N67WrRFeea8quBwwoauPClOH4jrJRXpJpEyhhiDNPq\n mP9X5HiHI1dlmV3tsm/NKRTd5jYqZ09o+1r5XPssyXwhoFFBeZICg1TyZWnxcoedKz6v\n cm2CriwbX0Zbepq8EpbYxUO4PSaxNRdxzRc0pkk/0l5V2U7XGZXoZ9wDHailoDlnOduB\n UekA==","X-Gm-Message-State":"AOJu0YwLLJlcSSaQBrnKD6daJplRqewnU3cC5epJDL2j95Mwgh7WTuId\n XBUz2qiX7UZ4O8yQ2CkCZt9vC5B9G6BGyp5uzrQCLyN5YuOTPLva8Ob0fe7VCe2QCnXjKOv1PTn\n OxiUcjMqWjqriYH1sf4M8xRgjD/e5bwWajOK7Vv68qQ==","X-Gm-Gg":"AeBDiesqjkL9NEQMZWI8PITvfJr1jiBPVd1+W6KzfTOMRWa7m4UAdq+NnlERpfAmnW9\n quy/1X2h9qG38t59LGDYNRVQFzcfw+99O87XAyG7sUI0qENKT5H41/N8zx0L9cLQzI7Yn86LbeV\n f9aTCQ5Lray9h7FRNsm5lownsQAl0wolQkuTc52UR5+ilMpUSXW2FJ0956aaFFBpvvjx+kljFP5\n aq9tySppL7t6A0YRxmnPmCvITgomvzwHvIfL9x77wfw4YYC5gnXfbNnKC1NPrGqBrVLqr0ZUE+9\n O+fQimcAd/5dPR/bXwc+kNKOXlrLsFgU6azIx+eN9ZVYMuyVRnOpaZy+mlmFOiw=","X-Received":"by 2002:a05:600c:c082:b0:488:b043:5efd with SMTP id\n 5b1f17b1804b1-488fb75f7a6mr25082335e9.13.1776422719207; Fri, 17 Apr 2026\n 03:45:19 -0700 (PDT)","MIME-Version":"1.0","References":"<20260417094443.785462-1-alex.bennee@linaro.org>","In-Reply-To":"<20260417094443.785462-1-alex.bennee@linaro.org>","From":"Manos Pitsidianakis <manos.pitsidianakis@linaro.org>","Date":"Fri, 17 Apr 2026 13:44:52 +0300","X-Gm-Features":"AQROBzDBXmqNyAbsgRoTHa-RBKdXx8C4Gc2zLvKSycMWFoaVsnlaGQV7i0vJYfk","Message-ID":"\n <CAAjaMXYTKf49g6tEyENcZyaNhJ9dWdxJznXMJag6k+tZ9Hmm3g@mail.gmail.com>","Subject":"Re: [RFC PATCH] hw/display: don't accidentally autofree existing\n virgl resources","To":"=?utf-8?q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>","Cc":"qemu-devel@nongnu.org, qemu-stable@nongnu.org,\n \"Michael S. Tsirkin\" <mst@redhat.com>,\n Akihiko Odaki <odaki@rsg.ci.i.u-tokyo.ac.jp>,\n Dmitry Osipenko <dmitry.osipenko@collabora.com>","Content-Type":"text/plain; charset=\"UTF-8\"","Content-Transfer-Encoding":"quoted-printable","Received-SPF":"pass client-ip=2a00:1450:4864:20::333;\n envelope-from=manos.pitsidianakis@linaro.org; helo=mail-wm1-x333.google.com","X-Spam_score_int":"-20","X-Spam_score":"-2.1","X-Spam_bar":"--","X-Spam_report":"(-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,\n DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,\n RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,\n SPF_PASS=-0.001 autolearn=ham autolearn_force=no","X-Spam_action":"no action","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"qemu development <qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<https://lists.nongnu.org/archive/html/qemu-devel>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org"}},{"id":3679156,"web_url":"http://patchwork.ozlabs.org/comment/3679156/","msgid":"<fe058805-6746-408a-a976-64d0c7978017@collabora.com>","list_archive_url":null,"date":"2026-04-19T23:27:46","subject":"Re: [RFC PATCH] hw/display: don't accidentally autofree existing\n virgl resources","submitter":{"id":83453,"url":"http://patchwork.ozlabs.org/api/people/83453/","name":"Dmitry Osipenko","email":"dmitry.osipenko@collabora.com"},"content":"On 4/17/26 12:44, Alex Bennée wrote:\n> While sanity checking a create blob operation the use of the auto\n> freed res variable could lead to inadvertently freeing an existing\n> blob.\n> \n> Avoid this by in-lining the virtio_gpu_virgl_find_resource() check as\n> the value is not needed anyway.\n> \n> While at it add a comment to the end and use g_steal_pointer to make\n> it clearer the object lifetime exceeds the function bounds if we pass\n> all the checks.\n> \n> Fixes: 7c092f17cce (virtio-gpu: Handle resource blob commands)\n> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>\n> Cc: qemu-stable@nongnu.org\n> ---\n>  hw/display/virtio-gpu-virgl.c | 6 +++---\n>  1 file changed, 3 insertions(+), 3 deletions(-)\n> \n> diff --git a/hw/display/virtio-gpu-virgl.c b/hw/display/virtio-gpu-virgl.c\n> index b7a2d160ddd..add85bd4e61 100644\n> --- a/hw/display/virtio-gpu-virgl.c\n> +++ b/hw/display/virtio-gpu-virgl.c\n> @@ -830,8 +830,7 @@ static void virgl_cmd_resource_create_blob(VirtIOGPU *g,\n>          return;\n>      }\n>  \n> -    res = virtio_gpu_virgl_find_resource(g, cblob.resource_id);\n> -    if (res) {\n> +    if (virtio_gpu_virgl_find_resource(g, cblob.resource_id)) {\n>          qemu_log_mask(LOG_GUEST_ERROR, \"%s: resource already exists %d\\n\",\n>                        __func__, cblob.resource_id);\n>          cmd->error = VIRTIO_GPU_RESP_ERR_INVALID_RESOURCE_ID;\n> @@ -884,8 +883,9 @@ static void virgl_cmd_resource_create_blob(VirtIOGPU *g,\n>  \n>      res->base.dmabuf_fd = info.fd;\n>  \n> +    /* Now live, cleaned up in virtio_gpu_virgl_resource_unref */\n>      QTAILQ_INSERT_HEAD(&g->reslist, &res->base, next);\n> -    res = NULL;\n> +    g_steal_pointer(&res);\n>  }\n>  \n>  static void virgl_cmd_resource_map_blob(VirtIOGPU *g,\n\nReviewed-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (1024-bit key;\n unprotected) header.d=collabora.com header.i=dmitry.osipenko@collabora.com\n header.a=rsa-sha256 header.s=zohomail header.b=MvBKK7BJ;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org\n (client-ip=209.51.188.17; helo=lists1p.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17])\n\t(using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fzPvf4GB8z1yCv\n\tfor <incoming@patchwork.ozlabs.org>; Mon, 20 Apr 2026 09:29:00 +1000 (AEST)","from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists1p.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1wEbYh-0001U6-IU; Sun, 19 Apr 2026 19:28:11 -0400","from eggs.gnu.org ([2001:470:142:3::10])\n by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <dmitry.osipenko@collabora.com>)\n id 1wEbYf-0001Tm-V7; Sun, 19 Apr 2026 19:28:10 -0400","from sender4-pp-f112.zoho.com ([136.143.188.112])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <dmitry.osipenko@collabora.com>)\n id 1wEbYe-0001Ac-3A; Sun, 19 Apr 2026 19:28:09 -0400","by mx.zohomail.com with SMTPS id 1776641270632430.8355693571791;\n Sun, 19 Apr 2026 16:27:50 -0700 (PDT)"],"ARC-Seal":"i=1; a=rsa-sha256; t=1776641272; cv=none;\n d=zohomail.com; s=zohoarc;\n b=nRgX8dDV5kCJsi4nWs1nE5Ii2Z3qdccNefQhQ2Bpq+rKE607N0B92nBqTaSn4E2WeFP9VrOyhojqSlNbuO48rwWTOtw6UzF+0G6Wl5a8J6m7py8kkxTnKn48I8JE/Vj1+CB4rNLCLDyk9dLXkVQYVLr+8SnadmZL1SWpm2FFTKE=","ARC-Message-Signature":"i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com;\n s=zohoarc; t=1776641272;\n h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To;\n bh=JIhbYXixL4uRDbQNpcaMN5A1+mj2hsocTLQEX2bHG5s=;\n b=Q6psjy1SEaL4vTIlPww9m7dWhgWvHjlF00ZaPDv9MGZAR75y4I/R5ypLDMciKOJsey/NwTT0vTl1g0+IxaJdkOAe/8+YelTzJ8IS6rSMPqMqyapYyFkW9ZsRuc2HLGSSkLuCLfxz8szHLSO6clQ19ye3n9FuqMWF2zBCrG89Sng=","ARC-Authentication-Results":"i=1; mx.zohomail.com;\n dkim=pass  header.i=collabora.com;\n spf=pass  smtp.mailfrom=dmitry.osipenko@collabora.com;\n dmarc=pass header.from=<dmitry.osipenko@collabora.com>","DKIM-Signature":"v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1776641272;\n s=zohomail; d=collabora.com; i=dmitry.osipenko@collabora.com;\n h=Message-ID:Date:Date:MIME-Version:Subject:Subject:To:To:Cc:Cc:References:From:From:In-Reply-To:Content-Type:Content-Transfer-Encoding:Message-Id:Reply-To;\n bh=JIhbYXixL4uRDbQNpcaMN5A1+mj2hsocTLQEX2bHG5s=;\n b=MvBKK7BJI8W1eD6OfAqQNyI/d5RL21ZaktCrnhlcYSaTduhNFYg9vYseZ7AK/Qlt\n nC5vLNUFd8m09wrX1bqj0I2rP5jDYoSiIaowOoQevccn5Jd27NB9ORxj6liPSi9v1KE\n DA5mNzhCcy6XFkKSqm8fcwxWpNs0mrDn3uufkgXQ=","Message-ID":"<fe058805-6746-408a-a976-64d0c7978017@collabora.com>","Date":"Mon, 20 Apr 2026 02:27:46 +0300","MIME-Version":"1.0","User-Agent":"Mozilla Thunderbird","Subject":"Re: [RFC PATCH] hw/display: don't accidentally autofree existing\n virgl resources","To":"=?utf-8?q?Alex_Benn=C3=A9e?= <alex.bennee@linaro.org>,\n qemu-devel@nongnu.org","Cc":"manos.pitsidianakis@linaro.org, qemu-stable@nongnu.org,\n \"Michael S. Tsirkin\" <mst@redhat.com>,\n Akihiko Odaki <odaki@rsg.ci.i.u-tokyo.ac.jp>","References":"<20260417094443.785462-1-alex.bennee@linaro.org>","Content-Language":"en-US","From":"Dmitry Osipenko <dmitry.osipenko@collabora.com>","In-Reply-To":"<20260417094443.785462-1-alex.bennee@linaro.org>","Content-Type":"text/plain; charset=UTF-8","Content-Transfer-Encoding":"8bit","X-ZohoMailClient":"External","Received-SPF":"pass client-ip=136.143.188.112;\n envelope-from=dmitry.osipenko@collabora.com; helo=sender4-pp-f112.zoho.com","X-Spam_score_int":"-20","X-Spam_score":"-2.1","X-Spam_bar":"--","X-Spam_report":"(-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,\n DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,\n RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01,\n SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no","X-Spam_action":"no action","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"qemu development <qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<https://lists.nongnu.org/archive/html/qemu-devel>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org"}}]