From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pa0-f48.google.com ([209.85.220.48]:36511 "EHLO mail-pa0-f48.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750846AbbJBRoY (ORCPT ); Fri, 2 Oct 2015 13:44:24 -0400 Received: by pablk4 with SMTP id lk4so111481928pab.3 for ; Fri, 02 Oct 2015 10:44:24 -0700 (PDT) Message-ID: <560EC276.3030905@cumulusnetworks.com> Date: Fri, 02 Oct 2015 10:44:22 -0700 From: roopa MIME-Version: 1.0 To: Roland Dreier CC: David Miller , tgraf@suug.ch, "netdev@vger.kernel.org" , wkok@cumulusnetworks.com, stable@vger.kernel.org Subject: Re: [PATCH net] fib_rules: fix fib rule dumps across multiple skbs References: <1442983222-42750-1-git-send-email-roopa@cumulusnetworks.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Sender: stable-owner@vger.kernel.org List-ID: On 10/2/15, 10:18 AM, Roland Dreier wrote: > On Tue, Sep 22, 2015 at 9:40 PM, Roopa Prabhu wrote: >> + err = fib_nl_fill_rule(skb, rule, NETLINK_CB(cb->skb).portid, >> + cb->nlh->nlmsg_seq, RTM_NEWRULE, >> + NLM_F_MULTI, ops); >> + if (err) > FWIW I believe this breaks pre-4.0 stable kernels (unfortunately it > just showed up in 3.10.90). In kernels without 053c095a82cf > ("netlink: make nlmsg_end() and genlmsg_end() void") then > fib_nl_fill_rule() returns a positive value (skb->len) on success, so > we break out of the loop here immediately. Symptom is "ip rule show" > loops forever printing the first rule. > > After I finish testing a fix (as trivial as changing to "if (err < > 0)") here, I'll send it to -stable guys. > Thanks for catching this.