Received: by 2002:a05:7412:2a8a:b0:fc:a2b0:25d7 with SMTP id u10csp226585rdh; Wed, 7 Feb 2024 03:04:27 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCV8W1bys5UJq5lNve5/djJak0iBjWxUA9T3Fr9+w5owIatVdRT3wac01a8obiWZ9wp3bKvxME8aAlW20zCAbkYx30BQK4yMTjca9bM3IA== X-Google-Smtp-Source: AGHT+IFnttceJHSRJxQnioTLrWGrYpzkoXhp//Eu+GIQGOEY6+k5kcPdP1QZbsAZnH9WzPqOzbiA X-Received: by 2002:ac8:4e52:0:b0:42b:f094:f680 with SMTP id e18-20020ac84e52000000b0042bf094f680mr6971076qtw.54.1707303866927; Wed, 07 Feb 2024 03:04:26 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1707303866; cv=pass; d=google.com; s=arc-20160816; b=qx5HaCQSbbrUoHTM7ACztU9NmbfqitGHwabCf0eLZLTh1Femk/MHyG21Zx5PvSGCz0 p46bPdUsaH8OLLbeonO+FtAyh5dgOYanBELakBQsojv/XsKI6XGInv+AA4+vancbMnYP I34y48Xx5MaYp5F30y67GhPmCJCFZonBg5uXO0KMsRiNs/OGlrN+iTLe5N811vqhYLoG z3wSIVW2MeYwIfdKb54RD9m2k+wOdyVNQ0pj8qk3HcdCxtulg5C4fxugCaQ7g/8X53uz SMoUPpxn+uSZ4k5hlnE/9zNOykBtKG0Ch5aUA4SN/QgW+wzxwOuM8x4XXwy1tBGPQCby 0PmQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=in-reply-to:content-disposition:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:message-id:subject:cc :to:from:date:dkim-signature; bh=MkHJEMhdHIEDISZVoKhCE9ifS1ot8NgYUDuuTg1ODbU=; fh=1RT1wgo5TJ4ldODOKKM6M2tzZqHPNbA7u23RQBeUoek=; b=meZjQi2jk7OrtqKjN6rO1pwvnMJ/E7LZ9viBnLODNuWoBe5jZJnssT38CeULnJl7cA NkS2XgevZ8jrbDuapXpGZA3eGqnK9jyA386AuXgzhFSOvQf+WvuXEUe//zYAr14T8var RZeIrf4I03vCwDvHgyE8R3FLuIjOn6ttTOdAQxKVkGdgL4n5QwQoTEAY4wJ01InAemuU 9Ej1Z4AUHibm1tnUYFlrBkwaou4PNuT8wluhDGR/lCpUQyoTmNwM0lq3Pz/4IS84x5N7 lNtMQABxvlj1sG95/Ya9IbFtc5k6atgdVGOGC65nd0qIubRkn1SzsjgDtX80L5h4u+wF rFvw==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=RNBtpq1M; arc=pass (i=1 spf=pass spfdomain=chromium.org dkim=pass dkdomain=chromium.org dmarc=pass fromdomain=chromium.org); spf=pass (google.com: domain of linux-kernel+bounces-56355-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-56355-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org X-Forwarded-Encrypted: i=2; AJvYcCWb96UYe6/MXd8HWJTzlGeihoNrhDnVnuk3ha80terxT498HG1J0Q2JZAeNOTjXxBBcgnhaoYcag1E2zAzoWE1QNPPn/j2W4M5jGOr6yg== Return-Path: Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [2604:1380:45d1:ec00::1]) by mx.google.com with ESMTPS id m18-20020a05622a055200b0042c260b6b30si870380qtx.221.2024.02.07.03.04.26 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 Feb 2024 03:04:26 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-56355-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) client-ip=2604:1380:45d1:ec00::1; Authentication-Results: mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=RNBtpq1M; arc=pass (i=1 spf=pass spfdomain=chromium.org dkim=pass dkdomain=chromium.org dmarc=pass fromdomain=chromium.org); spf=pass (google.com: domain of linux-kernel+bounces-56355-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-56355-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id 7CAE01C2124E for ; Wed, 7 Feb 2024 11:04:26 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id E052F17C7F; Wed, 7 Feb 2024 11:04:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="RNBtpq1M" Received: from mail-il1-f175.google.com (mail-il1-f175.google.com [209.85.166.175]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 254FF17BCF for ; Wed, 7 Feb 2024 11:04:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.166.175 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707303860; cv=none; b=me9cHlf0mglNXEpY9VVTSKZ2oFzp8FDSu+74LQKeQUF38NqpTZswih5nN6c5WgF+F/QBxLGaqaynKWd4FH9WNjz7B552af7glj0d+ervnjzYG5gNAKPVIbSQgih+ViwdAY0GYCOt/BMg8FLTApNQbUyyDCKlvkPh6s2pR86Ob+U= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707303860; c=relaxed/simple; bh=CgYyRmc6Z59PnXZh+5ZKWs0+Cbn8qJv1WXKrOV0Or9o=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=Sk91bdRtvEr9Xf447UJlKnqXdGbu8xRiXgX1TagpOjzdwiAO9T1QNuyx+gsO9cXA/+jZrgFrcA5L08CHRIZdisvpMBWKXQvERJPgQWNr8yqmhU0SmI3vsxV7fVycRplBfYN+1y7ImovNlkb6NRBIVnJeFena/TVrqHYIWALbbwI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org; spf=pass smtp.mailfrom=chromium.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b=RNBtpq1M; arc=none smtp.client-ip=209.85.166.175 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=chromium.org Received: by mail-il1-f175.google.com with SMTP id e9e14a558f8ab-363c7d490d1so777095ab.0 for ; Wed, 07 Feb 2024 03:04:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1707303856; x=1707908656; darn=vger.kernel.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=MkHJEMhdHIEDISZVoKhCE9ifS1ot8NgYUDuuTg1ODbU=; b=RNBtpq1MRPESx57cDJ2wvt+fsfxaz6FtCznbReN75Ij/Ise8wkzw5yJuMiajsv14vq Ih8R64zS87/5xpfjgnzqnRwLse0rigqN+Qam00rj56JRkgt7I6gGiXb1xDdRrCFXelCx u4hAza/gL9vD8O41sEJ114ZzZui3d+yph9NSY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1707303856; x=1707908656; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=MkHJEMhdHIEDISZVoKhCE9ifS1ot8NgYUDuuTg1ODbU=; b=YhJLtBcK+a6DnPM7jwqpxf7Q7a4EMU3irCbsZGMTIO58xzIc8ZU/JN1JTEOvoPgjdn zL7TjrQoRtmO1W65H7TP8q0of6dQnspdJ0raGffTOvMlj1fWCS+nim8qotBab9F8uwSj C76ztseT8H7oYotY/NJ9+Q8GGs3BNdWHcdutSqOaxw9oAJMUkQanihnER9fXYGdjX8BW lTOIfwHrjfiLAVlr2moSs8g3QMhcXWINfPSw3UuhtX3XfhzXoJHdQf4d8kNaEfCFu2F4 I6j7n3Z5uKSxoefC1jVtKwEjY8FfBC5MYmY93tsxFuGJRNLe6E0KGr6GajdXoWxvZhBD tBzQ== X-Forwarded-Encrypted: i=1; AJvYcCXjjUEBs8bS/lBuaxox+o5NfAXq7jJNba7mnuUSgAIorkOwD4bcCo+yiLaL5p8nYm6uMzGyYTrJKO0pli8/8GgjFBQb4Nhqj7tNo8Ma X-Gm-Message-State: AOJu0YwjNODh4RL5brTmY9Rx4IMRXQBnoat1VYMHXjyDdakhtrUAvbHF h/jW4WpTCXtz2/wT/zB6aOtPIvMfyGbBQe78Ornhj6EnIDXrzCe9/+ucJ1iqGA== X-Received: by 2002:a92:c20f:0:b0:363:ad00:106d with SMTP id j15-20020a92c20f000000b00363ad00106dmr5585505ilo.4.1707303856225; Wed, 07 Feb 2024 03:04:16 -0800 (PST) X-Forwarded-Encrypted: i=1; AJvYcCWrtNEYtrYrUbd3WCx5d+Vo2gSvxdEHF0BNGt6ximizf7qYe7T5H46Ie55fL2VWgxMxlWduhoOX6KlMOKtsxeFyYCjnhIkE3L6KvmtJVxIpjw7kXgW5qPN+w4huuzEm3qwVbp0AVgQ1ZkASW5U90p88VrUkWp6nk5vR49oEi+InXGOlVot97XzK5pkmLoC/C2lIuxSGPyqlv0uv7XGoAEMGG6mOD7CY9rcJB8pP2E8YKfhqP27o1FFSVoC5YBVbtY5PZ9MkHM2h+wYCchXO4Cb0F8vo8CHqj9008WFYSz/M028lVxfT3MffozMwCJI64UcjTuNhYeBexPzgZrEmQuSK3FMTUJHePjnEMG8JGdN/epYhO8fGrZcF43GqGd7MGSkLs0TQbrG7Y1g3GzzCBrKf8uLtRggideexU9Q0w5aJ/L4dwMQvoBR9qCjBvFyTRh6Icke/q+ziPbcKh2mMkoOp3unEJyA0N6zOTMm/dlbK9WvXl3hPgy+yY0O9wlGZ62HqyqCbYDs= Received: from www.outflux.net ([198.0.35.241]) by smtp.gmail.com with ESMTPSA id ck4-20020a056a02090400b0059b2316be86sm1109248pgb.46.2024.02.07.03.04.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 Feb 2024 03:04:15 -0800 (PST) Date: Wed, 7 Feb 2024 03:04:14 -0800 From: Kees Cook To: Justin Stitt Cc: Marco Elver , Miguel Ojeda , Nathan Chancellor , Peter Zijlstra , Hao Luo , Andrey Konovalov , Andrew Morton , Masahiro Yamada , Nicolas Schier , Nick Desaulniers , Przemek Kitszel , linux-kernel@vger.kernel.org, kasan-dev@googlegroups.com, linux-hardening@vger.kernel.org, linux-kbuild@vger.kernel.org Subject: Re: [PATCH v3] ubsan: Reintroduce signed overflow sanitizer Message-ID: <202402070255.36699AE147@keescook> References: <20240205093725.make.582-kees@kernel.org> <20240207014528.5byuufi5f33bl6e2@google.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240207014528.5byuufi5f33bl6e2@google.com> On Wed, Feb 07, 2024 at 01:45:28AM +0000, Justin Stitt wrote: > I wouldn't mind also seeing a test_ubsan_div_overflow test case here. > > It has some quirky behavior and it'd be nice to test that the sanitizers > properly capture it. > > Check out this Godbolt: https://godbolt.org/z/qG5f1j6n1 > > tl;dr: with -fsanitize=signed-integer-overflow division (/) and > remainder (%) operators still instrument arithmetic even with > -fno-strict-overflow on. > > This makes sense as division by 0 and INT_MIN/-1 are UBs that are not > influenced by -fno-strict-overflow. There is actually already a test_ubsan_divrem_overflow, but because the failure modes result in a trap even without the sanitizer, it's disabled in the test. For testing a crashing mode, it might be interesting to add it to LKDTM, which is the crash tester... > > Really though, the patch is fine and the above test case is optional and > can be shipped later -- as such: > > Reviewed-by: Justin Stitt Thanks! -Kees -- Kees Cook