Re: Serious locking bug in Linux NFS

Alan Cox (alan@lxorguk.ukuu.org.uk)
Sun, 18 Oct 1998 00:08:42 +0100 (BST)


> Here is the relevant code:
>
> if (lp->addr.s_addr != sin->sin_addr.s_addr)
> dprintf(L_WARNING, "address mismatch: "
> "expected %s, got %s\n",
> inet_ntoa(lp->addr),
> inet_ntoa(sin->sin_addr));

> I don't see how it can happen besides a bad compiler/HW. It looks
> like you may have a compiler/HW.

The dprintf statement is buggy. The inet_ntoa function uses a static buffer.
The true values weren't reported. Changes are some kind of multihoming
is the real problem. Make a copy of the first inet_ntoa() value then do
the printk

Alan

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/