All of lore.kernel.org
 help / color / mirror / Atom feed
From: John Stultz <john.stultz@linaro.org>
To: Lorenzo Colitti <lorenzo@google.com>
Cc: David Ahern <dsa@cumulusnetworks.com>,
	David Miller <davem@davemloft.net>,
	Mateusz Bajorski <mateusz.bajorski@nokia.com>,
	lkml <linux-kernel@vger.kernel.org>,
	Guodong Xu <guodong.xu@linaro.org>,
	Dmitry Shmidt <dimitrysh@google.com>,
	Chih-Hung Hsieh <chh@google.com>,
	Eric Caruso <ejcaruso@google.com>
Subject: Re: [Regression?] fib_rules: Added NLM_F_EXCL support to fib_nl_newrule breaks Android userspace
Date: Tue, 2 Aug 2016 10:03:11 -0700	[thread overview]
Message-ID: <CALAqxLW1Ge5ZeCEBnP=+0cT1wjQUrXozQc0fEwtmmGs6UQ6eEg@mail.gmail.com> (raw)
In-Reply-To: <CALAqxLVpnJef7_-pqj8EJhk2aM3YTCmEFc693kG7tNq5OjS79g@mail.gmail.com>

On Tue, Aug 2, 2016 at 9:37 AM, John Stultz <john.stultz@linaro.org> wrote:
> On Sun, Jul 31, 2016 at 6:42 PM, Lorenzo Colitti <lorenzo@google.com> wrote:
>> On Sat, Jul 30, 2016 at 1:57 AM, John Stultz <john.stultz@linaro.org> wrote:
>>>
>>> With the patch reverted, and the system working,  I see:
>>>
>>> # ip rule ls
>>> 0:      from all lookup local
>>> 10000:  from all fwmark 0xc0000/0xd0000 lookup legacy_system
>>> 13000:  from all fwmark 0x10063/0x1ffff lookup local_network
>>> 13000:  from all fwmark 0x10065/0x1ffff lookup wlan0
>>> 14000:  from all oif wlan0 lookup wlan0
>>> 14000:  from all oif wlan0 lookup wlan0
>>> 15000:  from all fwmark 0x0/0x10000 lookup legacy_system
>>> 16000:  from all fwmark 0x0/0x10000 lookup legacy_network
>>> 17000:  from all fwmark 0x0/0x10000 lookup local_network
>>> 19000:  from all fwmark 0x64/0x1ffff lookup wlan0
>>> 19000:  from all fwmark 0x65/0x1ffff lookup wlan0
>>> 22000:  from all fwmark 0x0/0xffff lookup wlan0
>>> 32000:  from all unreachable
>>
>>
>> This is not correct, you're missing "uidrange 0-0" qualifiers on some
>> of the rules.
>>
>> Does the kernel pass the networking unit tests at
>> https://source.android.com/devices/tech/config/kernel_network_tests.html
>> ? If not, the Android network stack will not work correctly.
>
> So I looked into getting the tests above to run (had to get a UML fix
> for recent kernels).
>
> Against vanilla v4.7 (plus that one UML fix), all the tests pass.
>
> Against linus/master (plus that one UML fix), I see 7 failures, which
> all look very similar:
>
> Traceback (most recent call last):
>   File "./multinetwork_test.py", line 28, in <module>
>     import multinetwork_base
>   File "/host/home/jstultz/projects/android/hikey/kernel/tests/net/test/multinetwork_base.py",
> line 84, in <module>
>     HAVE_UID_ROUTING = HaveUidRouting()
>   File "/host/home/jstultz/projects/android/hikey/kernel/tests/net/test/multinetwork_base.py",
> line 78, in HaveUidRouting
>     iproute.IPRoute().UidRangeRule(6, False, 1000, 2000, 100, 10000)
>   File "/host/home/jstultz/projects/android/hikey/kernel/tests/net/test/iproute.py",
> line 380, in UidRangeRule
>     return self._Rule(version, is_add, RTN_UNICAST, table, nlattr, priority)
>   File "/host/home/jstultz/projects/android/hikey/kernel/tests/net/test/iproute.py",
> line 348, in _Rule
>     self._SendNlRequest(command, rtmsg)
>   File "/host/home/jstultz/projects/android/hikey/kernel/tests/net/test/iproute.py",
> line 318, in _SendNlRequest
>     super(IPRoute, self)._SendNlRequest(command, data, flags)
>   File "/host/home/jstultz/projects/android/hikey/kernel/tests/net/test/netlink.py",
> line 183, in _SendNlRequest
>     self._ExpectAck()
>   File "/host/home/jstultz/projects/android/hikey/kernel/tests/net/test/netlink.py",
> line 170, in _ExpectAck
>     self._ParseAck(response)
>   File "/host/home/jstultz/projects/android/hikey/kernel/tests/net/test/netlink.py",
> line 164, in _ParseAck
>     raise IOError(error, os.strerror(-error))
> IOError: [Errno -2] No such file or directory
>
>
> Interestingly, reverting 153380ec4b9b ("fib_rules: Added NLM_F_EXCL
> support to fib_nl_newrule"), does not seem to fix it, and I get the
> same errors.


So bisecting between v4.7 and linus/HEAD with the test above, it seems like:
96c63fa7393d ("net: Add l3mdev rule")  is what breaks the tests.

The l3mdev rule patch is a bit tangled with the fib_rules one, but if
I revert both of those, the only thing that fails is the
./neighbour_test.py (which I need to dig further into). But those two
changes seem to be connected to the regression I'm seeing with
Android.

thanks
-john

  reply	other threads:[~2016-08-02 17:04 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-07-29  4:18 [Regression?] fib_rules: Added NLM_F_EXCL support to fib_nl_newrule breaks Android userspace John Stultz
2016-07-29  4:20 ` David Miller
2016-07-29 14:12   ` David Ahern
2016-07-29 16:57     ` John Stultz
2016-07-29 19:10       ` David Ahern
2016-08-01  1:42       ` Lorenzo Colitti
2016-08-02 16:37         ` John Stultz
2016-08-02 17:03           ` John Stultz [this message]
2016-08-02 17:09             ` David Ahern
2016-08-02 17:51               ` John Stultz
2016-08-02 18:00                 ` David Miller
2016-08-02 18:22                   ` John Stultz
2016-08-02 18:28                     ` David Miller
2016-08-03  0:58                   ` Lorenzo Colitti
2016-08-03  1:04                     ` David Miller

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='CALAqxLW1Ge5ZeCEBnP=+0cT1wjQUrXozQc0fEwtmmGs6UQ6eEg@mail.gmail.com' \
    --to=john.stultz@linaro.org \
    --cc=chh@google.com \
    --cc=davem@davemloft.net \
    --cc=dimitrysh@google.com \
    --cc=dsa@cumulusnetworks.com \
    --cc=ejcaruso@google.com \
    --cc=guodong.xu@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lorenzo@google.com \
    --cc=mateusz.bajorski@nokia.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.