From patchwork Fri May 24 17:44:04 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lars Kurth X-Patchwork-Id: 10960259 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id BCF2D912 for ; Fri, 24 May 2019 17:46:39 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id A7F78288D2 for ; Fri, 24 May 2019 17:46:39 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 9BEB428917; Fri, 24 May 2019 17:46:39 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 22614288D2 for ; Fri, 24 May 2019 17:46:39 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hUEF1-0004bk-1Q; Fri, 24 May 2019 17:44:27 +0000 Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hUEF0-0004bf-8f for xen-devel@lists.xenproject.org; Fri, 24 May 2019 17:44:26 +0000 X-Inumbo-ID: 9186c81a-7e4b-11e9-b7b4-e33c82d6839c Received: from mail.xenproject.org (unknown [104.130.215.37]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id 9186c81a-7e4b-11e9-b7b4-e33c82d6839c; Fri, 24 May 2019 17:44:24 +0000 (UTC) Received: from xenbits.xenproject.org ([104.239.192.120]) by mail.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hUEEq-0001dY-UF; Fri, 24 May 2019 17:44:16 +0000 Received: from localhost ([127.0.0.1] helo=localhost.localdomain) by xenbits.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hUEEq-00036U-J1; Fri, 24 May 2019 17:44:16 +0000 From: Lars Kurth To: xen-devel@lists.xenproject.org Date: Fri, 24 May 2019 11:44:04 -0600 Message-Id: <6250372b05e95412cfd0f8e6f558f2376c4f3d94.1558719481.git.lars.kurth@citrix.com> X-Mailer: git-send-email 2.13.0 Subject: [Xen-devel] [PATCH v3] Add TRACKING.IMPORTS to xen.git to more easily manage imported files that need to be kept in sync with an upstream X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Lars Kurth , Stefano Stabellini , Wei Liu , Konrad Rzeszutek Wilk , George Dunlap , Andrew Cooper , Ian Jackson , Tim Deegan , Julien Grall , committers@xenproject.org, Jan Beulich MIME-Version: 1.0 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" X-Virus-Scanned: ClamAV using ClamSMTP Following the recent discussion, we had on IRC and the action I had in the March community call, this file provides a file format that enables writing an automated test to check whether files are out of sync. An example, what file content may look like is embedded below repo: linux-torvalds git https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git file: xen/drivers/passthrough/arm/smmu.c linux-torvalds linux/drivers/iommu/arm-smmu.c b77cf11f094136 Once the file format is agree, I will write a test or script. I also need some more correct test data, aka entries in the file from committers looking after the following files [Jan] xen/arch/x86/cpu/mwait-idle.c [Stefano, Julien - this has to be finalized] xen/drivers/passthrough/arm/smmu.c xen/arch/arm/vgic/* xen/include/asm-arm/div64.h xen/drivers/char/meson-uart.c xen/arch/arm/arm32/lib/* xen/arch/arm/arm64/lib/* xen/arch/arm/arm64/cache.S xen/arch/arm/arm64/bpi.S xen/include/asm-arm/system.h xen/arch/arm/arm64/insn.c [Others?] xen/common/rbtree.c Note that in some cases Linux has diverged and some Linux files have disappeared. Julien also raised the point, that in some cases only a subset of code from Linux Xen files was applied or that only some functions get moved across to Xen. I believe that is entirely OK. The workflow would be in most cases that: - We use a Linux (source) commit as a benchmark and record the commit ID - If there is a change in Linux the test will fail - The committer looks at the diff and either - Decides to ignore it and bumps the commit ID in this file - Decides the change is needed, integrates it into Xen and then bumps the commit ID in this file Changes since v1 * Require a colon after repo:, file:, ... keywords * Replace manual:|auto: with file: as there auto: use-case was invalid * Added more verbose description of format Changes since v2 * Changed some formatting * Removed examples * Removed references to https Signed-off-by: Lars Kurth CC: committers@xenproject.org Acked-by: Jan Beulich --- TRACKING.FILES | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 TRACKING.FILES diff --git a/TRACKING.FILES b/TRACKING.FILES new file mode 100644 index 0000000000..60c47bdefb --- /dev/null +++ b/TRACKING.FILES @@ -0,0 +1,44 @@ +# This file contains information about source files that have been +# copied from other sources and need to be tracked +# +# The file may contain lines starting with ... +# -------------------------------------------- +# version: of file format +# repo: repository definition +# file: a mapping to track files +# +# Note that repo: entries must come *before* file: entries +# +# Repository Definitions are of the following format +# -------------------------------------------------- +# repo: name-of-source-repo git|svn url-of-source-repo +# +# name-of-source-repo +# Name of source repository. The name will be used as reference in file: +# statements +# +# git|svn +# Type of source repository +# +# url-of-source-repo +# URL of source repository +# +# Mappings to track files are of the following format +# --------------------------------------------------- +# file: xen-file name-of-original-repo original-file commit-id +# +# xen-file +# Xen file that needs to be tracked +# +# name-of-original-repo +# A reference to a source repository defined by *repo* keyword +# +# original-file +# File in original-repo from which we regularly want to merge changes +# into xen-file +# +# commit id +# Last commit id of original-file that was deemed to be ok +# and either imported into the tree or rejected + +version: 1