Merge tag 'iommu-updates-v3.10' of git://git.kernel.org/pub/scm/linux/kernel/git...
[pandora-kernel.git] / net / ipv4 / ping.c
index 6f9c072..7d93d62 100644 (file)
@@ -322,8 +322,8 @@ void ping_err(struct sk_buff *skb, u32 info)
        struct iphdr *iph = (struct iphdr *)skb->data;
        struct icmphdr *icmph = (struct icmphdr *)(skb->data+(iph->ihl<<2));
        struct inet_sock *inet_sock;
-       int type = icmph->type;
-       int code = icmph->code;
+       int type = icmp_hdr(skb)->type;
+       int code = icmp_hdr(skb)->code;
        struct net *net = dev_net(skb->dev);
        struct sock *sk;
        int harderr;
@@ -514,9 +514,8 @@ static int ping_sendmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg,
        ipc.opt = NULL;
        ipc.oif = sk->sk_bound_dev_if;
        ipc.tx_flags = 0;
-       err = sock_tx_timestamp(sk, &ipc.tx_flags);
-       if (err)
-               return err;
+
+       sock_tx_timestamp(sk, &ipc.tx_flags);
 
        if (msg->msg_controllen) {
                err = ip_cmsg_send(sock_net(sk), msg, &ipc);
@@ -889,7 +888,7 @@ static int ping_proc_register(struct net *net)
        struct proc_dir_entry *p;
        int rc = 0;
 
-       p = proc_net_fops_create(net, "icmp", S_IRUGO, &ping_seq_fops);
+       p = proc_create("icmp", S_IRUGO, net->proc_net, &ping_seq_fops);
        if (!p)
                rc = -ENOMEM;
        return rc;
@@ -897,7 +896,7 @@ static int ping_proc_register(struct net *net)
 
 static void ping_proc_unregister(struct net *net)
 {
-       proc_net_remove(net, "icmp");
+       remove_proc_entry("icmp", net->proc_net);
 }