[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Process for cherry-picking patches from other projects


  • To: Andrew Cooper <Andrew.Cooper3@xxxxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Bertrand Marquis <Bertrand.Marquis@xxxxxxx>, Julien Grall <julien@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>
  • From: George Dunlap <George.Dunlap@xxxxxxxxxx>
  • Date: Fri, 13 May 2022 14:33:40 +0000
  • Accept-language: en-US
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=vfWjeWJ5F6b0q4cP6BoEx2st6elkpyS+axL6JKzqyZc=; b=QLstdDi4pqW0qvYGUrQzTXFFG1YXQoh00p3IwTk35uKMWV4xbLoCtAMHv1I8KUnygKXR55AMhi0DIwwLDxvCmjitnIAvuVDQsNj7AvKqjx7xRn2mnbLKOUdUNOVFrGzbNFDhso3zZ0lTeApcg+jI4apKBxbpe3kqEYYWJHYk2PESmmomfMo0NAqcbLekisWI9cmiQuRGBxyzKP4/3T5QEhdi0bECgoTuLJ9KiPaAlKZDXFgN1+RWkkAQigb3Yh911QxvAWjNM4bFSLAfT3a77dPLKe9OMUhe8Wl4R1/qybO3uV1zY0mzdc4oIntrQFySze6qxwZ+N5o1LDphoPmlfQ==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kTVIYA7mo6je4cyS7pa8amrds1Tq214VQbF+jJH3KgoFVAIZtYx3ToBqUYA8JfqGHZNHkZEP0W5Tn1d3AWSXcuH6EEYoiEs08TFrOg40CPgpRPW5HLH0moSjcBEyyAwFYVb7oevPk4gjlanV8neMJH2WUGnin6NnQQJhJUp2s+0AL4WhdksqKB0OL+SJizH2HwNPiTEoTNQ5Sx/oePnjOC/MvuOrnsXTf4IipnzjX/IkSJkzbcgf1woswOQl4TprkgPdk0UNsDsG6OQL0RPSDjvdbSTNsFHU7iFRH1V2KCqOa0QgfM0Diknm4tQVG8aliXL6HF15Dw2/N15uaxFGUA==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com;
  • Cc: xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Juergen Gross <jgross@xxxxxxxx>, Roger Pau Monne <roger.pau@xxxxxxxxxx>
  • Delivery-date: Fri, 13 May 2022 14:33:56 +0000
  • Ironport-data: A9a23:zONEmajpU4P8NIjDmhJdtx/RX161zhEKZh0ujC45NGQN5FlGYwSy9 lOraxnFY6jUMyawOYxoOc7lxf41yZHXzII3TlQ6/H1jFS0T9cCbCdrFdkmpY3/OdJOcRhJrv 59HN9Kccc5tHi/R+E/3Y7G/oXNy2fGFTOWlWeSZNnEZqWOIMMsEoUsLd7kR3t446TTAPz6wh D/SnyH+EFb0g2YtPjoZtPnZ9Blm7az/5j1JtAA0PfsS4AWAnCNJXc4Tfa2/ESD1E9JedgKYq 0cv710bEkfxpUpF5gaNy+6jGqEyaueOe1DI0BK6YoD66vR4jnVaPp0TabxNMC+7tx3Tx4ork IgU7sTqIesUFvakdNo1AkEw/x5WZcWqyJefSZRomZXOp6FuWyKEL8RGVCnaD6VBkgpEKTgmG cgjACIMdni+a9eem9pXfAXOavMLd6EHNKtH0p1pIKqw4fwOGfgvSI2SjTNUMatZammj0p8ya uJAAQeDYigsbDV9I24qJ9EEo96Kl3/PaS9Zl1HWt7Motj27IAxZiNABMfLzU/nSH4B/uB/do WjLuWPkHhsdKdqTjyKf9W6hjfPOmiW9X58OELq/9bhhh1j7Km47UUVKEwfk56TgzBLmMz5cA xV8Fi4GgqU17kOmCPXgWRmxuFaPvwIGWsoWGOo/gO2I4vWPvFvIWjFUJtJHQIIqjslmYxcr7 1uQ3NiqACZ3gp2JClvIo994qhv3Y0D5N1QqZyUJUA8E6NnLu5wog1TESdMLOIS4lMHvEDf8h RWDtjEjhq47hNQOka68+DjvgS+op5XPZh444EPQRG3NxhhieIevaois6F7axfVNNoCUSh+Gp ndss9iT6qUCAI+AkASJQf4RB/e56vCdKjrejFVzWZ47+FyF+XG5eptLyCpjP0ovOcEBEQIFe 2fWsAJVoZVVZX2jaPcoZ5rrU5hyi6/9Cd7iS/bYKMJUZYR8fxOG+ycoYlOM22fqkw4nlqRX1 YqnTPtAxE0yUcxPpAdajc9GuVP37kjSHV/ueK0=
  • Ironport-hdrordr: A9a23:Vbhqo6yjaW8cs1QYEeduKrPxnOskLtp133Aq2lEZdPULSKGlfp GV9sjziyWetN9IYgBYpTiBUJPwIk80hqQFmbX5XI3SFzUO3VHFEGgM1/qE/9SNIUzDH41mpO 1dmspFebvN5DFB5K6UjjVQeOxQouVvhZrY4ds2uE0dKD2CBZsB0y5JTiKgVmFmTghPApQ0UL CG4NBcmjamcXMLKuymG3gsRYH41pH2vaOjRSRDKw8s6QGIgz/twqX9CQKk0hAXVC4K6as+8F LCjxfy6syYwr6GI17npiHuBqZt6ZvcI+h4dY+xYw8uW3fRYzOTFcVcsnu5zXUISa+UmRIXeZ L30mwd1oxImgnslyeO0FbQMkDboUoTwm6nxlmCjXT5p8vlADo8FspanIpcNgDU8kw6obhHod R2N/LwjesrMfrsplWI2zHzbWAcqqN0mwtTrccDy3hEFYcOYr5YqoISuEtTDZcbBSr/rIQqCv NnAs3Q7OtfNQryVQGQgkB/hNi3GngjFBaPRUYP/sSTzjhNhXh8i08V3tYWkHsM/I80D5NE++ PHOKJ1k6wmdL5eUYttQOMaBcenAG3ERhzBdGqUPFT8DakCf2nArpbmiY9Fkd1CuKZ4vqfatK 6xLm+w71RCBH4GIff+raFj41TKXHi3Wyjrx4VX+4V504eMN4bWDQ==
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Thread-index: AQHYZtZwibZ3DwtT5Ea5wKgBtO2ACA==
  • Thread-topic: Process for cherry-picking patches from other projects

Starting a new thread to make it clear that we’re discussing a wider policy 
here.

This question is aimed at Jan and Andy in particular, as I think they’ve 
probably done the most of this; so I’m looking to them to find out what our 
“standard practice” is.

There have recently been some patches that Bertrand has submitted which pull in 
code from Linux ("[PATCH 1/3] xen/arm: Sync sysregs and cpuinfo with Linux 
5.18-rc3”), which has caused a discussion between him, Julien, and Stefano 
about the proper way to do such patches.

The “Origin:” tag section of xen.git/docs/process/sending-patches.pandoc 
suggests that there are some standards, but doesn’t spell them out.

The questions seem to be:

1) When doing this kind of update, is it permissible to send a single patch 
which “batches” several upstream commits together, or should each patch be 
backported individually?

