From nobody Sat May 30 18:34:47 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=reject dis=none) header.from=sifive.com ARC-Seal: i=1; a=rsa-sha256; t=1779089011; cv=none; d=zohomail.com; s=zohoarc; b=QVL+Ei+bXGM8JLRo878J4Hlu5w4goTr18JACijq4mZv8I3Pkrp/TwiYLJkak1gCUjSskBGKdgqQTWH5Y1HhGXl7jcnLsnPPTukusdfg5Ksue6c19Q8vT9uwAlfJhrpglmN3wEJvLj7+dqmiGqmDIbvo6DrZOtYBMwexYDyM44iE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1779089011; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=I0HL/wr8JMbX7mHAeT8rrFM6IXQVebR9Lmq9PhVV0xc=; b=b9dsdCGjiSccRZYpj4/IFDCFjzyxbJN9q553a0BrHHdcktk3uEVnXiOkiz2m7MlufotvtbklKfJrCaa7LPpq0GX7R19vImWKNR/tcgbGSZh90Iz9Salp4Hid3fjMIxcr4yiNy7VoJeJquSSbeFXkxPjvzsx3Aq6bXvyS2IFZXns= 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=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1779089011729964.3899555133376; Mon, 18 May 2026 00:23:31 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wOsJX-0005qG-Iq; Mon, 18 May 2026 03:23:00 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wOsJO-0005oo-5d for qemu-devel@nongnu.org; Mon, 18 May 2026 03:22:51 -0400 Received: from mail-pf1-x435.google.com ([2607:f8b0:4864:20::435]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1wOsJM-0004dx-Cw for qemu-devel@nongnu.org; Mon, 18 May 2026 03:22:49 -0400 Received: by mail-pf1-x435.google.com with SMTP id d2e1a72fcca58-834f1075805so1497780b3a.2 for ; Mon, 18 May 2026 00:22:48 -0700 (PDT) Received: from jchang-1875.internal.sifive.com ([136.226.240.181]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-83f19c5c045sm16502348b3a.37.2026.05.18.00.22.44 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Mon, 18 May 2026 00:22:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sifive.com; s=google; t=1779088967; x=1779693767; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=I0HL/wr8JMbX7mHAeT8rrFM6IXQVebR9Lmq9PhVV0xc=; b=G/ex6n66/x0AGMtS3/OFW+4rS8K44f+vKIHW8y64DG3qMPJXzVk7E/vbbNWdaVkC5q pKPeROmIUdddi5tvJoOpX6GvA1HBHHUJtwCoAeWhciqNsfUSi5cKfC/M85a2L9vEyR7z wol/WP6BdEcOhPUhJ1ugseqKRbW9I8JQGXKR6xgvyC+JLfDuURG9Ksu2vr+NXLsLD1bL PQOSBg4aNraps8eHPiOwooN3/2+ihC1S4njNRfl4tU73Atos8CBVEZ5TT6MwYdrY00hI mI4ohm33fHg8ymv1n+sYsEckjuMFZkzx4AMa9qQqbj/549NxY3pFV0K244AtKoyKwVCr mVVg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779088967; x=1779693767; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=I0HL/wr8JMbX7mHAeT8rrFM6IXQVebR9Lmq9PhVV0xc=; b=Gptw7oe+2grdJoen8LM3F9Ooy4sfXdsqMYUYxmR9pY91La6NEp64MfVPtH1uJtjMi8 hfAoowUGoe4I5gTX3Cp9os3RJ/WIXPSKoBtQmUFoCAj/SE2y1c7feZxlTTuUaWWP+Ikf RNuORvxu8WDgt6HDRh65sEhfksu/LWHYZ2GGLE+P0EuvFnJ+Bi4TT/vi2TgYvdXPhO1z 0/0tHCbX0FzLR+MUs+YuA/SorbfxI1jp5DLihc6mauLFev+WkEDBuhLTZbRyz6MgTAIn vQSgfC85BSUXMQfH9ivk3oV7rPojnz/fb6lfeCFHN7Bs54B6Et4b2f11pt0/wT9SVzoS e9QA== X-Gm-Message-State: AOJu0YxFqvsqXThlaUjdUaMrLHOK4GIOV2Yxojvs9rsdSxlcIyKYhKFA ZmfufpwQJbk2WITJ1qlmunzXG1R0+i19t9a8tAK4Qd1Q6ngSydI+RfIrcQtjN6+d6+EpEpnh7ti V8SUZ9J3MOgaiAHFCOVY81sHZRAo40M96BYI7TrBIujac20O++CXjtBE630cF+nlSOn1ZC8Qune sRdcceikvV0riOEuMrufdiXtj9zIEnqw6n2PmFNzndABI= X-Gm-Gg: Acq92OHYuEKtftpSq11eDXAccmNzGec7Miu+gwaWybQHh1mdUb+PdUluz4B0wVIrI2w st51z3sELpA0Y8k/1yFOGOwEbJs76VqhCvFEdqw01DCmyRugZm7Kznacou2HulPFHR0UhNu5F3C yMlHzowZ1c1Oxww6Ft6xsB1cxkNRhDYg+ErotT+btzMr5X7QYmE5znkNeYe5NeoVGlSsachPEFR wWXsFOJAOavJEQVOyBN3PakpWOOIkJtInfWlrRZbi+T5negAhNN2WVwv46Raw0S2OK7ed6Tqcls SRxCG0ZG0NVpdvPkM1W1I7O3sWyfJC9JmmckJ1JzofIYnNfowHYpY74CxpbBqdg22WrS6CHvhEw EBKhhN+jEu0mojLwQYiekxrbuEBaAE4tKITSkUpZlPeyG9bWP2kr1Bw/iudE2/sodSKOrdN5WQl e2Yqm9m6DTjl7JnhFHI59mdLP8iP1a9TRPvuEXtAHMWuuHDWsEOuswzIgjx4TXiw== X-Received: by 2002:a05:6a00:194f:b0:82f:5034:77a4 with SMTP id d2e1a72fcca58-83f33cf2aefmr14524773b3a.21.1779088966914; Mon, 18 May 2026 00:22:46 -0700 (PDT) From: Jay Chang To: qemu-devel@nongnu.org, qemu-riscv@nongnu.org Cc: Palmer Dabbelt , Alistair Francis , Weiwei Li , Daniel Henrique Barboza , Liu Zhiwei , Chao Liu , Jay Chang , Frank Chang , Nutty Liu Subject: [PATCH v2 1/2] hw/riscv: Don't insert DDT cache in Bare mode Date: Mon, 18 May 2026 15:22:38 +0800 Message-ID: <20260518072239.16293-2-jay.chang@sifive.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20260518072239.16293-1-jay.chang@sifive.com> References: <20260518072239.16293-1-jay.chang@sifive.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable 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=lists1p.gnu.org; Received-SPF: pass client-ip=2607:f8b0:4864:20::435; envelope-from=jay.chang@sifive.com; helo=mail-pf1-x435.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, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable 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 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @sifive.com) X-ZM-MESSAGEID: 1779089013924154100 Content-Type: text/plain; charset="utf-8" In Bare mode the IOMMU does not perform DDT look-ups, therefore caching DDT entries is unnecessary. Signed-off-by: Jay Chang Reviewed-by: Frank Chang Reviewed-by: Daniel Henrique Barboza Reviewed-by: Nutty Liu --- hw/riscv/riscv-iommu.c | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/hw/riscv/riscv-iommu.c b/hw/riscv/riscv-iommu.c index 5bc2472a83..c5c04e336e 100644 --- a/hw/riscv/riscv-iommu.c +++ b/hw/riscv/riscv-iommu.c @@ -1358,16 +1358,23 @@ static RISCVIOMMUContext *riscv_iommu_ctx(RISCVIOMM= UState *s, =20 int fault =3D riscv_iommu_ctx_fetch(s, ctx); if (!fault) { - if (g_hash_table_size(ctx_cache) >=3D LIMIT_CACHE_CTX) { + if (mode !=3D RISCV_IOMMU_DDTP_MODE_BARE) { + if (g_hash_table_size(ctx_cache) >=3D LIMIT_CACHE_CTX) { + g_hash_table_unref(ctx_cache); + ctx_cache =3D g_hash_table_new_full(riscv_iommu_ctx_hash, + riscv_iommu_ctx_equal, + g_free, NULL); + g_hash_table_ref(ctx_cache); + g_hash_table_unref(qatomic_xchg(&s->ctx_cache, ctx_cache)); + } + + g_hash_table_add(ctx_cache, ctx); + *ref =3D ctx_cache; + } else { g_hash_table_unref(ctx_cache); - ctx_cache =3D g_hash_table_new_full(riscv_iommu_ctx_hash, - riscv_iommu_ctx_equal, - g_free, NULL); - g_hash_table_ref(ctx_cache); - g_hash_table_unref(qatomic_xchg(&s->ctx_cache, ctx_cache)); + /* Remember ctx so it can be freed */ + *ref =3D ctx; } - g_hash_table_add(ctx_cache, ctx); - *ref =3D ctx_cache; return ctx; } =20 --=20 2.48.1 From nobody Sat May 30 18:34:47 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=reject dis=none) header.from=sifive.com ARC-Seal: i=1; a=rsa-sha256; t=1779089021; cv=none; d=zohomail.com; s=zohoarc; b=Oyz/LKdDHcW94BFolXUgPK1BNAX/xbmsVaY+HoKc2F8+b6twGGDovxbP/GrXtlCds0uSlSR8iejc+SOm0gdVe/Qev/125Q48HbUKk+TdjbM6hhciEcvAcOTzluv5OTT4q72cMxemje76SAO+cImmyaFxmBTkw7DYfCfcRW+/k7Y= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1779089021; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=Juer4Wjgt/0ZOAgysQ1XXcC/XVrTou51vlfeuKtO0KA=; b=EdhtPNIIV/V7MUR6rVNj76z71JNtmtH3lpzXzmzK6Kzso2oX17cVBGZ5DiNBFOJxKvsNyTqyBOrdti6CO9/6Wy15sCiEmjykMijpK0AAzJiqLWdzdsKPgoF2xeYRNvZYKD88L19eOhkdJcSOzXZFB5dBzX1zwWkuGSjEFznhsDI= 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=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1779089021715808.1499504014388; Mon, 18 May 2026 00:23:41 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wOsJg-0005uh-CH; Mon, 18 May 2026 03:23:10 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wOsJT-0005pe-Mm for qemu-devel@nongnu.org; Mon, 18 May 2026 03:22:57 -0400 Received: from mail-pf1-x434.google.com ([2607:f8b0:4864:20::434]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1wOsJS-0004hf-A7 for qemu-devel@nongnu.org; Mon, 18 May 2026 03:22:55 -0400 Received: by mail-pf1-x434.google.com with SMTP id d2e1a72fcca58-82fa8d6425bso809659b3a.0 for ; Mon, 18 May 2026 00:22:53 -0700 (PDT) Received: from jchang-1875.internal.sifive.com ([136.226.240.181]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-83f19c5c045sm16502348b3a.37.2026.05.18.00.22.50 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Mon, 18 May 2026 00:22:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sifive.com; s=google; t=1779088973; x=1779693773; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Juer4Wjgt/0ZOAgysQ1XXcC/XVrTou51vlfeuKtO0KA=; b=cCEIgTGmBaLx9NIi/Z6lqOnCQ2j6qTm+A1PvNkCGokWOFLzYppfYttpD8+sCiOxqxe /n/1ULFe5QnxnKOgqd9tyD8HnaJpAlBYZOPtgkIAFvw3ab/HGlK3aoFf4Cwx19a9spfw S0NblYi6kutpMJaSwPfXPb89mz9TdSerkM/5MIGoSblBGmvv72gODCXr1oAatoGaviX/ AiX35nIpTG1fu/eKKHNrmNqmeAodLPL3TET64BLWFcVl5c8iwJTW14LNey/kkRYPJ35B WQT3Ynj2ka67HCdnPIy0POBqP7eyZLEwmiIXIfOy0d3CvemN/aMgz248h185b3xKkMj0 K6fw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779088973; x=1779693773; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=Juer4Wjgt/0ZOAgysQ1XXcC/XVrTou51vlfeuKtO0KA=; b=jujm3SpvgsP6skGD++QZ6In+W0PCrvrJ1JTGI8nHhKEpsxBjAGO4sCYOclgH8Lmp/o 2zOokBEvJGLw67ZGP7+AV8QWOAuZwwcYAe57xD30BdKx8G1a8DNdpZVHZfb8ijkv4DGm DVSJRukMiF4Pdq0iYsEHIImdu4CrRVIIzh8O5ctXSLvYieDpqskZ89TEzCuXdZozR8O6 S/IDI2tB1funrtrpvVUglbiekJCWoeI0EvUrRlGE4qBXQkzHwCeTTokQFpE/9xtbKyen Ewyo2ruyQLWV7DSmvW5w7EH4lpK6b6+1aUTg1Fo8twdBVYFmw0pzXcr6KhuYaT2v5kdi kWvQ== X-Gm-Message-State: AOJu0YzqcGkUylZ95EjChvHlu9D85f1LWYAkPPWsI8P8kc/8/OFKFgAX EAjvwp9f18IiuNH9stfhYmO9qbXVsh6tir0A6q7FZbldHHpj47POVgJYbWHr4Q/bt40yWQJESAN IymqBPRNQt6bBOKh8ygh6mMwsivcReBjqCQmlKFTnfpmuH6stzps13cg72bjM4EbUHmgj8GDVb7 5GzU5sLWRPiP5fULmXJkGIr5+6PQ63GvJ7onY/TePUimk= X-Gm-Gg: Acq92OGlkrTthfkNCcpCjElUvsR3XiTSoeQlDFiQ6z1+WOPPTrGKSNe/inKEBeSndyg TYC2k/1uyrsKYDC0HxvnmUNqpkx11BIivtdNwUcnY0IojUbLyYXMcMV1amrAQlrHXqnWZeAsTio Y04SoYvn7TLVhb9vmoh94dfy2U8HdIXZ901bQeiJoO1TMkMhinMoQTJ+LP+DADqNi8MLhXg0dSG 96Bc/2fZQPvP/HG9f1QxKgS6S6fvJ3FRzIMfZogI83wF2SvC/dnyFZd8oVRarSwbYUpRhhYGRh0 cUxZOtjS36RiS6BUSSauNo2A3eExMdPqoXROZEnLmEUVPiwH/Hsi8+sO7pLekN7QEkvsrVBi2NE WKPLxiAInqVweccPs75CayAoxlOMt9UIyZ7K43fBWaXb/vkKdNq1+iHUKVqwml59o5HuLlEk/6C GNDimLC/7D+2l8uLNwU/sJ5b1lBMZpUCqeC6KEjGzHInhTmuDd7P8FD+I5XLMiYg== X-Received: by 2002:a05:6a00:1c81:b0:82c:e775:d43a with SMTP id d2e1a72fcca58-83f33de5276mr13648651b3a.35.1779088972573; Mon, 18 May 2026 00:22:52 -0700 (PDT) From: Jay Chang To: qemu-devel@nongnu.org, qemu-riscv@nongnu.org Cc: Palmer Dabbelt , Alistair Francis , Weiwei Li , Daniel Henrique Barboza , Liu Zhiwei , Chao Liu , Jay Chang , Frank Chang , Nutty Liu Subject: [PATCH v2 2/2] hw/riscv: Refactor riscv_iommu_ctx_put() for Bare mode handling Date: Mon, 18 May 2026 15:22:39 +0800 Message-ID: <20260518072239.16293-3-jay.chang@sifive.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20260518072239.16293-1-jay.chang@sifive.com> References: <20260518072239.16293-1-jay.chang@sifive.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable 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=lists1p.gnu.org; Received-SPF: pass client-ip=2607:f8b0:4864:20::434; envelope-from=jay.chang@sifive.com; helo=mail-pf1-x434.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, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable 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 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @sifive.com) X-ZM-MESSAGEID: 1779089023794158500 Content-Type: text/plain; charset="utf-8" Align SPEC: Bare mode contexts are not cached, so they require direct memory deallocation via g_free instead of hash table cleanup. Signed-off-by: Jay Chang Reviewed-by: Frank Chang Reviewed-by: Daniel Henrique Barboza Reviewed-by: Nutty Liu --- hw/riscv/riscv-iommu.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/hw/riscv/riscv-iommu.c b/hw/riscv/riscv-iommu.c index c5c04e336e..f06a121945 100644 --- a/hw/riscv/riscv-iommu.c +++ b/hw/riscv/riscv-iommu.c @@ -1390,7 +1390,16 @@ static RISCVIOMMUContext *riscv_iommu_ctx(RISCVIOMMU= State *s, =20 static void riscv_iommu_ctx_put(RISCVIOMMUState *s, void *ref) { - if (ref) { + unsigned mode =3D get_field(s->ddtp, RISCV_IOMMU_DDTP_MODE); + + if (!ref) { + return; + } + + /* ref is pointing to ctx in Bare mode. Bare mode ctx is not cached */ + if (mode =3D=3D RISCV_IOMMU_DDTP_MODE_BARE) { + g_free(ref); + } else { g_hash_table_unref((GHashTable *)ref); } } --=20 2.48.1