Received: by 2002:ab2:2994:0:b0:1ef:ca3e:3cd5 with SMTP id n20csp319105lqb; Thu, 14 Mar 2024 12:05:26 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCXMVLD/p+1M7LtcqEAMvONaDfWUqe8EhK+L5HFURXzhClcKZgFQfe1MTWkYZPwhjE2FJCNFQBn7pKo0RxJmde5XyIyXd2wQQFUBByIqtg== X-Google-Smtp-Source: AGHT+IHcleZ+b8XMnfXa0ZMPEcZGP6Bq7tcAmUKf6Jf3H5sNkZDkMghTZmI0q2YemdF0LecRu08A X-Received: by 2002:a17:902:e881:b0:1dc:5d2e:c18c with SMTP id w1-20020a170902e88100b001dc5d2ec18cmr1043291plg.67.1710443125815; Thu, 14 Mar 2024 12:05:25 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1710443125; cv=pass; d=google.com; s=arc-20160816; b=rgsiG0too8SJzGlesGWyn7MGMXMWDZAwbHhX6bFL3IR72OPiuvHKPBP8+X9Ks4de1k l3u56A1xFfcBuyU7p7DFCNzxMZuxlkx1J4AxMzhUWrvI2qq59iTonYRyL1N0OAm1GBtY s997kmJTizcOOrAq2vVgdlnxoQs1pzAaXEHK5PHbwYqHHMtYx2mSr7C4SzhnyuHNPiAl LE4y46JVEiRvaF9w3AtadWDKXFbwDJU1MUAvGOsToBCp/AL6wJ4JgYHbK0n0SECPPhJA Fifhrf3IEpTLKFQErrWy5CRNeuLPyYETYY5/RPv+XNk/2It1DPGN+3ijIAvqCjMw6Je0 s+XA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:list-unsubscribe:list-subscribe :list-id:precedence:dkim-signature; bh=depVmA6uSnLT9/3+j2aUB2+F05F8STMINAi2XuQGOKU=; fh=oSpYNbNPh3AjSm0g4vBeefHLD2TQSOaq8GUgryklwS0=; b=gjHoMfmN2mqANDUrnm+TutCuVtdEYCvh2G/r0R12fUkm1Vtfnc8eDTtE9FkJhGPMbH 5VaCOPDs5Yj2sRHl7fKVVjmztwnIq4q+HqAwQvOKHwrr61Wpbgpcq6cudpjzfdJhGgx+ cIV13F5YQ+chK7gpY/va9ljzp46WvzuRZQnwzJTcWz24BkTcaHQ2OSr9M9bCzqBMYoac qJ7dvZ/9o2P98QscoKGO2emoemauzrYLHyE5jV+oTApQyaLDhXkC7ejibopDMnnYhug4 T7zSk1LqPzRNCnSghk8WIi4G0nUEcABX6OPr2Q8CTBcCAS6644DoWsqr7GTIbnMRaD8s npkA==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b="Qs0NxC+/"; arc=pass (i=1 spf=pass spfdomain=google.com dkim=pass dkdomain=google.com dmarc=pass fromdomain=google.com); spf=pass (google.com: domain of linux-kernel+bounces-103712-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-103712-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [2604:1380:45e3:2400::1]) by mx.google.com with ESMTPS id be5-20020a170902aa0500b001dde10a6b04si1906529plb.187.2024.03.14.12.05.25 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 14 Mar 2024 12:05:25 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-103712-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) client-ip=2604:1380:45e3:2400::1; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b="Qs0NxC+/"; arc=pass (i=1 spf=pass spfdomain=google.com dkim=pass dkdomain=google.com dmarc=pass fromdomain=google.com); spf=pass (google.com: domain of linux-kernel+bounces-103712-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-103712-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com 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 sv.mirrors.kernel.org (Postfix) with ESMTPS id 78088282DE7 for ; Thu, 14 Mar 2024 19:05:25 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id B46EF74E3F; Thu, 14 Mar 2024 19:05:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="Qs0NxC+/" Received: from mail-qt1-f174.google.com (mail-qt1-f174.google.com [209.85.160.174]) (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 5030243AD7 for ; Thu, 14 Mar 2024 19:05:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.160.174 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1710443117; cv=none; b=OCJY4xFNgRHegn9ZfbUgL4RkDZowz0xp98i5HGRKbu/m+X41w4qW6M4tVJAsgCVEvG7clWmvitKEb8fb3Q9+9pWk7YjVNN1nHKJDu2UKwP4pXD6jqCFm2vDCjyHbYKVH0v8yfyXi0wRXV2i8EhdAcQQufpY/kwkPwE/+7lTqxzo= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1710443117; c=relaxed/simple; bh=BVOV+7HgAZGv2ZjMJbzwEfbfwQFctfQ57pFLSILJMZQ=; h=MIME-Version:References:In-Reply-To:From:Date:Message-ID:Subject: To:Cc:Content-Type; b=XNvMazhfji4z65efGLw0PcIk2q9eeyKXDD54fw3cwWCv3n8GMSBYF2wRQN0FF86gkpt6crQp8ZIKIR5yvpa7ui+Iiuju2PAPEn6XKqPkZYcCBKy7zcNCui5Uv3Jd5j9QtwAG4IHY53kEfo68IEF7SYzOINVx4mxOHvO0BNDjjjY= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=Qs0NxC+/; arc=none smtp.client-ip=209.85.160.174 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=google.com Received: by mail-qt1-f174.google.com with SMTP id d75a77b69052e-42ee0c326e8so56271cf.0 for ; Thu, 14 Mar 2024 12:05:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1710443115; x=1711047915; darn=vger.kernel.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=depVmA6uSnLT9/3+j2aUB2+F05F8STMINAi2XuQGOKU=; b=Qs0NxC+/HkQJHMTivVd1stbSv2rnA81sOXhfkzPUTDeEe/JVum5T6KwBwHf74LkD2s bTc4dTzqUswjC0SVsKnjYah1p2aLTuLsWjnHujAVmOYVcIAHmRgtRVdLNOItQoFkTjNA FEPbEdvFrK3kwTlwbY0QW6Pp05ol11Lbldy3aaJow7tE24Winwn/c1bVlXFKOjb7oHkO y8WTguM4d3WXZ8NGCvSKGNDxNZinhLdS3NM3YX2qTmdzZ1ZEhznjUdMea3OjN9J9ESug N0WzGqc+cXTxcx6rvpVdXFiQlJb0k98wcDorSgFzKHG681SSR3OOpfknZMCJWr8vVtbJ 2s9w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710443115; x=1711047915; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=depVmA6uSnLT9/3+j2aUB2+F05F8STMINAi2XuQGOKU=; b=CgSWn6HqZG3B9A4abhPzBeGDtIiFLw9AoNH0UGDfKJfZyFmwE9h8cjGXIUxk13oEEC nJKmqPVr4a55X4GhHdlpXsARMzSMLaYJMyMMjsALx00176QsyKIX1JRhX8QiC+f3qiGM OGzlJewYPfHRipV6oGv5wgXA53tLsuU/pddKHEYei/B8UjNQUzsSIAYxCiqiovZtaN8V uPVWJ4HCH0+dPi1H/YRIzKqvomtIOZo2fB+be9rzcFNGz64Cgm2R0qVS8IJw8NbYMw/i 0n/7Na+QvKYSdW4vEfHw2RJCG2azeAhKt+OotUqR+Hu5FECVuxh30CJFWLI+GXIXPM9E zOBQ== X-Forwarded-Encrypted: i=1; AJvYcCXbmcrDfXR15IOGII+0/DNX/SI13xTEdpox5hdA7wGclCIvJd/sVkAfaWuR+LdvAVXB24StuvKcoIStpTYlejZ3m9YH1q0NA235tP4v X-Gm-Message-State: AOJu0Yy7iNCPamjQmgHad/qu+JbHsMxQNSTKJK0AZmDt0fzUGS2KXild cJOKa2CU9ipHk6PDuBLi5Wq4nY/45JUxDAaFlR8Aytg6CHBuoQvCI8WxQDbk3vquX7xQG5id01R pUqdlfNVR+k2ZwLHmyJR1cIECKV/ua/1EWCjU X-Received: by 2002:ac8:7778:0:b0:430:a909:fb32 with SMTP id h24-20020ac87778000000b00430a909fb32mr117698qtu.13.1710443115035; Thu, 14 Mar 2024 12:05:15 -0700 (PDT) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 References: <20240313210124.2858729-1-linux@roeck-us.net> In-Reply-To: <20240313210124.2858729-1-linux@roeck-us.net> From: Rae Moar Date: Thu, 14 Mar 2024 15:05:03 -0400 Message-ID: Subject: Re: [PATCH] kunit: time: Add faster unit test with shorter time range To: Guenter Roeck Cc: John Stultz , Thomas Gleixner , Stephen Boyd , linux-kernel@vger.kernel.org, Daniel Diaz , Shuah Khan Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Mar 13, 2024 at 5:01=E2=80=AFPM Guenter Roeck = wrote: > > Commit a547c4ce10bd ("kunit: time: Mark test as slow using test > attributes") marked the time unit test as slow. This means it does not > run anymore if slow tests are disabled. This reduces test coverage and > is thus undesirable. At the same time, the test currently covers a range > of 160,000 years, which has limited value. > > Add additional test case covering a total range of 1,600 years. This test > takes less than a second to run even on slow systems while still covering > twice the leap year calculation range of 400 years around the center date= . > This test can run even with slow tests disabled. Hello! I really like this addition of another time range test. This looks good to = me. Thanks! -Rae Reviewed-by: Rae Moar > > Cc: Rae Moar > Cc: Shuah Khan > Signed-off-by: Guenter Roeck > --- > kernel/time/time_test.c | 35 +++++++++++++++++++++++++++-------- > 1 file changed, 27 insertions(+), 8 deletions(-) > > diff --git a/kernel/time/time_test.c b/kernel/time/time_test.c > index 3e5d422dd15c..15c6f3a5e73c 100644 > --- a/kernel/time/time_test.c > +++ b/kernel/time/time_test.c > @@ -47,18 +47,18 @@ static void advance_date(long *year, int *month, int = *mday, int *yday) > } > > /* > - * Checks every day in a 160000 years interval centered at 1970-01-01 > + * Checks every day in a specified interval centered at 1970-01-01 > * against the expected result. > */ > -static void time64_to_tm_test_date_range(struct kunit *test) > +static void time64_to_tm_test_date_range(struct kunit *test, int years) > { > /* > - * 80000 years =3D (80000 / 400) * 400 years > - * =3D (80000 / 400) * 146097 days > - * =3D (80000 / 400) * 146097 * 86400 seconds > + * years =3D (years / 400) * 400 years This is tiny but if there is another version, I find this comment a bit confusing. Could you change this to maybe be "total seconds =3D" instead of "years =3D" because years is used as a unit on the right side of the equation? > + * =3D (years / 400) * 146097 days > + * =3D (years / 400) * 146097 * 86400 seconds > */ > - time64_t total_secs =3D ((time64_t) 80000) / 400 * 146097 * 86400= ; > - long year =3D 1970 - 80000; > + time64_t total_secs =3D ((time64_t) years) / 400 * 146097 * 86400= ; > + long year =3D 1970 - years; > int month =3D 1; > int mdday =3D 1; > int yday =3D 0; > @@ -85,8 +85,27 @@ static void time64_to_tm_test_date_range(struct kunit = *test) > } > } > > + /* > + * Checks every day in a 1600 years interval centered at 1970-01-01 > + * against the expected result. > + */ > +static void time64_to_tm_test_date_range_1600(struct kunit *test) > +{ > + time64_to_tm_test_date_range(test, 800); > +} > + > + /* > + * Checks every day in a 160000 years interval centered at 1970-01-01 > + * against the expected result. > + */ > +static void time64_to_tm_test_date_range_160000(struct kunit *test) > +{ > + time64_to_tm_test_date_range(test, 80000); > +} > + > static struct kunit_case time_test_cases[] =3D { > - KUNIT_CASE_SLOW(time64_to_tm_test_date_range), > + KUNIT_CASE(time64_to_tm_test_date_range_1600), > + KUNIT_CASE_SLOW(time64_to_tm_test_date_range_160000), > {} > }; > > -- > 2.39.2 >