Received: by 2002:a05:6a10:6744:0:0:0:0 with SMTP id w4csp5782754pxu; Thu, 22 Oct 2020 10:54:18 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzzwf7in1PElgqR2J+nWZHs0WMixHlk8p1Vwk+SkUDfHJ1z8NP/5Q91uqpMxAXjoZ7StXnt X-Received: by 2002:a17:906:3799:: with SMTP id n25mr3363415ejc.6.1603389258517; Thu, 22 Oct 2020 10:54:18 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1603389258; cv=none; d=google.com; s=arc-20160816; b=NSQYjtQP9EzckKOYMzaEpiZ3eQMBzk65wlulfuLpP0K70Wxb7DtwmnUKULvnobl5hT prCLrmyNNF34fTE+rTcUkzXkYXBQMntrXcHJA70bh/9L8vkDGAttogtwNAXnF6oHFDAw gYyHyTeXGIe77+diHXCiGsWH1FvvfvVAeHARcTgJ0SCYnC8DPPxNZ7AFuChvfhvXsp0C guKRzBF7wX6lBYrPDpP2xz7dF4tlG5dsXxDWjMQMzzwAIYFWFOVN5QCZ1WSG3Pji+Uyt vpJMq12PLRwlXLi9RsTHpbSv8T9kgaeQ/Q6ocCBUwP6HVXyJloWFwhBxjVvIUH/PRFZk 1pYQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=8+m1UPja2DtoudA/ILdxkbDDyCOqxZ6QYeC54vUwf94=; b=yFhGro8oq0odL6R0WTm5x1E/UgAfvCg5OfsQGrP4hGbdNWFEM1o2zPoWHWV5feVNQq lH+EXtmROtX/jnwSNotvExg40XB718UTKxrc8eoCRDZrGl8oKJNRkaQ/5DtIdb5jiBvy esLwQp/KVSUmrTCHC3AMnbdxZYzLk1SRSYvBlrsXVoqT2FP0U+SB7Vk/fJ8GTpb94Akm n8T7go9128b1LongEWRVHw+Z3mRWgXneos7HEgmgT4qG2N6UQg+PMPv4nov8hmvxbpnA vClRF9LC83RiPo6Ii4pwuR8dlonma9JMQobCC40dUXRIMFv33tbJJxgldRj9DgoBzjaT pJfA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=JzgkLntJ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id p14si1408809edx.418.2020.10.22.10.53.56; Thu, 22 Oct 2020 10:54:18 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=JzgkLntJ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2895257AbgJVPCW (ORCPT + 99 others); Thu, 22 Oct 2020 11:02:22 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38500 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2894695AbgJVPCV (ORCPT ); Thu, 22 Oct 2020 11:02:21 -0400 Received: from mail-qk1-x744.google.com (mail-qk1-x744.google.com [IPv6:2607:f8b0:4864:20::744]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 767C5C0613CE for ; Thu, 22 Oct 2020 08:02:21 -0700 (PDT) Received: by mail-qk1-x744.google.com with SMTP id b69so1707648qkg.8 for ; Thu, 22 Oct 2020 08:02:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=8+m1UPja2DtoudA/ILdxkbDDyCOqxZ6QYeC54vUwf94=; b=JzgkLntJtddfrInFlm/sgjQLu1IuqjTWWy3cBno0A6VYT3Jk8Bgnu6QMBtc+1iegK8 ACemAdTefokZxErQh7cZWUljSbsxKYZp8b6hifvScBhYSkbkBJgHyUmVhg7bem9hvxnE mePqu6hJBHAX7/7LcVzbCbGOl5FFWtsQMBCBA/pi8MrIpNTM+ZVJsuPLRdoUdZCmuJZG iHTTMmgRjYvOXSFjs6IwyKEYXYEDxoCpY39arxXkQY4kSfAAHqihTIUAOiYVNteYTWEZ LR/8ppTZnPrVJXRykM8Vn/IZUDtvXYK+NHCvNu3QgsSjw9kv5OBvCzoKT6m1VBg+B50/ 5COw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=8+m1UPja2DtoudA/ILdxkbDDyCOqxZ6QYeC54vUwf94=; b=CfXtUQheGJR/jpKgEDMqCEkiit3kmsYZnGJeoNT46u35wiBSaNeH2jjM+x06L1oKgo JXcPtAGiqCBXQFVtHQEbbEjC8dXdpRAWBVTL6DJU97qHQqZ/ELCLcwYzU9kMk2ct0WoR 0bpV5qAeZqEI/e+BWqOt1efhp3HthfL+qFhTpwzdqyqDVWQ7QP5xPhenQsh9UbVWeBEz 7BWciHv6jtkEJuoV3uXutY7JvURY3xzluDzZW2/0HULvE5qH64FPPSkF0KYUOV5qBrma 75vD7QMXcyalBIMDlxmQvL5BrZWbZ9lWhbRgGRwbfYAcZZYs+0xqlqe41aITgWDdaGHK G9Xg== X-Gm-Message-State: AOAM531INzgVtkf2zflSMHJNVS0ymgvm24ETmfHCQPhbYTlh6MIcvnVv lZxRzrzkxmX/LCkfNj7utujxUrP4fB+hreETiyBnWw== X-Received: by 2002:a37:9301:: with SMTP id v1mr2908065qkd.350.1603378940363; Thu, 22 Oct 2020 08:02:20 -0700 (PDT) MIME-Version: 1.0 References: <20201022114553.2440135-1-elver@google.com> <20201022114553.2440135-2-elver@google.com> In-Reply-To: <20201022114553.2440135-2-elver@google.com> From: Dmitry Vyukov Date: Thu, 22 Oct 2020 17:02:09 +0200 Message-ID: Subject: Re: [PATCH v2 2/2] kcsan: Never set up watchpoints on NULL pointers To: Marco Elver Cc: "Paul E. McKenney" , Mark Rutland , kasan-dev , LKML Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Oct 22, 2020 at 1:45 PM Marco Elver wrote: > > Avoid setting up watchpoints on NULL pointers, as otherwise we would > crash inside the KCSAN runtime (when checking for value changes) instead > of the instrumented code. > > Because that may be confusing, skip any address less than PAGE_SIZE. > > Signed-off-by: Marco Elver Reviewed-by: Dmitry Vyukov > --- > kernel/kcsan/encoding.h | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/kernel/kcsan/encoding.h b/kernel/kcsan/encoding.h > index f03562aaf2eb..64b3c0f2a685 100644 > --- a/kernel/kcsan/encoding.h > +++ b/kernel/kcsan/encoding.h > @@ -48,7 +48,11 @@ > > static inline bool check_encodable(unsigned long addr, size_t size) > { > - return size <= MAX_ENCODABLE_SIZE; > + /* > + * While we can encode addrs + * pointer deref inside KCSAN. > + */ > + return addr >= PAGE_SIZE && size <= MAX_ENCODABLE_SIZE; > } > > static inline long > -- > 2.29.0.rc1.297.gfa9743e501-goog >