From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753152AbcG2OMz (ORCPT ); Fri, 29 Jul 2016 10:12:55 -0400 Received: from mail-pa0-f45.google.com ([209.85.220.45]:35408 "EHLO mail-pa0-f45.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751557AbcG2OMx (ORCPT ); Fri, 29 Jul 2016 10:12:53 -0400 Subject: Re: [Regression?] fib_rules: Added NLM_F_EXCL support to fib_nl_newrule breaks Android userspace To: David Miller , john.stultz@linaro.org References: <20160728.212031.549387302791502368.davem@davemloft.net> Cc: mateusz.bajorski@nokia.com, linux-kernel@vger.kernel.org, guodong.xu@linaro.org, dimitrysh@google.com From: David Ahern Message-ID: <5ff19cc3-e607-282d-853a-410b985f8756@cumulusnetworks.com> Date: Fri, 29 Jul 2016 08:12:47 -0600 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 MIME-Version: 1.0 In-Reply-To: <20160728.212031.549387302791502368.davem@davemloft.net> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 7/28/16 10:20 PM, David Miller wrote: > From: John Stultz > Date: Thu, 28 Jul 2016 21:18:16 -0700 > >> After moving my HiKey tree to pre-v4.8-rc, I noticed when using >> Android that I was getting routing errors after toggling networking on >> and off (or entering suspend). Wifi associated, but I got some >> rounting errors in the logcat the connection manager wouldn't detect a >> valid network. >> >> Not being able to figure out exactly what was going wrong from the >> userspace side, I bisected (manually rebasing a 70 patch stack each >> step :P) it down and it seems that the commit: 153380ec4b9b >> ("fib_rules: Added NLM_F_EXCL support to fib_nl_newrule") is causing >> the problem. >> >> Reverting that patch seems to make things work again. >> >> I'm no networking guru, but I'm happy to help debug this further if >> folks can walk me through it a bit. > > It simply sounds like Android's userspace is specifying NLM_F_EXCL when > it shouldn't be during FIB rule netlink operations. > I take Android userspace inserts the same rule multiple times? (ip rule ls) If so and multiple components expect to manage their own 'copy' of the rule they will need to remove the NLM_F_EXCL flag.