sock: Remove ->sendpage*() in favour of sendmsg(MSG_SPLICE_PAGES)
[platform/kernel/linux-starfive.git] / net / ieee802154 / socket.c
index 1fa2fe0..00302e8 100644 (file)
@@ -162,7 +162,7 @@ static int ieee802154_sock_ioctl(struct socket *sock, unsigned int cmd,
        default:
                if (!sk->sk_prot->ioctl)
                        return -ENOIOCTLCMD;
-               return sk->sk_prot->ioctl(sk, cmd, arg);
+               return sk_ioctl(sk, cmd, (void __user *)arg);
        }
 }
 
@@ -426,7 +426,6 @@ static const struct proto_ops ieee802154_raw_ops = {
        .sendmsg           = ieee802154_sock_sendmsg,
        .recvmsg           = sock_common_recvmsg,
        .mmap              = sock_no_mmap,
-       .sendpage          = sock_no_sendpage,
 };
 
 /* DGRAM Sockets (802.15.4 dataframes) */
@@ -531,22 +530,21 @@ out:
        return err;
 }
 
-static int dgram_ioctl(struct sock *sk, int cmd, unsigned long arg)
+static int dgram_ioctl(struct sock *sk, int cmd, int *karg)
 {
        switch (cmd) {
        case SIOCOUTQ:
        {
-               int amount = sk_wmem_alloc_get(sk);
+               *karg = sk_wmem_alloc_get(sk);
 
-               return put_user(amount, (int __user *)arg);
+               return 0;
        }
 
        case SIOCINQ:
        {
                struct sk_buff *skb;
-               unsigned long amount;
 
-               amount = 0;
+               *karg = 0;
                spin_lock_bh(&sk->sk_receive_queue.lock);
                skb = skb_peek(&sk->sk_receive_queue);
                if (skb) {
@@ -554,10 +552,10 @@ static int dgram_ioctl(struct sock *sk, int cmd, unsigned long arg)
                         * of this packet since that is all
                         * that will be read.
                         */
-                       amount = skb->len - ieee802154_hdr_length(skb);
+                       *karg = skb->len - ieee802154_hdr_length(skb);
                }
                spin_unlock_bh(&sk->sk_receive_queue.lock);
-               return put_user(amount, (int __user *)arg);
+               return 0;
        }
        }
 
@@ -990,7 +988,6 @@ static const struct proto_ops ieee802154_dgram_ops = {
        .sendmsg           = ieee802154_sock_sendmsg,
        .recvmsg           = sock_common_recvmsg,
        .mmap              = sock_no_mmap,
-       .sendpage          = sock_no_sendpage,
 };
 
 static void ieee802154_sock_destruct(struct sock *sk)