[0/2] Bug 28954 - add Linux Kernel symbol namespace support
Message ID | 20220314181312.3436802-1-gprocida@google.com |
---|---|
Headers |
Return-Path: <libabigail-bounces+patchwork=sourceware.org@sourceware.org> X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 605013857C4D for <patchwork@sourceware.org>; Mon, 14 Mar 2022 18:13:26 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 605013857C4D DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1647281606; bh=BhQhpmsW/uv463XOsdbnOnZN477ndTGfDtjH5l+zzDM=; h=Date:Subject:To:List-Id:List-Unsubscribe:List-Archive:List-Help: List-Subscribe:From:Reply-To:Cc:From; b=J8t/nbreLpxFwAZ7naFCno++wOwr5M2LNdUBbNwy1lcSwkQRIV2WVYwIeiewc47Wx NODVaJHT84oujSugeWrVdFIIOT0ODC0zFBeXTnk/42LRBWVJOJs6Ll2ACRBrHm1Hwt 005ly1bl7FFmv5Ir+a3GBIfo1opPTpr9NQNkyH1Q= X-Original-To: libabigail@sourceware.org Delivered-To: libabigail@sourceware.org Received: from mail-ed1-x54a.google.com (mail-ed1-x54a.google.com [IPv6:2a00:1450:4864:20::54a]) by sourceware.org (Postfix) with ESMTPS id A4B4F3858D20 for <libabigail@sourceware.org>; Mon, 14 Mar 2022 18:13:21 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org A4B4F3858D20 Received: by mail-ed1-x54a.google.com with SMTP id b24-20020a50e798000000b0041631767675so9238933edn.23 for <libabigail@sourceware.org>; Mon, 14 Mar 2022 11:13:21 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:message-id:mime-version:subject:from:to:cc; bh=BhQhpmsW/uv463XOsdbnOnZN477ndTGfDtjH5l+zzDM=; b=uORITVYpZoc/6jinxyTtXSGRZDtTelIXWU3Lzu88QLDrjEQQM8ueeG+18aJBLl3GMI dlzPNtjosx3TTWwnRwCu1AJa0r5xZ4jlzrFcBTpjBnSqct3gQzfH0Dq7aay+kNmteY0Z rzauf+egs9HBhbJubBu4qFz2XNzOBYjXAnt5qPIFIVvwl6jfu1jDxq7IYWbkC4J9Vr7/ vRsYBxUi63mj8e7n65rt+gJ8z7biQHjaGqXjGDBO4jEMRYutpnfde4oFp6+oGP3Njtuu rNdpaQE/NwexAbsGaB0yozHTz6mb0kTiA5N0CNQh8ZQQxwJ2hBmiPjp7SoGgmIfd/BXT 73vw== X-Gm-Message-State: AOAM531NhXWzvd8X4lvmUwusDblFTDDJH1WhzMWWK7kTvEjac+ASuqUC yrnFeeOAUF4H1AhhBsvdZL4vphKMmUq+px6L1ds2uGJOEKpu5v8lvvMs4K+tMpWVU9zbkvZGkA7 amzfnIPHkny2OdXmwmKKJDDGZJuf/YUcnqwVr1MD5NqWQLnKN/lguos34Tez97syGNsjcS5A= X-Google-Smtp-Source: ABdhPJx68rMlTNjT9jDcojiY8ODTCvnuaSYotKCN/EPzAubrX6KZrUHinJCvnFDG3IkOldtqYt9Eybuv+yfCOQ== X-Received: from tef.lon.corp.google.com ([2a00:79e0:d:210:26a:3b8d:2ee5:1224]) (user=gprocida job=sendgmr) by 2002:a05:6402:520a:b0:418:4d2b:de94 with SMTP id s10-20020a056402520a00b004184d2bde94mr14437776edd.54.1647281599937; Mon, 14 Mar 2022 11:13:19 -0700 (PDT) Date: Mon, 14 Mar 2022 18:13:10 +0000 Message-Id: <20220314181312.3436802-1-gprocida@google.com> Mime-Version: 1.0 X-Mailer: git-send-email 2.35.1.723.g4982287a31-goog Subject: [PATCH 0/2] Bug 28954 - add Linux Kernel symbol namespace support To: libabigail@sourceware.org Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-15.3 required=5.0 tests=BAYES_00, DKIMWL_WL_MED, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE, USER_IN_DEF_DKIM_WL autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: libabigail@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Mailing list of the Libabigail project <libabigail.sourceware.org> List-Unsubscribe: <https://sourceware.org/mailman/options/libabigail>, <mailto:libabigail-request@sourceware.org?subject=unsubscribe> List-Archive: <https://sourceware.org/pipermail/libabigail/> List-Help: <mailto:libabigail-request@sourceware.org?subject=help> List-Subscribe: <https://sourceware.org/mailman/listinfo/libabigail>, <mailto:libabigail-request@sourceware.org?subject=subscribe> From: Giuliano Procida via Libabigail <libabigail@sourceware.org> Reply-To: Giuliano Procida <gprocida@google.com> Cc: maennich@google.com, kernel-team@android.com Errors-To: libabigail-bounces+patchwork=sourceware.org@sourceware.org Sender: "Libabigail" <libabigail-bounces+patchwork=sourceware.org@sourceware.org> |
Message
Giuliano Procida
March 14, 2022, 6:13 p.m. UTC
Hi Dodji. These two patches aim to add kernel symbol namespace support. There are two bits of this that could be debated (and easily changed). A. choice of XML attribute name I've chosen "ns", mostly because "namespace" implies C++ namespace everywhere else. B. choice of representation There are several possible levels of distinction of presence: 1. Non-kernel symbols cannot be exported to a namespace. 2. Kernel symbols can be exported globally and not to namespace. 3. Kernel symbols can be exported to a named namespace. And there is the option of treating the empty namespace name string specially. I've chosen to represent namespace internally as optional<string> and not distinguish between cases 1 and 2. Regards. Giuliano Procida (2): optional: add operator== and operator!= add Linux kernel symbol namespace support include/abg-cxx-compat.h | 16 +++++++++++++ include/abg-ir.h | 9 ++++++++ src/abg-comp-filter.cc | 39 +++++++++++++++++++++++++++++++- src/abg-ir.cc | 27 +++++++++++++++++++++- src/abg-reader.cc | 7 ++++++ src/abg-reporter-priv.cc | 12 ++++++++++ src/abg-symtab-reader.cc | 49 ++++++++++++++++++++++++++++++++++++++++ src/abg-writer.cc | 4 ++++ 8 files changed, 161 insertions(+), 2 deletions(-)