From: David Ahern <dsah...@gmail.com> Date: Fri, 16 Mar 2018 08:45:10 -0700
> On 3/16/18 8:40 AM, David Miller wrote: >> Hmmm, this actually "accumulates" the flag rather than sets it. >> >> Have you thought about what should happen if the cfg has RTNH_F_ONLINK >> set? > > yes, that's why the test script adds cases with the ONLINK flag set for > both nexthops, then one with it on the first nexthop only, and one with > the flag only on the second nexthop. > > If you look at the full loop 'cfg' is the variable with the user data, > and r_cfg is the 'local loop version' so r_cfg.fc_flags gets reset for > each nexthop: > > while (rtnh_ok(rtnh, remaining)) { > memcpy(&r_cfg, cfg, sizeof(*cfg)); > ... > r_cfg.fc_flags |= (rtnh->rtnh_flags & RTNH_F_ONLINK); > rt = ip6_route_info_create(&r_cfg, extack); Right. >> I think you should either change this logic to a true 'set', or adjust >> your commit message to address this aspect of the new behavior. > > I can update the commit message. Please do, thanks David.