android_kernel_samsung_msm8976/net
Ilya Dryomov a9f1235c8c libceph: introduce ceph_crypt() for in-place en/decryption
Starting with 4.9, kernel stacks may be vmalloced and therefore not
guaranteed to be physically contiguous; the new CONFIG_VMAP_STACK
option is enabled by default on x86.  This makes it invalid to use
on-stack buffers with the crypto scatterlist API, as sg_set_buf()
expects a logical address and won't work with vmalloced addresses.

There isn't a different (e.g. kvec-based) crypto API we could switch
net/ceph/crypto.c to and the current scatterlist.h API isn't getting
updated to accommodate this use case.  Allocating a new header and
padding for each operation is a non-starter, so do the en/decryption
in-place on a single pre-assembled (header + data + padding) heap
buffer.  This is explicitly supported by the crypto API:

    "... the caller may provide the same scatter/gather list for the
     plaintext and cipher text. After the completion of the cipher
     operation, the plaintext data is replaced with the ciphertext data
     in case of an encryption and vice versa for a decryption."

Change-Id: I554cae76340899bb6f00e2e06230f3a27da186a1
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Reviewed-by: Sage Weil <sage@redhat.com>
2017-04-22 23:02:50 +02:00
..
9p 9p: forgetting to cancel request on interrupted zero-copy RPC 2015-08-03 09:29:47 -07:00
802
8021q
appletalk
atm
ax25 Import latest Samsung release 2017-04-18 03:43:52 +02:00
batman-adv batman-adv: Fix broadcast/ogm queue limit on a removed interface 2016-06-07 10:42:53 +02:00
bluetooth This is the 3.10.94 stable release 2017-04-18 17:12:56 +02:00
bridge This is the 3.10.102 stable release 2017-04-18 17:22:08 +02:00
caif net/unix: sk_socket can disappear when state is unlocked 2015-09-16 18:20:18 +05:30
can
ceph libceph: introduce ceph_crypt() for in-place en/decryption 2017-04-22 23:02:50 +02:00
core This is the 3.10.102 stable release 2017-04-18 17:22:08 +02:00
dcb
dccp Import latest Samsung release 2017-04-18 03:43:52 +02:00
decnet Import latest Samsung release 2017-04-18 03:43:52 +02:00
dns_resolver
dsa
ethernet
ieee802154
ipc_router net: ipc_router: Remove duplicate client port check 2017-04-22 23:02:47 +02:00
ipv4 This is the 3.10.102 stable release 2017-04-18 17:22:08 +02:00
ipv6 This is the 3.10.102 stable release 2017-04-18 17:22:08 +02:00
ipx
irda irda: Fix lockdep annotations in hashbin_delete(). 2017-04-22 23:02:49 +02:00
iucv
key
l2tp This is the 3.10.102 stable release 2017-04-18 17:22:08 +02:00
lapb
llc net: fix infoleak in llc 2016-06-07 10:42:54 +02:00
mac80211 This is the 3.10.101 stable release 2017-04-18 17:17:55 +02:00
mac802154
netfilter This is the 3.10.102 stable release 2017-04-18 17:22:08 +02:00
netlabel
netlink Merge remote-tracking branch 'f2fs/linux-3.10.y' into HEAD 2017-04-18 17:02:28 +02:00
netrom
nfc
openvswitch
packet packet: fix races in fanout_add() 2017-04-22 23:02:49 +02:00
phonet This is the 3.10.96 stable release 2017-04-18 17:16:02 +02:00
rds This is the 3.10.99 stable release 2017-04-18 17:17:46 +02:00
rfkill This is the 3.10.99 stable release 2017-04-18 17:17:46 +02:00
rmnet_data Merge tag 'LA.BR.1.3.6-03510-8976.0' into HEAD 2017-04-18 12:11:50 +02:00
rose
rxrpc Import latest Samsung release 2017-04-18 03:43:52 +02:00
sched This is the 3.10.84 stable release 2015-09-30 13:25:40 +05:30
sctp This is the 3.10.102 stable release 2017-04-18 17:22:08 +02:00
sunrpc This is the 3.10.99 stable release 2017-04-18 17:17:46 +02:00
tipc net/tipc: initialize security state for new connection socket 2015-10-01 12:07:35 +02:00
unix This is the 3.10.96 stable release 2017-04-18 17:16:02 +02:00
vmw_vsock VSOCK: do not disconnect socket when peer has shutdown SEND only 2016-06-07 10:42:54 +02:00
wimax
wireless This is the 3.10.102 stable release 2017-04-18 17:22:08 +02:00
x25 net: fix a kernel infoleak in x25 module 2016-06-07 10:42:54 +02:00
xfrm
Kconfig
Makefile
activity_stats.c
compat.c
nonet.c
socket.c This is the 3.10.102 stable release 2017-04-18 17:22:08 +02:00
sysctl_net.c