On Wed, Oct 24, 2007 at 03:25:44PM +0200, Romano Giannetti wrote: > > Hi, > > 2.6.23-rc1 fails for me. I have the sensation it is network-related, but > I am not sure, so I send this message just to the list. > This same failure was present in git-5734-gd85714d, I sent > a message to the list but it seems it never arrived. I hope this will > pass through. My system is a toshiba satellite A305-S5077, dual core pentium. > > The symptoms are quite strange. At boot, NetworkManager fails to activate > my eth0 (r8169). Just stopping/restarting NM will make it works.
Denis V. Lunev wrote a patch for the NetworkManager thing a day or two ago (which DaveM has queued). Since netlink is involved in the traces you sent, this might do something for the other too. The patch I recieved follows: > Revert to original netlink behavior. Do not reply with ACK if the > netlink dump has bees successfully started. > libnl has been broken by the cd40b7d3983c708aabe3d3008ec64ffce56d33b0 > The following command reproduce the problem: > /nl-route-get 192.168.1.1 > Signed-off-by: Denis V. Lunev <[EMAIL PROTECTED]> diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c index 98e313e..44a8b41 100644 --- a/net/netlink/af_netlink.c +++ b/net/netlink/af_netlink.c @@ -1565,7 +1565,10 @@ int netlink_dump_start(struct sock *ssk, struct sk_buff *skb, netlink_dump(sk); sock_put(sk); - return 0; + + /* We successfully started a dump, by returning -EINTR we + * signal not to send ACK even if it was requested */ + return -EINTR; } void netlink_ack(struct sk_buff *in_skb, struct nlmsghdr *nlh, int err) @@ -1619,17 +1622,21 @@ int netlink_rcv_skb(struct sk_buff *skb, int (*cb)(struct sk_buff *, /* Only requests are handled by the kernel */ if (!(nlh->nlmsg_flags & NLM_F_REQUEST)) - goto skip; + goto ack; /* Skip control messages */ if (nlh->nlmsg_type < NLMSG_MIN_TYPE) - goto skip; + goto ack; err = cb(skb, nlh); -skip: + if (err == -EINTR) + goto skip; + +ack: if (nlh->nlmsg_flags & NLM_F_ACK || err) netlink_ack(skb, nlh, err); +skip: msglen = NLMSG_ALIGN(nlh->nlmsg_len); if (msglen > skb->len) msglen = skb->len; -- Joseph Fannin [EMAIL PROTECTED] - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/