2) If “batches” are permissible, when?  When would individual patches be 
preferred?

3) For “batch updates”, what tags are necessary?  Do we need to note the 
changesets of all the commits, and if so, do we need multiple “Origin” tags?  
Do we need to include anything from the original commits — commit messages?  
Signed-off-by’s?

And a related question:

4) When importing an entire file from an upstream like Linux, what tags do we 
need?

My recollection is that we often to a “accumulated patch” to update, say, the 
Kconfig tooling; so it seems like the answer to this is sometimes “yes”.

It seems to me that in a case where you’re importing a handful of patches — say 
5-10 — that importing them one-by-one might be preferred; but in this case, 
since the submission was already made as a batch, I’d accept having it as a 
batch.

I think if I were writing this patch, I’d make a separate “Origin” tag for each 
commit.

I wouldn’t include the upstream commit messages or S-o-b’s; I would write my 
own commit message summarizing why I’m importing the commits, then have the 
‘origin’ tags, then my own S-o-b to indicate that I am attesting that it comes 
from an open-source project (and for whatever copyright can be asserted on the 
commit message and the patch as a collection).

And for #4, I would do something similar: I would write my own commit message 
describing what the file is for and why we’re importing it; have the Origin tag 
point to the commit at the point I took the file; and my own S-o-b.

Andy and Jan, what do you guys normally do?

Thanks,
 -George

Attachment: signature.asc
Description: Message signed with OpenPGP


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.