Received: by 2002:a6b:500f:0:0:0:0:0 with SMTP id e15csp938030iob; Fri, 13 May 2022 17:06:52 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxoXOOZKdN5XowaV3EeUJGo+P77JMW177BmvW/kTQcUvy2IWoKWEjHqwj6fg9fHq//ku6QG X-Received: by 2002:adf:ba8f:0:b0:1e9:4afb:179b with SMTP id p15-20020adfba8f000000b001e94afb179bmr5768678wrg.57.1652486812429; Fri, 13 May 2022 17:06:52 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1652486812; cv=none; d=google.com; s=arc-20160816; b=I3P6gqepJq9c2bgnZHgN9Ylk1sZWGUA991pXGclyeNGmARUk64wVvKNHBxdW1GIfdZ wRjb9fdzbVxNR1V74w4ldRxqIb+ADST7OV324KH20lowiS4IV+2x1gX/41aLTmXCAyZJ JEHeO98S2YztUz9yzj9d9IKPlqOMR0sLbwQKLUjmeteFUvVYMIxatCGOFsEE+HObt0c8 5une62Qow0kik4Ko8uP/KQn4EWUoDmEPJX+294cbB4xqANJg4/V7NVRG0C0nybEEt7pL Sei5gR6BEgSFnwoOKaRikVIL/BqSIQBa+g+U+s3MaDMVi+W9hpEWvYY1GckdCRCEekrO gcCw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:mail-followup-to:message-id:subject:cc:to:from:date :dkim-signature; bh=KUjfW/kaHDRwhWp5Rt/2AgtSuQq/hXyzExdN5I7ro90=; b=cIK/1i1Vf9D9ssgyd67zxl2DGem3UIEDacoTg/TePzqpdVytVSOJZOBrHbcWcYKzes sPeluokevg0TpxBR2Yj18c/Yk2hYOC9A+inx3o8ZFt9xjjBPVoqJ3rJcbQo3vhXtO5lA Da4s2lZD0wPfHtDn8a5+xtFBJwHjdX3X2CHpKaWGePtK4aheM7WuxmaV0FPyV1OW4Z/O fofGYvxZDatMRVEleKRx/5M394zuJ3/7YrUUMQYJP1/p+BQvCu4UDnRm4sb8RzAsaxpI HHA28+4pElUWbyqiKy0ndgmlkBAIsQpnqO2JAgAJatkgmbr+hQz/GXT4DlBSkpAZSQ9g 5HCg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@ffwll.ch header.s=google header.b=N5Sewa0q; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [2620:137:e000::1:18]) by mx.google.com with ESMTPS id o14-20020a5d648e000000b0020adc2b1d9esi4610328wri.188.2022.05.13.17.06.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 May 2022 17:06:52 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) client-ip=2620:137:e000::1:18; Authentication-Results: mx.google.com; dkim=pass header.i=@ffwll.ch header.s=google header.b=N5Sewa0q; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 6D2492D9E2B; Fri, 13 May 2022 16:09:19 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1347056AbiEKTkE (ORCPT + 99 others); Wed, 11 May 2022 15:40:04 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37684 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1347045AbiEKTjx (ORCPT ); Wed, 11 May 2022 15:39:53 -0400 Received: from mail-ed1-x52e.google.com (mail-ed1-x52e.google.com [IPv6:2a00:1450:4864:20::52e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 52E5D219F69 for ; Wed, 11 May 2022 12:39:52 -0700 (PDT) Received: by mail-ed1-x52e.google.com with SMTP id d6so3760595ede.8 for ; Wed, 11 May 2022 12:39:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ffwll.ch; s=google; h=date:from:to:cc:subject:message-id:mail-followup-to:references :mime-version:content-disposition:in-reply-to; bh=KUjfW/kaHDRwhWp5Rt/2AgtSuQq/hXyzExdN5I7ro90=; b=N5Sewa0q9eHV45UM94+DzpGvQdCTPLlQVm2dEzNxjvomA5nCkkBrjpYNctI7qVfxDw zTTnnDEJyOsSB1lBbLOg8zLzUazdA4CE5/w+5mlE77v9ce3pHkQQltOb3x41srT+4OrW xrFq9MjViOUDiGbXn7gV83kszXNflH/WBLH4k= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:from:to:cc:subject:message-id :mail-followup-to:references:mime-version:content-disposition :in-reply-to; bh=KUjfW/kaHDRwhWp5Rt/2AgtSuQq/hXyzExdN5I7ro90=; b=24LVyffeAyNkIXrczj+FkjdoouvcBefRRtHwFeT5UPBegu3owQ0H+GdrHkSLkLUp7t Yy0fYA8Et9wQJM4am5G1O/9Xyc0mVw0sN1UqNEZm0pM8EBS7S20IE0l8ZdKD3B5QHkYN mYdtj9XZDp/q6877TLHLLku5PP9TEw+g/YJfWgGhwdBea6rFq/NVh8ixdBZcHBOgcQ/w fO6plsMoD/FhRbLkazpKx/okVgXxJfkBg5BJsPH0rGr1QcKGNf8jZBrxhrqM2yF7xctO /t2nNFEMxbR6ToM5EiVQIo//6im9EGAEH5TwGsyIhgUmLe4psYK20+DPKYQ/FCKI2NSk fOlg== X-Gm-Message-State: AOAM532Td4skQfArc0O5D1XNKlmyjD5CLaolM1IBfWlLzipQIOyRKqon 4l57U8Y/UFmLM4K5jhabrduRhg== X-Received: by 2002:a05:6402:2932:b0:425:d7b3:e0d1 with SMTP id ee50-20020a056402293200b00425d7b3e0d1mr30745307edb.141.1652297990866; Wed, 11 May 2022 12:39:50 -0700 (PDT) Received: from phenom.ffwll.local ([2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa]) by smtp.gmail.com with ESMTPSA id h11-20020a170906828b00b006f3ef214e44sm1295729ejx.170.2022.05.11.12.39.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 11 May 2022 12:39:50 -0700 (PDT) Date: Wed, 11 May 2022 21:39:48 +0200 From: Daniel Vetter To: Linus Torvalds Cc: Dave Airlie , Tomeu Vizoso , Greg Kroah-Hartman , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , Daniel Vetter , Jonathan Corbet , Rob Clark , Sean Paul , Abhinav Kumar , "open list:DOCUMENTATION" , linux-arm-msm , LKML , dri-devel , freedreno Subject: Re: Adding CI results to the kernel tree was Re: [RFC v2] drm/msm: Add initial ci/ subdirectory Message-ID: Mail-Followup-To: Linus Torvalds , Dave Airlie , Tomeu Vizoso , Greg Kroah-Hartman , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , Jonathan Corbet , Rob Clark , Sean Paul , Abhinav Kumar , "open list:DOCUMENTATION" , linux-arm-msm , LKML , dri-devel , freedreno References: <20220510070140.45407-1-tomeu.vizoso@collabora.com> <20220510141329.54414-1-tomeu.vizoso@collabora.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Operating-System: Linux phenom 5.10.0-8-amd64 X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RDNS_NONE,SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, May 11, 2022 at 10:33:06AM -0700, Linus Torvalds wrote: > On Tue, May 10, 2022 at 10:07 PM Dave Airlie wrote: > > > > > And use it to store expectations about what the drm/msm driver is > > > supposed to pass in the IGT test suite. > > > > I wanted to loop in Linus/Greg to see if there are any issues raised > > by adding CI results file to the tree in their minds, or if any other > > subsystem has done this already, and it's all fine. > > > > I think this is a good thing after our Mesa experience, but Mesa has a > > lot tighter integration here, so I want to get some more opinions > > outside the group. > > Honestly, my immediate reaction is that I think it might be ok, but > > (a) are these things going to absolutely balloon over time? > > (b) should these not be separated out? > > Those two issues kind of interact. > > If it's a small and targeted test-suite, by all means keep it in the > kernel, but why not make it part of "tools/testing/selftests" > > But if people expect this to balloon and we end up having megabytes of > test output, then I really think it should be a separate git tree. > > A diffstat like this: > > > 7 files changed, 791 insertions(+) Yeah I guess it's good to have some numbers for where this might go. Good comparison is probably mesa3d, since it's the same-ish people doing the same-ish ci on the same-ish infrastructure, just the userspace part of it. mesa$ git ls-files | grep ci | xargs cat | wc -l 123077 mesa$ git ls-files | grep ci | wc -l 421 Compared to drivers/gpu it's really not much, and mesa is about the size of drivers/gpu if you exclude the massive amount of register headers from amd. And I guess if we do stuff like result file compression like you mentioned it should be quite a bit less even. So yeah if this does take off it wil be substantially more, but I don't think it'll ever get to a point where it'll swamp code changes. And if it does that's kinda a solid indicator that something really wrong is going on. > is not a problem at all. But I get the feeling that this is just the > tip of the iceberg, and people will want to not just have the result > files, but start adding actual *input* files that may be largely > automated stuff and may be tens of megabytes in size. > > Because the result files on their own aren't really self-contained, > and then people will want to keep them in sync with the test-files > themselves, and start adding those, and now it *really* is likely very > unwieldy. > > Or if that doesn't happen, and the actual input test files stay in a > separate CI repo, and then you end up having random coherency issues > with that CI repo, and it all gets to be either horribly messy, or the > result files in the kernel end up really stale. > > So honestly, I personally don't see a good end result here. This > particular small patch? *This* one looks fine to me, except I really > think tools/testing/selftests/gpu would be a much more logical place > for it. > > But I don't see a way forward that is sane. > > Can somebody argue otherwise? I do personally think we should add a bunch more things here, radically putting everything into the drm-ci repo feels a bit much like appeasement to get the foot in the door. Like some of the scripts are definitely specific to the ci infra on freedesktop.org (or specific hw runners for the drivers), and that makes sense to keep in that drm/fd ci repo. But other scripts should probably migrate to scripts/ and at least start out in a ci/ folder in the kernel. igt itself might eventually move to tools/testing/selftests/gpu or whatever, but that's kinda a huge discussion onto itself. And I haven't seen a clear consensus yet among subsystem that these kind of tests (like xfs-tests, and I think pretty much ever bigger subsystem that is old enough to predate selftests has them somewhere) should all move into tools/testing/selftest. Maybe they should, but feels like this is orthogonal to ci integration. Note that mesa3d has the exact same issue going that you're raising, and some of those are unfixable because the opengl/vulkan conformance test suites are maintained entirely externally by Khronos (and you have to use those or you're not conformant to the spec, which renders the point of having a shared spec a bit moot). It's messy but workable, and the CI you get seems very much to be worth the price. One idea I tossed out on irc is to move this all under drivers/gpu/ci. There's driver specific stuff like the test result/fail lists, and maybe those could eventually move out to drivers. But for starting out it might be better to keep it all in one place so it's a bit better under control and doesn't accidentally become a kranken of some kind. And then make sure pieces move to scripts/ or tools/testing/ appropriately. In general I think any mess this causes is a pretty good indicator that something is amiss, like if this causes messy history due to tests flipping too much and causing issues then that also indicates an issue with the kernel or testcase quality itself. And it might be good to shine more light on that stuff. Cheers, Daniel -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch