Received: by 2002:a05:6a10:6744:0:0:0:0 with SMTP id w4csp5866802pxu; Thu, 22 Oct 2020 13:07:41 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwMAwhHb5mBNrzg7w2xeP59PRbWT97DgPLEF9aukVUnewbsatH4g1d4WCxvrJt09FatLE5j X-Received: by 2002:aa7:ca52:: with SMTP id j18mr3674398edt.147.1603397260824; Thu, 22 Oct 2020 13:07:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1603397260; cv=none; d=google.com; s=arc-20160816; b=QMY4GmPcLuwV1yE3c4H17ICmiXxFESnZFjM4u1tZOGNI82K5DS6J8Pj1zwmuzpEElL 9drFxZjpmsr7chY6JAYTFHZP3iViHQe3yeTmamPvZujfzry3Co6s3JoYEx/7/PcsSsDX nsQRBuu5nJsIaJ1BZyglKjmHVSZ2aO16t9shujL2M1uhL7Ko67OMHewwfEYo8TI40yKO AduNpg9mcfjE+aqdhyCye2+y6Pt/LFjAWtXt+sdgljFlVJxYUi8Kmo1V5e7EWJZp/oki ZAChBdWmrfuSD9mJ2iM47DPFV3OEATF1EFWnjMh8XdbOIOV3bh1fiIfL97rI56HT1VWl Bazg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:mime-version:message-id:date :sender:dkim-signature; bh=g50aig4WnJQhcCcuXsue/eYMQH3ofUeze+geEk++93U=; b=pd/2ACZt/NPQJYCwm9zXCWeQRcxf7tbWi8cT82tqvgKabTvWGgI2bpbXifsGOE7U/M fJnU3lvYhwin/i58zx4DVI2wbC4FJCpRljI72/SZBkMWyKFaJUDd7EOCg/wkUY/1pnoJ cE+5l4rPPcI+Mxfjt2OQc/gGVU89zRX2zYfZifyKeokHinPbFzdNn/so56gKbN0MYfOh aU62q6gnyGW+IQ9LouGboQDENMCWPP1DBGp1tlK1cEiVIztzl4UrHHJ/dofnzaR4eBEF /+lJuLVMMh6xrwE2VkpUeUoEbNSutzzBYy9j3XBWrq11pCfo7x4EHoX7jOnBWQ2Ip8Jw k5xg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=EmL8KR1E; 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 q1si1618245edw.594.2020.10.22.13.07.18; Thu, 22 Oct 2020 13:07:40 -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=EmL8KR1E; 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 S2897273AbgJVLaE (ORCPT + 99 others); Thu, 22 Oct 2020 07:30:04 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33704 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2897270AbgJVLaD (ORCPT ); Thu, 22 Oct 2020 07:30:03 -0400 Received: from mail-qt1-x849.google.com (mail-qt1-x849.google.com [IPv6:2607:f8b0:4864:20::849]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 43F4EC0613CE for ; Thu, 22 Oct 2020 04:30:03 -0700 (PDT) Received: by mail-qt1-x849.google.com with SMTP id b12so806048qte.11 for ; Thu, 22 Oct 2020 04:30:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=sender:date:message-id:mime-version:subject:from:to:cc; bh=g50aig4WnJQhcCcuXsue/eYMQH3ofUeze+geEk++93U=; b=EmL8KR1EYemTfE+yaMAAqD9uhsf7c1TN18IfB+hDqP2t/xR4xVtNJIpEgh0vvRSB7H yIFZ5RmJFTACKp5ALHzjuLgtciX1z2PM+QuELDtnDBNKIx3oPQuqi+z98+YelxwXVOwN 3Adv9SPIir+HlZ/hEszX86FdC7CZzeHUkMMsIBR5EFWNVe9dsUR1Ycq9lFhBSy58ObbZ nkdFo5Zx+uKCON+EH1uyw/M72H55uOxgKtdxJNvG5P+tiFs74vDVld2Jx2vREImRDj7+ 1ulKgioLCrEXWmbm7tHvcZxX5GipekTwxXUU81sdbWQf3kOXU7tP2XRwnJeHXGN+Vnty FrSQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:date:message-id:mime-version:subject:from :to:cc; bh=g50aig4WnJQhcCcuXsue/eYMQH3ofUeze+geEk++93U=; b=YpPV2rGy3rsB3qdWSJ9BACfCfpRsXxy3YDv2QXdsKuiSej9028cSRvyPrV+vFyDw8n w+6DllfHrEI5phX0fA7VbClOO+mlqWpq+so+7W3nhLrYtgw2IvtJfUn9JZnFKP4MI6s5 J3BU9R2wjwKN3n/60Omh/VeYKIM2+BNTQMyFvofzsrb3k1yI3a72FWa8n1hOdqxWkuy7 0tQxkygeejU2i/190qwS+LhxXy2Bpq8cIQGrUJYXvQdbcaOQf5BnIaZSwUvPdDp6JLw7 ph1qUVcAqFYEOkQVZ2uVu3djvauocBPWr5wSAr8BKVn6Xa3oMcI0qUTDNkZ4gbqQ4FPQ po1g== X-Gm-Message-State: AOAM533gXLt+p99tq39oU/N/7bebiIBi/d9IhGAHiJO75BV6Rvto8Lq7 DwSSaJhKLmTMdb+WOBMysGmtF0IfBw== Sender: "elver via sendgmr" X-Received: from elver.muc.corp.google.com ([2a00:79e0:15:13:f693:9fff:fef4:2449]) (user=elver job=sendgmr) by 2002:ad4:4e0a:: with SMTP id dl10mr1790315qvb.41.1603366202277; Thu, 22 Oct 2020 04:30:02 -0700 (PDT) Date: Thu, 22 Oct 2020 13:29:56 +0200 Message-Id: <20201022112956.2356757-1-elver@google.com> Mime-Version: 1.0 X-Mailer: git-send-email 2.29.0.rc1.297.gfa9743e501-goog Subject: [PATCH] kcsan: Never set up watchpoints on NULL pointers From: Marco Elver To: elver@google.com, paulmck@kernel.org Cc: mark.rutland@arm.com, dvyukov@google.com, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 --- 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= PAGE_SIZE && size <= MAX_ENCODABLE_SIZE; } static inline long -- 2.29.0.rc1.297.gfa9743e501-goog