|
9 | 9 | * The following concept of the memory management is used: |
10 | 10 | * |
11 | 11 | * The kernel maintains two SGLs, the TX SGL and the RX SGL. The TX SGL is |
12 | | - * filled by user space with the data submitted via sendpage. Filling up |
13 | | - * the TX SGL does not cause a crypto operation -- the data will only be |
14 | | - * tracked by the kernel. Upon receipt of one recvmsg call, the caller must |
15 | | - * provide a buffer which is tracked with the RX SGL. |
| 12 | + * filled by user space with the data submitted via sendmsg (maybe with |
| 13 | + * MSG_SPLICE_PAGES). Filling up the TX SGL does not cause a crypto operation |
| 14 | + * -- the data will only be tracked by the kernel. Upon receipt of one recvmsg |
| 15 | + * call, the caller must provide a buffer which is tracked with the RX SGL. |
16 | 16 | * |
17 | 17 | * During the processing of the recvmsg operation, the cipher request is |
18 | 18 | * allocated and prepared. As part of the recvmsg operation, the processed |
@@ -370,7 +370,6 @@ static struct proto_ops algif_aead_ops = { |
370 | 370 |
|
371 | 371 | .release = af_alg_release, |
372 | 372 | .sendmsg = aead_sendmsg, |
373 | | - .sendpage = af_alg_sendpage, |
374 | 373 | .recvmsg = aead_recvmsg, |
375 | 374 | .poll = af_alg_poll, |
376 | 375 | }; |
@@ -422,18 +421,6 @@ static int aead_sendmsg_nokey(struct socket *sock, struct msghdr *msg, |
422 | 421 | return aead_sendmsg(sock, msg, size); |
423 | 422 | } |
424 | 423 |
|
425 | | -static ssize_t aead_sendpage_nokey(struct socket *sock, struct page *page, |
426 | | - int offset, size_t size, int flags) |
427 | | -{ |
428 | | - int err; |
429 | | - |
430 | | - err = aead_check_key(sock); |
431 | | - if (err) |
432 | | - return err; |
433 | | - |
434 | | - return af_alg_sendpage(sock, page, offset, size, flags); |
435 | | -} |
436 | | - |
437 | 424 | static int aead_recvmsg_nokey(struct socket *sock, struct msghdr *msg, |
438 | 425 | size_t ignored, int flags) |
439 | 426 | { |
@@ -461,7 +448,6 @@ static struct proto_ops algif_aead_ops_nokey = { |
461 | 448 |
|
462 | 449 | .release = af_alg_release, |
463 | 450 | .sendmsg = aead_sendmsg_nokey, |
464 | | - .sendpage = aead_sendpage_nokey, |
465 | 451 | .recvmsg = aead_recvmsg_nokey, |
466 | 452 | .poll = af_alg_poll, |
467 | 453 | }; |
|
0 commit comments