~ubuntu-branches/ubuntu/quantal/linux-lowlatency/quantal

« back to all changes in this revision

Viewing changes to ubuntu/aufs/BOM.UPDATING

  • Committer: Package Import Robot
  • Author(s): Alessio Igor Bogani
  • Date: 2011-10-26 11:13:05 UTC
  • Revision ID: package-import@ubuntu.com-20111026111305-04kado7d1u2er2rl
Tags: 3.2.0-16.25
Add new lowlatency kernel flavour

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
= How to update AUFS2 =
 
2
 
 
3
This document covers the process for updating aufs2 within the Ubuntu
 
4
drivers directory.  
 
5
 
 
6
== Background ==
 
7
 
 
8
Upstream aufs2 is maintained in a git tree as below (which is _not_ used
 
9
when updating Ubuntu).  This represents the primary upstream source tree:
 
10
 
 
11
    http://git.c3sl.ufpr.br/pub/scm/aufs/aufs2-2.6.git
 
12
 
 
13
However this is on an http: transport and incredibly slow.  It is advisable
 
14
to also add the gitorius mirror to your tree, fetching that before origin
 
15
to reduce the objects you need from the main tree:
 
16
 
 
17
    git://gitorious.org/aufs2/aufs2.git
 
18
 
 
19
Ubuntu updates are actually taken from the aufs2-standalone tree, somewhat
 
20
similar to the compat-wireless tree.  The version in this tree is based on
 
21
the mainline tree above but is modularisable, a key requirement for Ubuntu.
 
22
This tree is found at the git tree below (check the BOM for the definative
 
23
location):
 
24
 
 
25
    http://git.c3sl.ufpr.br/pub/scm/aufs/aufs2-standalone.git
 
26
 
 
27
This tree contains a set of branches, one per upstream release.  The
 
28
aufs2.1 branch represents the mainline tracking branch, with aufs-2.1-38
 
29
representing the delta to mainline 2.6.38.  Each branch contains a set
 
30
of patches which affect the core enabling the application of aufs2, plus
 
31
an open tree for the fs/aufs tree.  The core patches tend to be static
 
32
from early in the line of an upstream release, and thus generally do not
 
33
need updating as often.
 
34
 
 
35
== Updating the core patches ==
 
36
 
 
37
Ubuntu uses two of the core enablement patches, which are applied in the
 
38
order below.  The remaining changes required to enable aufs are Ubuntu
 
39
specific and static:
 
40
 
 
41
    aufs2-base.patch
 
42
    aufs2-standalone.patch
 
43
 
 
44
In order to update these patches it is simplest to simply revert the
 
45
existing pair and apply these as two commit.  This allows us to more
 
46
easily drop aufs in the future should that be required.
 
47
 
 
48
As these core enablement patches are very slow in changing we normally
 
49
do not need to update these more than once per upstream mainline release
 
50
though sometimes changes do affect these.
 
51
 
 
52
== Updating aufs2 ==
 
53
 
 
54
Once the enablement patches are updated we can simply use the aufs-update
 
55
script in the ubuntu/ directory to update the existing source.  There are
 
56
regular updates to the aufs2 upstream and it is likely we will see updates
 
57
there more than once a month.
 
58
 
 
59
Firstly checkout the upstream standalone tree (see the BOM for the
 
60
location) and checkout an appropriate branch for the release you are
 
61
updating.  Then simply run the aufs-update command from within the ubuntu/
 
62
drivers directory, supplying the location of the local aufs2-standalone tree
 
63
on the command line:
 
64
 
 
65
        cd ubuntu
 
66
        sh aufs-update ../../aufs2-standalone
 
67
 
 
68
This will result in an update commit containing the updated code and
 
69
also updating the BOM.  Note that any local modifications are now lost.
 
70
Where those exist they should be cherry-picked and then squashed into
 
71
the update commit to ensure we retain them.
 
72
 
 
73
== Ubuntu modifications ==
 
74
 
 
75
We carry a very small delta to the upstream aufs2 source.  Any such changes
 
76
need to be cherry-picked from the history and squashed into any update
 
77
commit in order to prevent regression.  Any current patches are listed below:
 
78
 
 
79
Lucid/Maverick/Natty/Oneiric:
 
80
    UBUNTU: ubuntu: AUFS -- suppress benign plink warning messages