Message ID | 20170410160543.3726-1-seanpaul@chromium.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Mon, Apr 10, 2017 at 12:05:43PM -0400, Sean Paul wrote: > Add a bit more colour to the -misc branch explanations, and add a merge timeline > similar to the chart used in drm-intel. > > Signed-off-by: Sean Paul <seanpaul@chromium.org> > --- Friendly review ping. Sean > > > I've compiled the with this patch and hosted the output here: > https://people.freedesktop.org/~seanpaul/drm-misc.html > > > > > Makefile | 5 ++++ > drm-misc-timeline.json | 67 ++++++++++++++++++++++++++++++++++++++++++++++++++ > drm-misc-timeline.rst | 29 ++++++++++++++++++++++ > drm-misc.rst | 35 +++++++++++++++++++------- > 4 files changed, 127 insertions(+), 9 deletions(-) > create mode 100644 drm-misc-timeline.json > create mode 100644 drm-misc-timeline.rst > > diff --git a/Makefile b/Makefile > index 4291049..e079e35 100644 > --- a/Makefile > +++ b/Makefile > @@ -17,6 +17,11 @@ drm-intel.html: drm-intel.rst drm-intel-flow.svg drm-intel-timeline.rst drm-inte > rst2html $< > $@ > sed -i 's/<body/<body onload="WaveDrom.ProcessAll()"/' $@ > > +# the sed bit here is a hack to make wavedrom process the timeline > +drm-misc.html: drm-misc.rst drm-misc-timeline.rst drm-misc-timeline.json > + rst2html $< > $@ > + sed -i 's/<body/<body onload="WaveDrom.ProcessAll()"/' $@ > + > dim.html: dim.rst > > SC_EXCLUDE := \ > diff --git a/drm-misc-timeline.json b/drm-misc-timeline.json > new file mode 100644 > index 0000000..7b039ce > --- /dev/null > +++ b/drm-misc-timeline.json > @@ -0,0 +1,67 @@ > +{ > + head: { > + text: 'drm-misc upstream merge timeline', > + tock: -2, > + }, > + > + foot: { > + text: 'time in weeks, releases/rc at the end of each week', > + tock: -2, > + }, > + > + signal: [ > + [ 'upstreams', > + { name: 'linus', > + wave: 'x|==.=====|===.', > + data: ['release', 'merge window, -rc1', '-rc2', > + '-rc3', '-rc4', '-rc5', '', '-rcN', > + 'release + 1', 'merge window'], > + node: '....123456.8.90' }, > + > + { name: 'drm-fixes', > + wave: '0|..=.....0...=', > + data: ['drm fixes for release + 1'], > + node: '....abcde.f...p' }, > + > + { name: 'drm-next', > + wave: '=..0.=.......0.', > + data: ['drm features for release + 1', > + 'drm features for release + 2'], > + node: '...g.stuvw"..h.' } > + ], > + > + { name: 'drm-misc-fixes', > + wave: '0|.=.....0.....', > + data: ['drm-misc fixes for release + 1'], > + node: '...ijklm.n.....' }, > + > + { name: 'drm-misc-next-fixes', > + wave: '=.xxxxxxx=..xxx', > + data: ['drm-misc fixes for release + 1', > + 'drm-misc fixes for release + 2'], > + node: '..o.........q..' }, > + > + { name: 'drm-misc-next', > + wave: '=........=.....', > + data: ['drm-misc features for release + 2', > + 'drm-misc features for release + 3'], > + node: '....rxyz;:.....' }, > + ], > + > + edge: [ > + /* -fixes to linus */ > + 'a~>2', 'b~>3', 'c~>4', 'd~>5', 'e~>6', 'f~>8', > + /* -next to linus */ > + 'g~>1 feature merge', 'h~>0 feature merge', > + /* misc-fixes to -next */ > + 'i~>a', 'j~>b', 'k~>c', 'l~>d', 'm~>e', 'n~>f', > + /* misc-next-fixes to -next */ > + 'o~>g', 'q~>p', > + /* misc-next to -next */ > + 'r~>s', 'x~>t', 'y~>u', 'z~>v', ';~>w', ':~>"' > + > + ], > + > + config: { hscale:3 }, > +} > + > diff --git a/drm-misc-timeline.rst b/drm-misc-timeline.rst > new file mode 100644 > index 0000000..6972777 > --- /dev/null > +++ b/drm-misc-timeline.rst > @@ -0,0 +1,29 @@ > +.. raw:: html > + > + <script type="text/javascript"> > + /* Embedded WaveDrom skin from http://wavedrom.com/skins/default.js */ > + > +.. raw:: html > + :url: http://wavedrom.com/skins/default.js > + > +.. raw:: html > + > + </script> > + <script type="text/javascript"> > + /* Embedded WaveDrom engine from http://wavedrom.com/WaveDrom.js */ > + > +.. raw:: html > + :url: http://wavedrom.com/WaveDrom.js > + > +.. raw:: html > + > + </script> > + <script type="WaveDrom"> > + > +.. raw:: html > + :file: drm-misc-timeline.json > + > +.. raw:: html > + > + </script> > + > diff --git a/drm-misc.rst b/drm-misc.rst > index 45ea795..caba8dc 100644 > --- a/drm-misc.rst > +++ b/drm-misc.rst > @@ -38,20 +38,26 @@ drm-misc-next > > This is the main feature branch where most of the patches land. This branch is > always open to "hide" the merge window from developers. To avoid upsetting > -linux-next and causing mayhem in the merge window in general no pull requests > -are sent to upstream 1-2 weeks before the merge window opens. Outside of that > -feature freeze period pull requests are sent to upstream roughly every week, to > -avoid too much coordination pains. > - > -If you're unsure apply your patch here, it can always be cherry-picked to one of > -the -fixes patches later on. But in contrast to the drm-intel flow > +linux-next and causing mayhem in the merge window, in general no pull requests > +are sent to upstream after rc6 of the current kernel release. Outside of that > +feature freeze period, pull requests are sent to upstream roughly every 1-2 > +weeks, to avoid too much coordination pains. See the timeline below for a > +visualization of patch flow. > + > +If you're unsure, apply your patch here, it can always be cherry-picked to one > +of the -fixes branches later on. But in contrast to the drm-intel flow > cherry-picking is not the default. > > drm-misc-next-fixes > ~~~~~~~~~~~~~~~~~~~ > > -This is for bugfixes to drm-misc-next after feature freeze, but before -rc1 is > -tagged. > +This branch is only relevant between rc6 of the current kernel version (X) and > +rc1 of the next (X+1). This is the feature freeze period mentioned above in the > +drm-misc-next section. During this time, drm-misc-next will roll over to target > +kernel version X+2, and drm-misc-fixes will still be on kernel version X, so > +drm-misc-next-fixes is used for fixes that target X+1. > + > +See the timeline below for a visualization of patch flow. > > drm-misc-fixes > ~~~~~~~~~~~~~~ > @@ -67,6 +73,17 @@ updated drm-tip gets rebuilt. If there's a conflict see section on `resolving > conflicts when rebuilding drm-tip > <drm-intel.html#resolving-conflicts-when-rebuilding-drm-tip>`_. > > +Merge Timeline > +~~~~~~~~~~~~~~ > + > +This chart describes the merge timelines for various branches in terms of one > +kernel release cycle. Worth noting is that we're working on two or three kernel > +releases at the same time. Big features take a long time to hit a kernel > +release. There are no fast paths. > + > +.. include:: drm-misc-timeline.rst > + > + > Merge Criteria > ============== > > -- > 2.12.2.715.g7642488e1d-goog
Hi Sean, On 14 April 2017 at 16:47, Sean Paul <seanpaul@chromium.org> wrote: > On Mon, Apr 10, 2017 at 12:05:43PM -0400, Sean Paul wrote: >> Add a bit more colour to the -misc branch explanations, and add a merge timeline >> similar to the chart used in drm-intel. > > Friendly review ping. I'm extremely deprived of coffee today, but I couldn't find anything wrong with this. Thanks for doing the diagram! Reviewed-by: Daniel Stone <daniels@collabora.com> Cheers, Daniel
On Mon, Apr 17, 2017 at 11:39:45AM +0100, Daniel Stone wrote: > Hi Sean, > > On 14 April 2017 at 16:47, Sean Paul <seanpaul@chromium.org> wrote: > > On Mon, Apr 10, 2017 at 12:05:43PM -0400, Sean Paul wrote: > >> Add a bit more colour to the -misc branch explanations, and add a merge timeline > >> similar to the chart used in drm-intel. > > > > Friendly review ping. > > I'm extremely deprived of coffee today, but I couldn't find anything > wrong with this. Thanks for doing the diagram! > > Reviewed-by: Daniel Stone <daniels@collabora.com> Applied, thx. -Daniel > > Cheers, > Daniel > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/intel-gfx
diff --git a/Makefile b/Makefile index 4291049..e079e35 100644 --- a/Makefile +++ b/Makefile @@ -17,6 +17,11 @@ drm-intel.html: drm-intel.rst drm-intel-flow.svg drm-intel-timeline.rst drm-inte rst2html $< > $@ sed -i 's/<body/<body onload="WaveDrom.ProcessAll()"/' $@ +# the sed bit here is a hack to make wavedrom process the timeline +drm-misc.html: drm-misc.rst drm-misc-timeline.rst drm-misc-timeline.json + rst2html $< > $@ + sed -i 's/<body/<body onload="WaveDrom.ProcessAll()"/' $@ + dim.html: dim.rst SC_EXCLUDE := \ diff --git a/drm-misc-timeline.json b/drm-misc-timeline.json new file mode 100644 index 0000000..7b039ce --- /dev/null +++ b/drm-misc-timeline.json @@ -0,0 +1,67 @@ +{ + head: { + text: 'drm-misc upstream merge timeline', + tock: -2, + }, + + foot: { + text: 'time in weeks, releases/rc at the end of each week', + tock: -2, + }, + + signal: [ + [ 'upstreams', + { name: 'linus', + wave: 'x|==.=====|===.', + data: ['release', 'merge window, -rc1', '-rc2', + '-rc3', '-rc4', '-rc5', '', '-rcN', + 'release + 1', 'merge window'], + node: '....123456.8.90' }, + + { name: 'drm-fixes', + wave: '0|..=.....0...=', + data: ['drm fixes for release + 1'], + node: '....abcde.f...p' }, + + { name: 'drm-next', + wave: '=..0.=.......0.', + data: ['drm features for release + 1', + 'drm features for release + 2'], + node: '...g.stuvw"..h.' } + ], + + { name: 'drm-misc-fixes', + wave: '0|.=.....0.....', + data: ['drm-misc fixes for release + 1'], + node: '...ijklm.n.....' }, + + { name: 'drm-misc-next-fixes', + wave: '=.xxxxxxx=..xxx', + data: ['drm-misc fixes for release + 1', + 'drm-misc fixes for release + 2'], + node: '..o.........q..' }, + + { name: 'drm-misc-next', + wave: '=........=.....', + data: ['drm-misc features for release + 2', + 'drm-misc features for release + 3'], + node: '....rxyz;:.....' }, + ], + + edge: [ + /* -fixes to linus */ + 'a~>2', 'b~>3', 'c~>4', 'd~>5', 'e~>6', 'f~>8', + /* -next to linus */ + 'g~>1 feature merge', 'h~>0 feature merge', + /* misc-fixes to -next */ + 'i~>a', 'j~>b', 'k~>c', 'l~>d', 'm~>e', 'n~>f', + /* misc-next-fixes to -next */ + 'o~>g', 'q~>p', + /* misc-next to -next */ + 'r~>s', 'x~>t', 'y~>u', 'z~>v', ';~>w', ':~>"' + + ], + + config: { hscale:3 }, +} + diff --git a/drm-misc-timeline.rst b/drm-misc-timeline.rst new file mode 100644 index 0000000..6972777 --- /dev/null +++ b/drm-misc-timeline.rst @@ -0,0 +1,29 @@ +.. raw:: html + + <script type="text/javascript"> + /* Embedded WaveDrom skin from http://wavedrom.com/skins/default.js */ + +.. raw:: html + :url: http://wavedrom.com/skins/default.js + +.. raw:: html + + </script> + <script type="text/javascript"> + /* Embedded WaveDrom engine from http://wavedrom.com/WaveDrom.js */ + +.. raw:: html + :url: http://wavedrom.com/WaveDrom.js + +.. raw:: html + + </script> + <script type="WaveDrom"> + +.. raw:: html + :file: drm-misc-timeline.json + +.. raw:: html + + </script> + diff --git a/drm-misc.rst b/drm-misc.rst index 45ea795..caba8dc 100644 --- a/drm-misc.rst +++ b/drm-misc.rst @@ -38,20 +38,26 @@ drm-misc-next This is the main feature branch where most of the patches land. This branch is always open to "hide" the merge window from developers. To avoid upsetting -linux-next and causing mayhem in the merge window in general no pull requests -are sent to upstream 1-2 weeks before the merge window opens. Outside of that -feature freeze period pull requests are sent to upstream roughly every week, to -avoid too much coordination pains. - -If you're unsure apply your patch here, it can always be cherry-picked to one of -the -fixes patches later on. But in contrast to the drm-intel flow +linux-next and causing mayhem in the merge window, in general no pull requests +are sent to upstream after rc6 of the current kernel release. Outside of that +feature freeze period, pull requests are sent to upstream roughly every 1-2 +weeks, to avoid too much coordination pains. See the timeline below for a +visualization of patch flow. + +If you're unsure, apply your patch here, it can always be cherry-picked to one +of the -fixes branches later on. But in contrast to the drm-intel flow cherry-picking is not the default. drm-misc-next-fixes ~~~~~~~~~~~~~~~~~~~ -This is for bugfixes to drm-misc-next after feature freeze, but before -rc1 is -tagged. +This branch is only relevant between rc6 of the current kernel version (X) and +rc1 of the next (X+1). This is the feature freeze period mentioned above in the +drm-misc-next section. During this time, drm-misc-next will roll over to target +kernel version X+2, and drm-misc-fixes will still be on kernel version X, so +drm-misc-next-fixes is used for fixes that target X+1. + +See the timeline below for a visualization of patch flow. drm-misc-fixes ~~~~~~~~~~~~~~ @@ -67,6 +73,17 @@ updated drm-tip gets rebuilt. If there's a conflict see section on `resolving conflicts when rebuilding drm-tip <drm-intel.html#resolving-conflicts-when-rebuilding-drm-tip>`_. +Merge Timeline +~~~~~~~~~~~~~~ + +This chart describes the merge timelines for various branches in terms of one +kernel release cycle. Worth noting is that we're working on two or three kernel +releases at the same time. Big features take a long time to hit a kernel +release. There are no fast paths. + +.. include:: drm-misc-timeline.rst + + Merge Criteria ==============
Add a bit more colour to the -misc branch explanations, and add a merge timeline similar to the chart used in drm-intel. Signed-off-by: Sean Paul <seanpaul@chromium.org> --- I've compiled the with this patch and hosted the output here: https://people.freedesktop.org/~seanpaul/drm-misc.html Makefile | 5 ++++ drm-misc-timeline.json | 67 ++++++++++++++++++++++++++++++++++++++++++++++++++ drm-misc-timeline.rst | 29 ++++++++++++++++++++++ drm-misc.rst | 35 +++++++++++++++++++------- 4 files changed, 127 insertions(+), 9 deletions(-) create mode 100644 drm-misc-timeline.json create mode 100644 drm-misc-timeline.rst