Re: NEEDS FIXING - Was: Re: [PATCH v2] ipv4: ping: fix bind address validity check

From: Riccardo Paolo Bestetti
Date: Sat Jun 18 2022 - 03:36:33 EST


On Sat Jun 18, 2022 at 4:58 AM CEST, Jakub Kicinski wrote:
> On Sat, 18 Jun 2022 02:32:55 +0200 Riccardo Paolo Bestetti wrote:
> > [...]
> > 2) My patch is faulty. I had a complete and tested patch, including code
> > fixing the regression. Instead of sending it, however, I decided to
> > adapt it to preserve Carlos Llamas' version of ping.c, since they posted
> > their patch first. In doing so I used a work branch which contained a
> > faulty version (wrong flags) of the regression tests. The resulting
> > faulty patch is, unfortunately, currently in the tree.
> >
> > At this point, due to the unfortunate combination of (1) and (2), it
> > might be worth reverting the patch altogether and just applying the v1
> > (i.e. without the regression tests) to the tree and to the relevant LTS
> > versions.
>
> IIUC only the test is faulty / unreliable, correct?

Correct, I don't see anything wrong with the fix itself. When manually
tested it shows the intended behaviour (sorry for the long lines):

$ pwd
$KERNEL_TREE/net/tools/testing/selftests/net

$ uname -a
Linux enhorning 5.19.0-rc2kbr-00103-gb4a028c4d031 #1 SMP PREEMPT_DYNAMIC Fri Jun 17 13:51:24 CEST 2022 x86_64 GNU/Linux

$ ./nettest -s -D -P icmp -l 224.0.0.1 -b
09:19:50 server: error binding socket: 99: Cannot assign requested address

$ ./nettest -s -D -P icmp -l 255.255.255.255 -b
09:21:20 server: error binding socket: 99: Cannot assign requested address

(and fcnal-test.sh shows nothing noteworthy.)


Riccardo P. Bestetti

>
> We have until Thursday before this patch hits Linus's tree so should
> be plenty of time to figure the problem out and apply an incremental
> fix. I see you posted an RFC already, thanks!
>
> > After that, a more proper discussion can be had about (1), and the
> > regression tests can be fixed. I'm sending a demonstrative patch for
> > that as a response to this message.