Message ID | 20220905122452.2258262-29-glider@google.com (mailing list archive) |
---|---|
State | New |
Headers | show
Return-Path: <owner-linux-mm@kvack.org> X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id A39B9ECAAD5 for <linux-mm@archiver.kernel.org>; Mon, 5 Sep 2022 12:26:17 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3BF618D0083; Mon, 5 Sep 2022 08:26:17 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 36EE08D0076; Mon, 5 Sep 2022 08:26:17 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 236618D0083; Mon, 5 Sep 2022 08:26:17 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 137C48D0076 for <linux-mm@kvack.org>; Mon, 5 Sep 2022 08:26:17 -0400 (EDT) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id EC039140668 for <linux-mm@kvack.org>; Mon, 5 Sep 2022 12:26:16 +0000 (UTC) X-FDA: 79877954352.22.BFDC3E9 Received: from mail-ed1-f73.google.com (mail-ed1-f73.google.com [209.85.208.73]) by imf25.hostedemail.com (Postfix) with ESMTP id 40AA9A0080 for <linux-mm@kvack.org>; Mon, 5 Sep 2022 12:26:16 +0000 (UTC) Received: by mail-ed1-f73.google.com with SMTP id c14-20020a05640227ce00b0043e5df12e2cso5752402ede.15 for <linux-mm@kvack.org>; Mon, 05 Sep 2022 05:26:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date; bh=T4yulc1U4RDI/lAlxqlpzG4AIUYO9fQrzg+B84ydySw=; b=gykJQm16KBq2G1POc9yawl2YF5uKFWxrq5CWIWwQMtdL8/Y4B0bJfVbxJTszw18YVx 4E7qTI7rzio5nRVJ1FODUAtp/gLZ4JUBLm7SxRqEGBezrmCDsaRdu10ahEbwyMKOHAnS mL4d3XS2YrrbBWzFaHkAc86d82LPVwuZr9FNhGX9lMdqGF26zvlVbpRXEh8qRgLj77Y8 76yFFAvEbnv46jD2CZU9sNo1Vk3UkvA6lYT1fvAVGXzAfOyNN03DhtVyXZh9WTPSiISL CK6qhGXl1pCPNGjaBDhupNrDjetS7nAg6yMvS2fe8SlPKpaw/+edKhLnuNlgtl8KA9cs 5eVg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date; bh=T4yulc1U4RDI/lAlxqlpzG4AIUYO9fQrzg+B84ydySw=; b=PxII6lJqWoB+ZQ3CzkJXdRV1Qc+ZUnxcRPuwzgzlJQlCTHdBWhjD3223K70NsscwWf VsJ/BuSXpbrUAPvJds1hdAhZBXHZdHd9ilf5orhsxPIWsX9dKO6zPlTWEO1oOSuUN6si LaYiX333eGcnPZrytpgbrxkilsv3WCapEt8Xz/hObPoxfz1LSERkPK6ojLj0uxJV7sTK gFI1dHkQNv4HV/FcEJkL4fIu4hkxt0MRBeQl0+tYN6Oa6AV/iC3y5IyOqJZlkGchO/TZ nXKDVLTRcU6UUW2E853DIE1GyE4C0dX4Zeo/z6XYX2xkf6uMm3Yv4fffUHrrtNJzCmH4 8ffQ== X-Gm-Message-State: ACgBeo0Ar86QJOZGBY6c4Qqt14KnNJng7bo5/mRHVzyN9LBCi4ldfX57 9u76JeLx8gKXvVlJKWsLwMC4E6iCsDc= X-Google-Smtp-Source: AA6agR7Zjm0a6dDy47TgZFwFrLnSH1RBWiJEP1JF2+WzkJzs2a7pahrySQrFD9Id5uBQt5d7er7XAKepdQM= X-Received: from glider.muc.corp.google.com ([2a00:79e0:9c:201:b808:8d07:ab4a:554c]) (user=glider job=sendgmr) by 2002:a17:906:cc13:b0:73d:d22d:63cd with SMTP id ml19-20020a170906cc1300b0073dd22d63cdmr36111625ejb.741.1662380774896; Mon, 05 Sep 2022 05:26:14 -0700 (PDT) Date: Mon, 5 Sep 2022 14:24:36 +0200 In-Reply-To: <20220905122452.2258262-1-glider@google.com> Mime-Version: 1.0 References: <20220905122452.2258262-1-glider@google.com> X-Mailer: git-send-email 2.37.2.789.g6183377224-goog Message-ID: <20220905122452.2258262-29-glider@google.com> Subject: [PATCH v6 28/44] kmsan: disable physical page merging in biovec From: Alexander Potapenko <glider@google.com> To: glider@google.com Cc: Alexander Viro <viro@zeniv.linux.org.uk>, Alexei Starovoitov <ast@kernel.org>, Andrew Morton <akpm@linux-foundation.org>, Andrey Konovalov <andreyknvl@google.com>, Andy Lutomirski <luto@kernel.org>, Arnd Bergmann <arnd@arndb.de>, Borislav Petkov <bp@alien8.de>, Christoph Hellwig <hch@lst.de>, Christoph Lameter <cl@linux.com>, David Rientjes <rientjes@google.com>, Dmitry Vyukov <dvyukov@google.com>, Eric Dumazet <edumazet@google.com>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Herbert Xu <herbert@gondor.apana.org.au>, Ilya Leoshkevich <iii@linux.ibm.com>, Ingo Molnar <mingo@redhat.com>, Jens Axboe <axboe@kernel.dk>, Joonsoo Kim <iamjoonsoo.kim@lge.com>, Kees Cook <keescook@chromium.org>, Marco Elver <elver@google.com>, Mark Rutland <mark.rutland@arm.com>, Matthew Wilcox <willy@infradead.org>, "Michael S. Tsirkin" <mst@redhat.com>, Pekka Enberg <penberg@kernel.org>, Peter Zijlstra <peterz@infradead.org>, Petr Mladek <pmladek@suse.com>, Steven Rostedt <rostedt@goodmis.org>, Thomas Gleixner <tglx@linutronix.de>, Vasily Gorbik <gor@linux.ibm.com>, Vegard Nossum <vegard.nossum@oracle.com>, Vlastimil Babka <vbabka@suse.cz>, kasan-dev@googlegroups.com, linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1662380776; a=rsa-sha256; cv=none; b=MuYu79c5/L24kcxBCZcmy9intTh13JuiUDEMAyU7XjZzmZRMCQwIZM3vJJWmVHvTtMHorG ydHpXOlt3Sy6Qw/7GUCesNViu+svjN/H5BPcpKT9hs5KrRO2yn76J+MAd0HoGpQeY6tNd8 31NGoYTS3yUjHhcJLDF/99RtI0kMEEc= ARC-Authentication-Results: i=1; imf25.hostedemail.com; dkim=pass header.d=google.com header.s=20210112 header.b=gykJQm16; spf=pass (imf25.hostedemail.com: domain of 35uoVYwYKCDMVaXSTgVddVaT.RdbaXcjm-bbZkPRZ.dgV@flex--glider.bounces.google.com designates 209.85.208.73 as permitted sender) smtp.mailfrom=35uoVYwYKCDMVaXSTgVddVaT.RdbaXcjm-bbZkPRZ.dgV@flex--glider.bounces.google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1662380776; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=T4yulc1U4RDI/lAlxqlpzG4AIUYO9fQrzg+B84ydySw=; b=YZEQ8o3SAFk+hRGZmYyjCTmxtTVadzebMaJrEy5hr7Xe5EBhHlFHc82X6/rORZzQhI+qS9 VmnX3IxRB27oBic1OtHuRDD9fzDleZqwRZCdNyBXU5xslGPwS89QZKeDDJijMIhmZclmX/ YQUAbAA05X9H7xG50SoIxciRfdoOIZY= Authentication-Results: imf25.hostedemail.com; dkim=pass header.d=google.com header.s=20210112 header.b=gykJQm16; spf=pass (imf25.hostedemail.com: domain of 35uoVYwYKCDMVaXSTgVddVaT.RdbaXcjm-bbZkPRZ.dgV@flex--glider.bounces.google.com designates 209.85.208.73 as permitted sender) smtp.mailfrom=35uoVYwYKCDMVaXSTgVddVaT.RdbaXcjm-bbZkPRZ.dgV@flex--glider.bounces.google.com; dmarc=pass (policy=reject) header.from=google.com X-Rspam-User: X-Rspamd-Server: rspam12 X-Stat-Signature: i1khscyegq36zsxosbbrfj3ptu8zgt7a X-Rspamd-Queue-Id: 40AA9A0080 X-HE-Tag: 1662380776-23203 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: <linux-mm.kvack.org> |
Series |
Add KernelMemorySanitizer infrastructure
|
expand
|
diff --git a/block/blk.h b/block/blk.h index d7142c4d2fefb..af02b93c1dba5 100644 --- a/block/blk.h +++ b/block/blk.h @@ -88,6 +88,13 @@ static inline bool biovec_phys_mergeable(struct request_queue *q, phys_addr_t addr1 = page_to_phys(vec1->bv_page) + vec1->bv_offset; phys_addr_t addr2 = page_to_phys(vec2->bv_page) + vec2->bv_offset; + /* + * Merging adjacent physical pages may not work correctly under KMSAN + * if their metadata pages aren't adjacent. Just disable merging. + */ + if (IS_ENABLED(CONFIG_KMSAN)) + return false; + if (addr1 + vec1->bv_len != addr2) return false; if (xen_domain() && !xen_biovec_phys_mergeable(vec1, vec2->bv_page))
KMSAN metadata for adjacent physical pages may not be adjacent, therefore accessing such pages together may lead to metadata corruption. We disable merging pages in biovec to prevent such corruptions. Signed-off-by: Alexander Potapenko <glider@google.com> --- Link: https://linux-review.googlesource.com/id/Iece16041be5ee47904fbc98121b105e5be5fea5c --- block/blk.h | 7 +++++++ 1 file changed, 7 insertions(+)