Subject: Re: [vserver] linux 3.10.5[567] and patch-3.10.53-vs2.3.6.8.diff
From: Corey Wright <undefined@pobox.com>
Date: Thu, 9 Oct 2014 17:54:34 -0500

On Mon, 6 Oct 2014 00:41:24 -0500
Corey Wright <undefined@pobox.com> wrote:

> On Fri, 19 Sep 2014 01:07:55 -0500
> Corey Wright <undefined@pobox.com> wrote:
> 
> > applying patch-3.10.53-vs2.3.6.8.diff to linux 3.10.55 fails in both patching
> > and testing/functionality.
> 
> linux 3.10.56 and patch-3.10.53-vs2.3.6.8.diff fails, too.

linux 3.10.57 and patch-3.10.53-vs2.3.6.8.diff fails.

> > the upstream addition of including "linux/hash.h" in "fs/namei.c" [1]
> > invalidated the patch hunk context.
> > 
> > patching file fs/namei.c
> > Hunk #1 FAILED at 34.
> > Hunk #2 succeeded at 267 (offset 1 line).
> > Hunk #3 succeeded at 473 (offset 1 line).
> > Hunk #4 succeeded at 1327 (offset 1 line).
> > Hunk #5 succeeded at 1473 (offset 1 line).
> > Hunk #6 succeeded at 1506 (offset 1 line).
> > 1 out of 16 hunks FAILED -- saving rejects to file fs/namei.c.rej
> > 
> > [1] https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/commit/?h=linux-3.10.y&id=d4c96061fddd129778ce8b70fb093aa532f422d0
> > 
> > the upstream change of masking all capabilities above CAP_LAST_CAP (which the
> > linux-vserver patch does not adjust to account for its own CAP_CONTEXT)
> > breaks changing/manipulating contexts.
> > 
> > # vserver-info | grep V
> > 
> > Assumed 'SYSINFO' as no other option given; try '--help' for more information.
> > Versions:
> >                    VS-API: ???
> >                       VCI: ???
> > # chcontext --xid 1 -- true
> > chcontext: vc_new_s_context(): Function not implemented
> > 
> > [2] https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/commit/?h=linux-3.10.y&id=76f01555c78e496203105bd29b878db3431a2260
> > 
> > the attached patch accounts for the change in patch hunk context.  reverting
> > the upstream commit accounts for the masking of CAP_CONTEXT.
> 
> instead of reverting the upstream change, the attached patch accounts for the
> masking of CAP_CONTEXT.  the patch also fixes the Makefile reject and
> increments the vserver version (ie "2.3.6.9"; not so much due to the size of
> the change, but due to technicalities).

both previously attached patches are still applicable and necessary.

> > instructions:
> > 1. acquire linux-3.10.55
> > 2. apply patch-3.10.53-vs2.3.6.8
> > 3. revert upstream git commit 76f0155
> >   a. wget -Nv --content-disposition https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/patch/?id=76f01555c78e496203105bd29b878db3431a2260
> > b. patch -R <d4281c33c1086d80b2a5e3cd6081752e75795833..76f01555c78e496203105bd29b878db3431a2260.patch
> > 4. apply the attached patch-3.10.53-55-vs2.3.6.8.diff
> > 5. manually fix the Makefile reject (EXTRAVERSION)
> 
> 1. acquire linux-3.10.56
> 2. apply patch-3.10.53-vs2.3.6.8
> 3. apply the previously attached patch-3.10.53-55-vs2.3.6.8.diff [0]
> 4. apply the attached patch-3.10.53-56-vs2.3.6.9.diff

1. acquire linux-3.10.57
2. apply patch-3.10.53-vs2.3.6.8
3. apply the previously attached patch-3.10.53-55-vs2.3.6.8.diff [0]
4. apply the previously attached patch-3.10.53-56-vs2.3.6.9.diff [1]
5. manually fix the Makefile reject (EXTRAVERSION)

> [0]
> http://archives.linux-vserver.org/201409/att-0005/patch-3.10.53-55-vs2.3.6.8.diff
[1]
http://archives.linux-vserver.org/201410/att-0015/patch-3.10.53-56-vs2.3.6.9.diff

> > i've successfully built the resulting kernel and tested it in virtualbox
> > against testme.sh and testfs.sh and started-entered-exited-stopped a vserver
> > guest.
> 
> specific to the capabilities fix, i also tested "vserver-info | grep V" and
> "chcontext --xid 1 -- true"; see above, in previous email, for failure
> details.

i've built the resulting kernel and tested it in virtualbox against testme.sh
and testfs.sh, started-entered-exited-stopped a vserver guest, and (specific
to the capabilities fix) tested "vserver-info | grep V" and "chcontext --xid
1 -- true" (though that's also indirectly tested through testme.sh and
exercising a vserver guest).

thanks to Corsac for previously testing the patches on 3.10.56.

corey
--
undefined@pobox.com

> > i figure in time herbert will release an updated kernel patch that addresses
> > the upstream change in capability masking (though i have a few ideas of my
> > own, but this upstream change is immaterial enough that it's easier to just
> > revert it for now).
> 
> we can't revert forever, so i made the attached patch with input from herbert
> and daniel (i'll take the blame and they can have the credit ;).
> 
> corey
> --
> undefined@pobox.com
> 
> > corey
> > --
> > undefined@pobox.com