From patchwork Fri Feb 5 17:34:45 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrey Konovalov X-Patchwork-Id: 12070567 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.5 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_INVALID,DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 9B4AAC433E0 for ; Fri, 5 Feb 2021 17:35:21 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 30E9D64F2E for ; Fri, 5 Feb 2021 17:35:21 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 30E9D64F2E Authentication-Results: mail.kernel.org; dmarc=fail (p=reject dis=none) header.from=google.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 460048D0007; Fri, 5 Feb 2021 12:35:19 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 437858D0005; Fri, 5 Feb 2021 12:35:19 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 34E7C8D0007; Fri, 5 Feb 2021 12:35:19 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0086.hostedemail.com [216.40.44.86]) by kanga.kvack.org (Postfix) with ESMTP id 1D1168D0005 for ; Fri, 5 Feb 2021 12:35:19 -0500 (EST) Received: from smtpin14.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id D8C1E8249980 for ; Fri, 5 Feb 2021 17:35:18 +0000 (UTC) X-FDA: 77784915516.14.unit78_5d0f867275e6 Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin14.hostedemail.com (Postfix) with ESMTP id BB45A18229837 for ; Fri, 5 Feb 2021 17:35:18 +0000 (UTC) X-HE-Tag: unit78_5d0f867275e6 X-Filterd-Recvd-Size: 5506 Received: from mail-wr1-f73.google.com (mail-wr1-f73.google.com [209.85.221.73]) by imf30.hostedemail.com (Postfix) with ESMTP for ; Fri, 5 Feb 2021 17:35:18 +0000 (UTC) Received: by mail-wr1-f73.google.com with SMTP id c1so5818535wrx.2 for ; Fri, 05 Feb 2021 09:35:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=sender:date:in-reply-to:message-id:mime-version:references:subject :from:to:cc; bh=r9X5DpdR9qKQzOGqj5YPMHvNzUxwchyNv1XRoONrpMQ=; b=rhZcOisXxajZRSH31J6t5x8y7U35XbWt39APfdQTAyFPG0HF5mjWJSCOgw16eIMOMa FxjsONeMdcvEksZXk6bC9GsFOfyYtiJJVVxykiWoVQthkFCZ+7JIWakX1YKqLh2Hfnsw UHhGojbmi5DGaKkXKVb9OuWCEYr4RB6K9hJP+CP2j/YOxjaS7vNIFnSlhUYQR2/KU0oU ooZpFMWOGqErYIXA8pyt+sZSi7z6vjp1Cx9mo0rM+ADEMLxumJNs73rI/ZV+psV71+ij 0yCJp9ep/i82xgHJH7EhvCF5jIIaWuoWZ9xoBRvQpbg8jUeOxTCIZpjL2b4jXvijo6zj rsPQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:date:in-reply-to:message-id:mime-version :references:subject:from:to:cc; bh=r9X5DpdR9qKQzOGqj5YPMHvNzUxwchyNv1XRoONrpMQ=; b=PX+GQc2ryVWDW0JNrIgIr3HYC5S1EkXlXRNPbe9RwvuIKfHnQwUm7D3U2YNGoO2y02 y8Fpl36IYv6TTBxLwGvBjSmFoT3v0D94o7a7tRM4qBSWjKCYnXHIxt1stzeHr+iqROBO 8MiX73Kfyu0YEAuFVUxuP5iNQ9gJPGwLIWyvu0hcsElq1tO3nj9DheQw2A+8LTx/oKxX zm3GfwGZTL3sSkfII6LY25Mn3obNcHjwFGQc7d3AoZBgLzzOe27fbBCLxnYo2Utxt0CB FBOgQpSPsMSmADADhEmeGALe6wukaf2tS/cBIGIJs+2rvAE7WrTOqWI1ilWlnjnP2MwN KqZg== X-Gm-Message-State: AOAM532sNTAhhxlHTQSlO1W1wl5UrS1zWzbux+b8CgZBaREh6X1tH0fq yiodfp0gAlOw0GMkXhC6xjeybPLcFFetay/Q X-Google-Smtp-Source: ABdhPJwTAziAbVGPOhm/GCfHuY7Nxua8uArDaBNKr1jq6WV9vgAgwxgQ1kegmyvTxo5ASrnPr8xSaEmusHPD5Qp2 X-Received: from andreyknvl3.muc.corp.google.com ([2a00:79e0:15:13:edb8:b79c:2e20:e531]) (user=andreyknvl job=sendgmr) by 2002:adf:f149:: with SMTP id y9mr6216013wro.144.1612546517387; Fri, 05 Feb 2021 09:35:17 -0800 (PST) Date: Fri, 5 Feb 2021 18:34:45 +0100 In-Reply-To: Message-Id: <2c94a2af0657f2b95b9337232339ff5ffa643ab5.1612546384.git.andreyknvl@google.com> Mime-Version: 1.0 References: X-Mailer: git-send-email 2.30.0.365.g02bc693789-goog Subject: [PATCH v3 mm 11/13] kasan: inline HW_TAGS helper functions From: Andrey Konovalov To: Andrew Morton , Catalin Marinas , Vincenzo Frascino , Dmitry Vyukov , Alexander Potapenko , Marco Elver Cc: Will Deacon , Andrey Ryabinin , Peter Collingbourne , Evgenii Stepanov , Branislav Rankov , Kevin Brodsky , kasan-dev@googlegroups.com, linux-arm-kernel@lists.infradead.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, Andrey Konovalov X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: Mark all static functions in common.c and kasan.h that are used for hardware tag-based KASAN as inline to avoid unnecessary function calls. Signed-off-by: Andrey Konovalov Reviewed-by: Marco Elver --- mm/kasan/common.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/mm/kasan/common.c b/mm/kasan/common.c index 7ffb1e6de2ef..7b53291dafa1 100644 --- a/mm/kasan/common.c +++ b/mm/kasan/common.c @@ -279,7 +279,8 @@ void __kasan_poison_object_data(struct kmem_cache *cache, void *object) * based on objects indexes, so that objects that are next to each other * get different tags. */ -static u8 assign_tag(struct kmem_cache *cache, const void *object, bool init) +static inline u8 assign_tag(struct kmem_cache *cache, + const void *object, bool init) { if (IS_ENABLED(CONFIG_KASAN_GENERIC)) return 0xff; @@ -321,8 +322,8 @@ void * __must_check __kasan_init_slab_obj(struct kmem_cache *cache, return (void *)object; } -static bool ____kasan_slab_free(struct kmem_cache *cache, void *object, - unsigned long ip, bool quarantine) +static inline bool ____kasan_slab_free(struct kmem_cache *cache, + void *object, unsigned long ip, bool quarantine) { u8 tag; void *tagged_object; @@ -366,7 +367,7 @@ bool __kasan_slab_free(struct kmem_cache *cache, void *object, unsigned long ip) return ____kasan_slab_free(cache, object, ip, true); } -static bool ____kasan_kfree_large(void *ptr, unsigned long ip) +static inline bool ____kasan_kfree_large(void *ptr, unsigned long ip) { if (ptr != page_address(virt_to_head_page(ptr))) { kasan_report_invalid_free(ptr, ip); @@ -461,8 +462,8 @@ void * __must_check __kasan_slab_alloc(struct kmem_cache *cache, return tagged_object; } -static void *____kasan_kmalloc(struct kmem_cache *cache, const void *object, - size_t size, gfp_t flags) +static inline void *____kasan_kmalloc(struct kmem_cache *cache, + const void *object, size_t size, gfp_t flags) { unsigned long redzone_start; unsigned long redzone_end;