amd + NFS reconnect = ICMP storm + unkillable process.

Artem Belevich art at freebsd.org
Fri Aug 26 01:43:14 UTC 2011


On Thu, Aug 25, 2011 at 6:24 PM, Rick Macklem <rmacklem at uoguelph.ca> wrote:
> Btw, I fixed exactly the same issue for the TCP code (clnt_vc.c) in
> r221127, so I wouldn't be surprised if the UDP code suffers the same

The code in clnt_vc.c was exactly what made me wonder about treatment
of ERESTART.

> problem. I'll take a look at your patch tomorrow. You could also try
> a TCP mount and see if the problem goes away. (For TCP on a pre-r221127
> system, the symptom would be a client thread looping in the kernel in
> "R" state.)

In my case the process was also stuck in unkillable running state
because the process never returns from the syscall.

Unfortunately amd itself seems to handle NFS requests for its own
top-level mountpoints only via UDP. At least I haven't found a way to
do so without hacking rather convoluted amd code.

> I'll look tomorrow, but it sounds like you've figured it out. Looks like
> a good catch to me at this point, rick

Let me know if you're OK with the patch and I'll commit to head and
MFC it to stable/8.

--Artem


More information about the freebsd-net mailing list