linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: John Johansen <john.johansen@canonical.com>
To: James Bottomley <James.Bottomley@HansenPartnership.com>,
	Thorsten Leemhuis <regressions@leemhuis.info>,
	Vlastimil Babka <vbabka@suse.cz>,
	Seth Arnold <seth.arnold@canonical.com>
Cc: linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: regression in 4.14-rc2 caused by apparmor: add base infastructure for socket mediation
Date: Tue, 24 Oct 2017 04:57:32 -0700	[thread overview]
Message-ID: <722a6eda-e834-30f8-bf57-ef6c596816f6@canonical.com> (raw)
In-Reply-To: <1508842981.3187.5.camel@HansenPartnership.com>

On 10/24/2017 04:03 AM, James Bottomley wrote:
> On Tue, 2017-10-24 at 08:39 +0200, Thorsten Leemhuis wrote:
>> Lo, your friendly regression tracker here!
>>
>> On 03.10.2017 09:17, John Johansen wrote:
>>>
>>> On 10/02/2017 11:48 PM, Vlastimil Babka wrote:
>>>>
>>>> On 10/03/2017 07:15 AM, James Bottomley wrote:
>>>>>
>>>>> On Mon, 2017-10-02 at 21:11 -0700, John Johansen wrote:
>>>>>>
>>>>>> On 10/02/2017 09:02 PM, James Bottomley wrote:
>>>>>>>
>>>>>>>
>>>>>>> The specific problem is that dnsmasq refuses to start on
>>>>>>> openSUSE Leap 42.2.  The specific cause is that and attempt
>>>>>>> to open a PF_LOCAL socket gets EACCES.  This means that
>>>>>>> networking doesn't function on a system with a 4.14-rc2
>>>>>>> system. Reverting commit
>>>>>>> 651e28c5537abb39076d3949fb7618536f1d242e
>>>>>>> (apparmor: add base infastructure for socket mediation)
>>>>>>> causes the system to function again.
>>>>>> This is not a kernel regression,
>>>>> Regression means something that worked in a previous version of
>>>>> the kernel which is broken now. This problem falls within that
>>>>> definition.
>>>> Hm, but if this was because opensuse kernel and apparmor rules
>>>> relied on an out-of-tree patch, then it's not an upstream
>>>> regression?
>>> While its true that previous opensuse kernels were relying on an
>>> out of tree patch for doing mediation in this area, the real issue
>>> is the configuration of the userspace on the system is setup to
>>> enforce new policy features advertised by the kernel. Regardless of
>>> whether policy has been updated to deal with it.
>>
>> Did anything came out of this discussion?
> 
> Not really, no.  I've got the patch reverted locally, so it's not
> causing *me* problems anymore.
> 

actually a lot of work and testing has been done. A regression was
found, the fix is in testing and it should land soon, but its not the
regression you are having issues with.

>>  I checked LKML and recent commits, but missed if anything happened.
>> But it seems this problem annoys quite a few of people on various
>> distros. It turned out one of the the regressions in my last
>> regression report seemed to be due to the changes in apparmor. See:
>>
>> https://bugzilla.kernel.org/show_bug.cgi?id=197137#7
>>
>> That commit links to two bugs filed for Debian and Ubuntu:
>> https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/1724450
>> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=877581
>>
>> The stuff even made the news:
>> https://www.phoronix.com/scan.php?page=news_item&px=AppArmor-Linux-4.
>> 14
>>
>> It's obviously Linus to decide in the end, but from my understanding
>> of the whole "no regressions" rule this looks quite a lot like a
>> regression to me.
> 
> It's certainly a lack of co-ordination between all the apparmour using
> upstreams, yes.  I think of it as a regression because I have no way
> other than reverting the patch of getting my system running again.
> 

its not a lack of coordination, regardless of coordination this would
have happened for people front running the suse distro kernel due to
how the apparmor userspace is configured. Could it have been handled
better for kernel devs? Certainly, but the issue you are encountering
is a userspace configuration issue.

Distros get to choose how apparmor is configured, and what certain
defaults are. The suse default configuration is to not pin the
features abi (there are pros and cons depending on what you want),
which essentially means if you are front running the distro kernel and
policy with an upstream kernel you are a policy dev, and you are going
to be hit with stuff like this.

You have a couple userspace options available to you and a couple
kernel options without having to revert the patch.

- You can update your policy.

- You can pin the feature set abi to that of the distro kernel, and
  what your policy was developed for.

- You can disable apparmor in grub

- You can disable apparmor in the kernel config

I have been discussing pinning the feature abi with distros
maintainers (the ability has been around for years) and the Debian
maintainer has been planning, for a while now, to use it by default
for stable releases.  However a similar decision has not been made for
other distros yet.

Long term we are working on a more flexible solution, that won't
require having to choose to pin the features abi but it is not
available yet.

> I'd also argue that treating this as a regression might possibly
> encourage better co-ordination in future.
> 
> James
> 

  reply	other threads:[~2017-10-24 11:57 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-03  4:02 regression in 4.14-rc2 caused by apparmor: add base infastructure for socket mediation James Bottomley
2017-10-03  4:11 ` John Johansen
2017-10-03  5:15   ` James Bottomley
2017-10-03  6:32     ` John Johansen
2017-10-03  6:48     ` Vlastimil Babka
2017-10-03  7:17       ` John Johansen
2017-10-24  6:39         ` Thorsten Leemhuis
2017-10-24 11:03           ` James Bottomley
2017-10-24 11:57             ` John Johansen [this message]
2017-10-26 17:36               ` Linus Torvalds
2017-10-26 18:54                 ` James Morris
2017-10-26 19:02                   ` Linus Torvalds
2017-10-26 19:06                     ` James Morris
2017-10-26 20:08                       ` John Johansen
2017-10-26 19:59                 ` John Johansen
2017-10-24 15:19             ` Vlastimil Babka
2017-10-24 11:31           ` John Johansen
2017-10-26  9:11             ` Thorsten Leemhuis
2017-10-26 18:13               ` Linus Torvalds

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=722a6eda-e834-30f8-bf57-ef6c596816f6@canonical.com \
    --to=john.johansen@canonical.com \
    --cc=James.Bottomley@HansenPartnership.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=regressions@leemhuis.info \
    --cc=seth.arnold@canonical.com \
    --cc=vbabka@suse.cz \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).