Re: 2.5.69-mm2 Kernel panic, possibly network related

From: David S. Miller (davem@redhat.com)
Date: Thu May 08 2003 - 16:53:37 EST


   From: Ed Tomlinson <tomlins@cam.org>
   Date: Thu, 8 May 2003 17:34:54 -0400

   Since I have not noticed anyone posting one, here is the opps that
   kills -mm3

Oh yeah, thats a seperate problem. This should fix it:

--- ./net/ipv4/netfilter/ip_fw_compat_masq.c.~1~ Thu May 8 14:38:01 2003
+++ ./net/ipv4/netfilter/ip_fw_compat_masq.c Thu May 8 14:49:19 2003
@@ -103,19 +103,19 @@ do_masquerade(struct sk_buff **pskb, con
 }
 
 void
-check_for_masq_error(struct sk_buff *skb)
+check_for_masq_error(struct sk_buff **pskb)
 {
         enum ip_conntrack_info ctinfo;
         struct ip_conntrack *ct;
 
- ct = ip_conntrack_get(skb, &ctinfo);
+ ct = ip_conntrack_get(*pskb, &ctinfo);
         /* Wouldn't be here if not tracked already => masq'ed ICMP
            ping or error related to masq'd connection */
         IP_NF_ASSERT(ct);
         if (ctinfo == IP_CT_RELATED) {
- icmp_reply_translation(skb, ct, NF_IP_PRE_ROUTING,
+ icmp_reply_translation(pskb, ct, NF_IP_PRE_ROUTING,
                                        CTINFO2DIR(ctinfo));
- icmp_reply_translation(skb, ct, NF_IP_POST_ROUTING,
+ icmp_reply_translation(pskb, ct, NF_IP_POST_ROUTING,
                                        CTINFO2DIR(ctinfo));
         }
 }
@@ -152,10 +152,10 @@ check_for_demasq(struct sk_buff **pskb)
                                     && skb_linearize(*pskb, GFP_ATOMIC) != 0)
                                         return NF_DROP;
 
- icmp_reply_translation(*pskb, ct,
+ icmp_reply_translation(pskb, ct,
                                                        NF_IP_PRE_ROUTING,
                                                        CTINFO2DIR(ctinfo));
- icmp_reply_translation(*pskb, ct,
+ icmp_reply_translation(pskb, ct,
                                                        NF_IP_POST_ROUTING,
                                                        CTINFO2DIR(ctinfo));
                         }
--- ./net/ipv4/netfilter/ip_fw_compat.c.~1~ Thu May 8 14:39:58 2003
+++ ./net/ipv4/netfilter/ip_fw_compat.c Thu May 8 14:40:08 2003
@@ -35,7 +35,7 @@ extern unsigned int
 do_masquerade(struct sk_buff **pskb, const struct net_device *dev);
 
 extern unsigned int
-check_for_masq_error(struct sk_buff *pskb);
+check_for_masq_error(struct sk_buff **pskb);
 
 extern unsigned int
 check_for_demasq(struct sk_buff **pskb);
@@ -167,7 +167,7 @@ fw_in(unsigned int hooknum,
                         /* Handle ICMP errors from client here */
                         if ((*pskb)->nh.iph->protocol == IPPROTO_ICMP
                             && (*pskb)->nfct)
- check_for_masq_error(*pskb);
+ check_for_masq_error(pskb);
                 }
                 return NF_ACCEPT;
 
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu May 15 2003 - 22:00:29 EST