On 6 October 2011 10:07, Andy Green <andy.green@linaro.org> wrote:


On 6 October 2011 02:36, Tim Bird <tim.bird@am.sony.com> wrote:
On 10/05/2011 08:37 AM, Andy Green wrote:

> Another side-issue is we are also looking at refactoring the
> Androidization patchset into topic branches, at the moment they're kind
> of reflecting the history that they were applied on plus or minus some
> munging around.  So, all the net core patches for example would be
> together in one series, then all the wireless ones in a series on top of
> that, etc.  It seems they would be easier to maintain then, opinions on
> that approach are also welcome.

I've been working on a set of broken-out Android patches, in quilt format,
with exactly the same goal.  It's much easier (at least for me) to maintain the
differences as distinct patches using quilt, rather than as a series (or set
of branches) of git commits.

But possibly I'm just missing how to do this easily with git.
I would very much like to compare approaches, and possibly share

Thanks a lot for the reply Tim.  I can describe how I manage this flow in detail.  Actually, since we would interact through pure git, it's not necessary to unify the patch management scheme to be able to cooperate.  But since I spent so much time on exactly this subject I guess we both find it interesting to describe it.

Further to this I have now re-ordered the patchset into 20 topics in the following order, on top of 3.1-rc9+ from yesterday:

linaro-androidization-topic-base - stuff impacting core Linux
linaro-androidization-topic-debug - logging, debug related features
linaro-androidization-topic-wakelock - wakelock core stuff
linaro-androidization-topic-earlysuspend - earlysuspend
linaro-androidization-topic-mem  - pmem, low memory killer
linaro-androidization-topic-net-core - core network patches
linaro-androidization-topic-netfilter  - netfilter patches
linaro-androidization-topic-net-wireless - wireless related
linaro-androidization-topic-usb - usb, mostly gadget and composite
linaro-androidization-topic-input - input subsystem related ./ HID
linaro-androidization-topic-cpufreq - cpufreq
linaro-androidization-topic-ion - ion graphical memory manager
linaro-androidization-topic-mmc - mmc / sdio related
linaro-androidization-topic-bluetooth - bluetooth
linaro-androidization-topic-rtc - rtc / alarm
linaro-androidization-topic-pm - suspend flow and other power management
linaro-androidization-topic-binder - binder
linaro-androidization-topic-fs - yaffs, vfat, filesystem, block
linaro-androidization-topic-gpio - timed gpio
linaro-androidization-topic-misc - just a compass driver right now

I confirmed that the diff between the original branch we issued and this new one is absolutely null, so we can be certain the reorder makes no difference to the resulting tree.

You can see what's going on easiest if you look at the last branch linaro-androidization-topic-misc, which is the "output" of this process

http://git.linaro.org/gitweb?p=people/andygreen/kernel-tilt.git;a=shortlog;h=refs/heads/linaro-androidization-topic-misc

and work backwards, you can see it's sitting on top of the other branches in reverse order.

In terms of patch counts, it's like this

linaro-androidization-topic-base 38
linaro-androidization-topic-debug 34
linaro-androidization-topic-wakelock 14
linaro-androidization-topic-earlysuspend 7
linaro-androidization-topic-mem 16
linaro-androidization-topic-net-core 19
linaro-androidization-topic-netfilter 23
linaro-androidization-topic-net-wireless 120
linaro-androidization-topic-usb 79
linaro-androidization-topic-input 27
linaro-androidization-topic-cpufreq 14
linaro-androidization-topic-ion 12
linaro-androidization-topic-mmc 22
linaro-androidization-topic-bluetooth 10
linaro-androidization-topic-rtc 7
linaro-androidization-topic-pm 11
linaro-androidization-topic-binder 6
linaro-androidization-topic-fs 8
linaro-androidization-topic-gpio 3
linaro-androidization-topic-misc 1

You can see actually the biggest series is in wireless, and that's because it seems to add a couple of wireless drivers there.  USB gadget-related stuff is next.

If you look at say the ion topic

http://git.linaro.org/gitweb?p=people/andygreen/kernel-tilt.git;a=shortlog;h=refs/heads/linaro-androidization-topic-ion

it seems some of them could just be simplified down to a single patch or so, incorporating all the bugfixes and changes.

-Andy