From nobody Mon Feb 9 14:37:18 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; 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=pass(p=quarantine dis=none) header.from=crudebyte.com ARC-Seal: i=1; a=rsa-sha256; t=1629580567; cv=none; d=zohomail.com; s=zohoarc; b=TuWcEq9d5dr/4c6q3BVRF3nUin33BEH0y2Lzd3w3FH5uLnay5twRI1CUQNDSMCZQCpu0r82Em+j4CHubmL3Kes44Ofw1id8WhwyKCgNKcn5S11sZ8KRBhh5fdXWT3OkFA7adwukRXea0+H0i83ZY1ciINT7yBYOE0RRziwObMNE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1629580567; h=Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:To; bh=5jKfd6sVikDt3oYLoGttLhQ8l3eB72EFDlpIpChG4sE=; b=AD+PnTu8sPcPW/pjBb46DrD49OjY6uj6IGb42l6AZacqEr03nk24AvFjWJ8NqqFPFxUFGHNsXKhp2Vhmo4Vsxkj3mWK7/VuYRJ3bzSaNJ1uSMCHP8KaAh0oEwJ4kADfBCQMwSR4y1FgSTpPOQr/VWfg4yZsiacv8zShrSrpCqrA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; 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=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1629580567887301.20278442564336; Sat, 21 Aug 2021 14:16:07 -0700 (PDT) Received: from localhost ([::1]:39132 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mHYLW-00088F-Uy for importer@patchew.org; Sat, 21 Aug 2021 17:16:06 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:57512) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mHYHj-0000Ti-FG for qemu-devel@nongnu.org; Sat, 21 Aug 2021 17:12:11 -0400 Received: from lizzy.crudebyte.com ([91.194.90.13]:38417) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mHYHf-0001oz-4v for qemu-devel@nongnu.org; Sat, 21 Aug 2021 17:12:11 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=crudebyte.com; s=lizzy; h=Cc:To:Subject:Date:From:References:In-Reply-To: Message-Id:Content-Type:Content-Transfer-Encoding:MIME-Version:Content-ID: Content-Description; bh=5jKfd6sVikDt3oYLoGttLhQ8l3eB72EFDlpIpChG4sE=; b=Ewdc8 Ket+aEQvohUKi26/4QuNAfiAQd9OEfvuwwmFcNzwZLm929t+vg/SQpLSf9ZpTE16LBCYz0+h6VAlu tObRetsO25cWXM7/3xXO0tsxRgOaj+zxyyeO6fS/bVx0TV6mE5MuF5Ri8C/uQyd0Qxy3s3dqyGlTr DiqbEtCyZHWbBeYqtL0hB/xDP1nQY4uLrGvo2jUzAWHZOrP0ZW/YuhUPV5hsfG0z/0Xx1SAQ0KbiO V47WlWJZiaQ8FkeFh32qfQt05/6RVpTBtWc692NYsB3T7/L4pWkVvNfTJVxKdrWUZ3Zhp823esmv7 qXI7AVShrqnrK4BjRTvoM26frcdcg==; Message-Id: In-Reply-To: References: From: Christian Schoenebeck Date: Sat, 21 Aug 2021 22:39:25 +0200 Subject: [PATCH 5/5] 9pfs: use QArray in v9fs_walk() To: qemu-devel@nongnu.org Cc: Greg Kurz 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; Received-SPF: none client-ip=91.194.90.13; envelope-from=c34a1d230748f5a0996a60d7f2b7b3e95342ef4f@lizzy.crudebyte.com; helo=lizzy.crudebyte.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, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_NONE=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action 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: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @crudebyte.com) X-ZM-MESSAGEID: 1629580569500100001 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Signed-off-by: Christian Schoenebeck --- hw/9pfs/9p.c | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c index b59572fa79..91062ee4d6 100644 --- a/hw/9pfs/9p.c +++ b/hw/9pfs/9p.c @@ -1707,13 +1707,14 @@ static void coroutine_fn v9fs_walk(void *opaque) int name_idx; g_autofree V9fsQID *qids =3D NULL; int i, err =3D 0; - V9fsPath dpath, path, *pathes =3D NULL; + V9fsPath dpath, path; + QArrayRef(V9fsPath) pathes =3D NULL; uint16_t nwnames; struct stat stbuf, fidst; g_autofree struct stat *stbufs =3D NULL; size_t offset =3D 7; int32_t fid, newfid; - V9fsString *wnames =3D NULL; + QArrayRef(V9fsString) wnames =3D NULL; V9fsFidState *fidp; V9fsFidState *newfidp =3D NULL; V9fsPDU *pdu =3D opaque; @@ -1734,10 +1735,10 @@ static void coroutine_fn v9fs_walk(void *opaque) goto out_nofid; } if (nwnames) { - wnames =3D g_new0(V9fsString, nwnames); + QARRAY_CREATE(V9fsString, wnames, nwnames); qids =3D g_new0(V9fsQID, nwnames); stbufs =3D g_new0(struct stat, nwnames); - pathes =3D g_new0(V9fsPath, nwnames); + QARRAY_CREATE(V9fsPath, pathes, nwnames); for (i =3D 0; i < nwnames; i++) { err =3D pdu_unmarshal(pdu, offset, "s", &wnames[i]); if (err < 0) { @@ -1869,14 +1870,6 @@ out: v9fs_path_free(&path); out_nofid: pdu_complete(pdu, err); - if (nwnames && nwnames <=3D P9_MAXWELEM) { - for (name_idx =3D 0; name_idx < nwnames; name_idx++) { - v9fs_string_free(&wnames[name_idx]); - v9fs_path_free(&pathes[name_idx]); - } - g_free(wnames); - g_free(pathes); - } } =20 static int32_t coroutine_fn get_iounit(V9fsPDU *pdu, V9fsPath *path) --=20 2.20.1