input: touchscreen: gt9xx: add firmware for rk3399 9.7' sample mid
[firefly-linux-kernel-4.4.55.git] / drivers / net / ppp / pppopns.c
index 6016d29c0660c5bbb50e7baf13711a3fb663d6db..d9e06039794e510ae0674480c32971d97d452d34 100644 (file)
@@ -169,7 +169,7 @@ drop:
        return NET_RX_DROP;
 }
 
-static void pppopns_recv(struct sock *sk_raw, int length)
+static void pppopns_recv(struct sock *sk_raw)
 {
        struct sk_buff *skb;
        while ((skb = skb_dequeue(&sk_raw->sk_receive_queue))) {
@@ -189,12 +189,11 @@ static void pppopns_xmit_core(struct work_struct *delivery_work)
        while ((skb = skb_dequeue(&delivery_queue))) {
                struct sock *sk_raw = skb->sk;
                struct kvec iov = {.iov_base = skb->data, .iov_len = skb->len};
-               struct msghdr msg = {
-                       .msg_iov = (struct iovec *)&iov,
-                       .msg_iovlen = 1,
-                       .msg_flags = MSG_NOSIGNAL | MSG_DONTWAIT,
-               };
-               sk_raw->sk_prot->sendmsg(NULL, sk_raw, &msg, skb->len);
+               struct msghdr msg = { 0 };
+
+               iov_iter_kvec(&msg.msg_iter, WRITE | ITER_KVEC, &iov, 1,
+                             skb->len);
+               sk_raw->sk_prot->sendmsg(sk_raw, &msg, skb->len);
                kfree_skb(skb);
        }
        set_fs(old_fs);
@@ -375,11 +374,11 @@ static struct proto_ops pppopns_proto_ops = {
        .mmap = sock_no_mmap,
 };
 
-static int pppopns_create(struct net *net, struct socket *sock)
+static int pppopns_create(struct net *net, struct socket *sock, int kern)
 {
        struct sock *sk;
 
-       sk = sk_alloc(net, PF_PPPOX, GFP_KERNEL, &pppopns_proto);
+       sk = sk_alloc(net, PF_PPPOX, GFP_KERNEL, &pppopns_proto, kern);
        if (!sk)
                return -ENOMEM;