Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 03840C678DB for ; Tue, 7 Mar 2023 17:59:32 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230117AbjCGR73 (ORCPT ); Tue, 7 Mar 2023 12:59:29 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33828 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229943AbjCGR7A (ORCPT ); Tue, 7 Mar 2023 12:59:00 -0500 Received: from mail-pf1-x449.google.com (mail-pf1-x449.google.com [IPv6:2607:f8b0:4864:20::449]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2694C907B5 for ; Tue, 7 Mar 2023 09:53:14 -0800 (PST) Received: by mail-pf1-x449.google.com with SMTP id f14-20020a056a00228e00b005e46dd41b67so7419813pfe.8 for ; Tue, 07 Mar 2023 09:53:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; t=1678211594; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=FH5HroVi/C3VxZfsb2/P+6HagVCxSp9FIUS8qc4SYho=; b=r38YVV5DocwCciXQg3DFck+9jJ0axjzxdDx/79RPsGOKD/mbFJu0/nmzh151/5ihzQ V4ni2EHRcrNyxgcAlYbZnL5vuNmtlt1TI/LHuA31KqDXUtb/J7GlzJjObxZgK9UJVThC dSTJN4VlnmLpMcsMXY55KYnYG14wMfrnekgU2kvaWLnG9KqjZXcDl2yfvm4bUyv0YexM 8AvnyN15Gf6SsEOUbUMGIsBuVInEn3/eUax06b2PKUbzzSchbibnuS+1rACY0lITQpAt fMJ+RQzkvi20PXbxSflfzrz1K1hikW+vZdNKPIO3dXbIYSxtWfZgMEY292DOB3n/ZzuR ESyw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678211594; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=FH5HroVi/C3VxZfsb2/P+6HagVCxSp9FIUS8qc4SYho=; b=FI86YY43TYxJq1kKlfBiqWJtK/u0CE2ON2xm9yTbAuwE/ZMcFpIriZr5+keIIELdPC ZQWCmmuhnBwRzLpTCczwfi1On23RLe+vFl9gjzNyUaQikfmki7HDAV6qdEp0uLFofj1V V2jkoT+qqlnrmzvSZa4Rb+wfgQj00bUGQgZ7eP1utOW1kgx658XQghfalBlYo91b4Hmm NEdUDQhiy4Pec8VvZ9wZHO8vPQKons1nDrDR0K37eLhdb958Awrd75FX+neOuHkZIgfw AfqtPrdBSOM+GgKpJc/TpLB6j4uAGF0I1B5XykGPNKIC4DjNdqnyvS1JmV3+J7RCjkVV 2zUg== X-Gm-Message-State: AO0yUKVLIH+/E39UQanQ/5OG9r/Gn/0+Q5iO8DTxFsLE2ZK3C1ztCirZ yRK+xGQW917zLVR0ikPI6mqh/wn60tk= X-Google-Smtp-Source: AK7set8i6YBNwec80PM3pvXSqrgujM0vdkzrzCgf37/cB3hOh0c+pDYUrnfCowrQfggC00zJAIpWBop6tgg= X-Received: from zagreus.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:5c37]) (user=seanjc job=sendgmr) by 2002:a17:902:ef8d:b0:19a:fa2f:559e with SMTP id iz13-20020a170902ef8d00b0019afa2f559emr6221804plb.3.1678211594391; Tue, 07 Mar 2023 09:53:14 -0800 (PST) Date: Tue, 7 Mar 2023 09:53:12 -0800 In-Reply-To: <425d56ca2a2c9eb3a0bd4019706aee6db5dd8fc6.camel@linux.intel.com> Mime-Version: 1.0 References: <20230217225449.811957-1-seanjc@google.com> <20230217225449.811957-3-seanjc@google.com> <425d56ca2a2c9eb3a0bd4019706aee6db5dd8fc6.camel@linux.intel.com> Message-ID: Subject: Re: [PATCH 2/2] Documentation/process: Add a maintainer handbook for KVM x86 From: Sean Christopherson To: Robert Hoo Cc: Paolo Bonzini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , Sagi Shahar , Erdem Aktas , Peter Shier , Anish Ghulati , Oliver Upton , James Houghton , Anish Moorthy , Ben Gardon , David Matlack , Ricardo Koller , Axel Rasmussen , Aaron Lewis , Ashish Kalra , Babu Moger , Chao Gao , Chao Peng , Chenyi Qiang , David Woodhouse , Emanuele Giuseppe Esposito , Gavin Shan , Guang Zeng , Hou Wenlong , Jiaxi Chen , Jim Mattson , Jing Liu , Junaid Shahid , Kai Huang , Leonardo Bras , Like Xu , Li RongQing , "Maciej S . Szmigiero" , Maxim Levitsky , Michael Roth , Michal Luczaj , Mingwei Zhang , Nikunj A Dadhania , Paul Durrant , Peng Hao , Peter Gonda , Peter Xu , Suravee Suthikulpanit , Tom Lendacky , Vipin Sharma , Vitaly Kuznetsov , Wanpeng Li , Wei Wang , Xiaoyao Li , Yu Zhang , Zhenzhong Duan , kvm@vger.kernel.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="us-ascii" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Feb 28, 2023, Robert Hoo wrote: > On Fri, 2023-02-17 at 14:54 -0800, Sean Christopherson wrote: > > +Branches > > +~~~~~~~~ > > +The KVM x86 tree is organized into multiple topic branches. The > > purpose of > > +using finer-grained topic branches is to make it easier to keep tabs > > on an area > > +of development, and to limit the collateral damage of human errors > > and/or buggy > > +commits, e.g. dropping the HEAD commit of a topic branch has no > > impact on other > > +in-flight commits' SHA1 hashes, and having to reject a pull request > > due to bugs > > +delays only that topic branch. > > + > > +All topic branches, except for ``next`` and ``fixes`` > > What's this "fixes" branch for? > If fixes for current cycle, will apply to main KVM tree; if fixes for > next cycle, why not directly to its topic branch or next branch (kvm- > x86 tree)? kvm-x86/fixes is a placeholder for carrying fixes for the current cycle. I deliberately hedged in the previous section by saying "Generally speaking". I.e. the vast majority of fixes will be applied to the main tree, but there may be situations where I gather fixes in kvm-x86 and send a pull request to Paolo, e.g. that may be easier if Paolo is on holiday for an extended period. : Generally speaking, fixes for the current cycle are applied directly to the : main KVM tree, while all development for the next cycle is routed through the : KVM x86 tree. I'll add a blurb to the above paragraph to clarify that fixes _may_ be carried in kvm-x86/fixes. > I see in main KVM tree, its "fixes" branch is very inactive. AFAIK, Paolo doesn't use it at all. > Too many functional branches will add your maintenance burden. There's definitely a point where more branches would be a bad thing, but I don't think having a "fixes" branch moves the needle on that front. > > , are rolled into ``next`` > > +via a cthulu merge on an as-needed basis, i.e. when a topic branch > > is updated. > > +As a result, force pushes to ``next`` are common. > > + > > +Lifecycle > > +~~~~~~~~~ > > +Pull requests for the next release cycle are sent to the main KVM > > tree, one > > +for each KVM x86 topic branch. > > Will each KVM x86 topic branch has a mapping topic branch in main KVM > tree? I mean where is their pull target(s), next branch in main KVM > tree? or their counterpart branches in main KVM tree? Barring some esoteric edge case, the target will be kvm/next or kvm/queue. Merging to a topic branch and then merging again would add no value. I'd prefer not to add anything to clarify the target because (a) it's technically outside the scope of KVM x86 and (b) it simply doesn't matter as far as KVM x86 is concerned. E.g. if Paolo wants/needs to merge a topic branch somewhere else for whatever reason, that doesn't impact the KVM x86 lifecycle in any way. > > If all goes well, the topic branches are rolled > > +into the main KVM pull request sent during Linus' merge > > window. Pull requests > > +for KVM x86 branches are typically made the week before Linus' > > opening of the > > +merge window, e.g. the week following rc7 for "normal" releases. > > + > > +The KVM x86 tree doesn't have its own official merge window, but > > there's a soft > > +close around rc5 for new features, and a soft close around rc6 for > > fixes. > > + > > > > +Comments > > +~~~~~~~~ > > +Write comments using imperative mood and avoid pronouns. Use > > comments to > > +provide a high level overview of the code, and/or to explain why the > > code does > > +what it does. Do not reiterate what the code literally does; let > > the code > > +speak for itself. If the code itself is inscrutable, comments will > > not help. > > Welcome comments that state preconditions for calling this function? > e.g. some lock held. Hard "no". Any non-obvious preconditions should be conveyed through lockdep assertions, WARNs, etc...