From nobody Tue Feb 10 04:15:05 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=bitdefender.com ARC-Seal: i=1; a=rsa-sha256; t=1586912919; cv=none; d=zohomail.com; s=zohoarc; b=XTe2FM3gWsYRjJuAqrPQzxB/HbdIHrQr6qbNtUImWIpqIuW8NHuTi6nDeR3MxAIS75TJ7jDDD9QhzU0henjXX+GhPLOBdJE20glr+CCPx7BcbPfKocgZJU7Xrg14UdmnOFkBOypMzKnS5DPFEtsBfAXrjwjUuVS5y1YLFPQKayo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1586912918; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=8rPLySro4pULm8HN1CIHAUI52W4QfURXtl4W0OUTyAE=; b=Kvdw+90UU0e6iSpfWC9nnLxQ/zq2i/Nt+Y+OGoyXW+A0X6Lh/6baD2Htb3CZn2OP171AwQLkKV2Rgo9vEziRFqvzkGDbO2DnWsV9z1lPk2j+ai5Dn7hd5yUM4JaS7EC9ZYAhPoK9UeeQlmb63oaCHzwWWb9GpRPdKZ9vLEn3jjI= ARC-Authentication-Results: i=1; mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1586912918998759.8523485508642; Tue, 14 Apr 2020 18:08:38 -0700 (PDT) Received: from localhost ([::1]:40948 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jOWXd-0001sz-JH for importer@patchew.org; Tue, 14 Apr 2020 21:08:37 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:58353) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jOWOy-0000vq-Hf for qemu-devel@nongnu.org; Tue, 14 Apr 2020 20:59:41 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1jOWOx-00051k-Cb for qemu-devel@nongnu.org; Tue, 14 Apr 2020 20:59:40 -0400 Received: from mx01.bbu.dsd.mx.bitdefender.com ([91.199.104.161]:49078) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1jOWOx-00050k-41 for qemu-devel@nongnu.org; Tue, 14 Apr 2020 20:59:39 -0400 Received: from smtp.bitdefender.com (smtp02.buh.bitdefender.net [10.17.80.76]) by mx01.bbu.dsd.mx.bitdefender.com (Postfix) with ESMTPS id 7395430747C3; Wed, 15 Apr 2020 03:59:34 +0300 (EEST) Received: from localhost.localdomain (unknown [91.199.104.27]) by smtp.bitdefender.com (Postfix) with ESMTPSA id 5ACE2305B7A0; Wed, 15 Apr 2020 03:59:34 +0300 (EEST) From: =?UTF-8?q?Adalbert=20Laz=C4=83r?= To: qemu-devel@nongnu.org Subject: [RFC PATCH v1 05/26] char-socket: add 'fd' property Date: Wed, 15 Apr 2020 03:59:17 +0300 Message-Id: <20200415005938.23895-6-alazar@bitdefender.com> In-Reply-To: <20200415005938.23895-1-alazar@bitdefender.com> References: <20200415005938.23895-1-alazar@bitdefender.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 91.199.104.161 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Adalbert=20Laz=C4=83r?= , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Paolo Bonzini Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" Content-Type: text/plain; charset="utf-8" This is used by the VM introspection object, after handshake, to hand over the file descriptor to KVM. CC: "Marc-Andr=C3=A9 Lureau" CC: Paolo Bonzini Signed-off-by: Adalbert Laz=C4=83r Reviewed-by: Marc-Andr=C3=A9 Lureau --- chardev/char-socket.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/chardev/char-socket.c b/chardev/char-socket.c index 22ab242748..76d0fb8839 100644 --- a/chardev/char-socket.c +++ b/chardev/char-socket.c @@ -1499,6 +1499,21 @@ static bool char_socket_get_reconnecting(Object *obj= , Error **errp) return s->reconnect_time > 0; } =20 +static void +char_socket_get_fd(Object *obj, Visitor *v, const char *name, void *opaque, + Error **errp) +{ + int fd =3D -1; + SocketChardev *s =3D SOCKET_CHARDEV(obj); + QIOChannelSocket *sock =3D QIO_CHANNEL_SOCKET(s->sioc); + + if (sock) { + fd =3D sock->fd; + } + + visit_type_int32(v, name, &fd, errp); +} + static int tcp_chr_reconnect_time(Chardev *chr, int secs) { SocketChardev *s =3D SOCKET_CHARDEV(chr); @@ -1539,6 +1554,9 @@ static void char_socket_class_init(ObjectClass *oc, v= oid *data) object_class_property_add_bool(oc, "reconnecting", char_socket_get_reconnecting, NULL, &error_abort); + + object_class_property_add(oc, "fd", "int32", char_socket_get_fd, + NULL, NULL, NULL, &error_abort); } =20 static const TypeInfo char_socket_type_info =3D {