J. Bruce Fields
034dd34ff4
svcrpc: fix oops in absence of krb5 module
...
Olga Kornievskaia says: "I ran into this oops in the nfsd (below)
(4.10-rc3 kernel). To trigger this I had a client (unsuccessfully) try
to mount the server with krb5 where the server doesn't have the
rpcsec_gss_krb5 module built."
The problem is that rsci.cred is copied from a svc_cred structure that
gss_proxy didn't properly initialize. Fix that.
[120408.542387] general protection fault: 0000 [#1 ] SMP
...
[120408.565724] CPU: 0 PID: 3601 Comm: nfsd Not tainted 4.10.0-rc3+ #16
[120408.567037] Hardware name: VMware, Inc. VMware Virtual =
Platform/440BX Desktop Reference Platform, BIOS 6.00 07/02/2015
[120408.569225] task: ffff8800776f95c0 task.stack: ffffc90003d58000
[120408.570483] RIP: 0010:gss_mech_put+0xb/0x20 [auth_rpcgss]
...
[120408.584946] ? rsc_free+0x55/0x90 [auth_rpcgss]
[120408.585901] gss_proxy_save_rsc+0xb2/0x2a0 [auth_rpcgss]
[120408.587017] svcauth_gss_proxy_init+0x3cc/0x520 [auth_rpcgss]
[120408.588257] ? __enqueue_entity+0x6c/0x70
[120408.589101] svcauth_gss_accept+0x391/0xb90 [auth_rpcgss]
[120408.590212] ? try_to_wake_up+0x4a/0x360
[120408.591036] ? wake_up_process+0x15/0x20
[120408.592093] ? svc_xprt_do_enqueue+0x12e/0x2d0 [sunrpc]
[120408.593177] svc_authenticate+0xe1/0x100 [sunrpc]
[120408.594168] svc_process_common+0x203/0x710 [sunrpc]
[120408.595220] svc_process+0x105/0x1c0 [sunrpc]
[120408.596278] nfsd+0xe9/0x160 [nfsd]
[120408.597060] kthread+0x101/0x140
[120408.597734] ? nfsd_destroy+0x60/0x60 [nfsd]
[120408.598626] ? kthread_park+0x90/0x90
[120408.599448] ret_from_fork+0x22/0x30
Fixes: 1d658336b0 "SUNRPC: Add RPC based upcall mechanism for RPCGSS auth"
Cc: stable@vger.kernel.org
Cc: Simo Sorce <simo@redhat.com>
Reported-by: Olga Kornievskaia <kolga@netapp.com>
Tested-by: Olga Kornievskaia <kolga@netapp.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
2017-01-31 12:29:24 -05:00
..
6lowpan
6lowpan: ndisc: no overreact if no short address is available
2016-09-19 20:19:34 +02:00
9p
IB/core: add support to create a unsafe global rkey to ib_create_pd
2016-09-23 13:47:44 -04:00
802
Replace <asm/uaccess.h> with <linux/uaccess.h> globally
2016-12-24 11:46:01 -08:00
8021q
Replace <asm/uaccess.h> with <linux/uaccess.h> globally
2016-12-24 11:46:01 -08:00
appletalk
appletalk: use IS_ENABLED() instead of checking for built-in or module
2016-09-10 21:19:10 -07:00
atm
net: atm: Fix warnings in net/atm/lec.c when !CONFIG_PROC_FS
2016-12-28 15:11:32 -05:00
ax25
ax25: Fix segfault after sock connection timeout
2017-01-16 14:39:58 -05:00
batman-adv
batman-adv: Decrease hardif refcnt on fragmentation send error
2017-01-04 08:22:04 +01:00
bluetooth
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2016-12-16 10:24:44 -08:00
bridge
bridge: netlink: call br_changelink() during br_dev_newlink()
2017-01-20 15:07:27 -05:00
caif
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2016-12-06 21:33:19 -05:00
can
ktime: Cleanup ktime_set() usage
2016-12-25 17:21:22 +01:00
ceph
libceph: make sure ceph_aes_crypt() IV is aligned
2017-01-18 17:58:45 +01:00
core
lwtunnel: Fix oops on state free after encap module unload
2017-01-24 16:21:36 -05:00
dcb
net: dcb: set error code on failures
2016-12-03 23:54:25 -05:00
dccp
tcp: don't annotate mark on control socket from tcp_v6_send_response()
2017-01-27 10:33:56 -05:00
decnet
Replace <asm/uaccess.h> with <linux/uaccess.h> globally
2016-12-24 11:46:01 -08:00
dns_resolver
dsa
net: dsa: Bring back device detaching in dsa_slave_suspend()
2017-01-25 14:47:44 -05:00
ethernet
net: make default TX queue length a defined constant
2016-11-07 20:15:55 -05:00
hsr
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2016-10-30 12:42:58 -04:00
ieee802154
Makefile: drop -D__CHECK_ENDIAN__ from cflags
2016-12-16 00:13:43 +02:00
ipv4
Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf
2017-01-26 12:54:50 -05:00
ipv6
tcp: don't annotate mark on control socket from tcp_v6_send_response()
2017-01-27 10:33:56 -05:00
ipx
ktime: Get rid of the union
2016-12-25 17:21:22 +01:00
irda
Replace <asm/uaccess.h> with <linux/uaccess.h> globally
2016-12-24 11:46:01 -08:00
iucv
net/af_iucv: don't use paged skbs for TX on HiperSockets
2017-01-10 21:08:29 -05:00
kcm
Merge branch 'work.splice_read' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2016-10-07 15:36:58 -07:00
key
netns: make struct pernet_operations::id unsigned int
2016-11-18 10:59:15 -05:00
l2tp
l2tp: take remote address into account in l2tp_ip and l2tp_ip6 socket lookups
2017-01-01 22:07:20 -05:00
l3mdev
net: ipv6: Remove l3mdev_get_saddr6
2016-09-10 23:12:53 -07:00
lapb
Replace <asm/uaccess.h> with <linux/uaccess.h> globally
2016-12-24 11:46:01 -08:00
llc
net: fix sleeping for sk_wait_event()
2016-11-14 13:17:21 -05:00
mac80211
mac80211: don't try to sleep in rate_control_rate_init()
2017-01-24 16:31:54 +01:00
mac802154
ktime: Cleanup ktime_set() usage
2016-12-25 17:21:22 +01:00
mpls
net: Specify the owning module for lwtunnel ops
2017-01-24 16:21:36 -05:00
ncsi
net/ncsi: Improve HNCDSC AEN handler
2016-10-20 11:23:08 -04:00
netfilter
netfilter: nf_tables: bump set->ndeact on set flush
2017-01-24 21:46:59 +01:00
netlabel
netlabel: add CALIPSO to the list of built-in protocols
2017-01-06 22:20:45 -05:00
netlink
Replace <asm/uaccess.h> with <linux/uaccess.h> globally
2016-12-24 11:46:01 -08:00
netrom
nfc
genetlink: mark families as __ro_after_init
2016-10-27 16:16:09 -04:00
openvswitch
openvswitch: maintain correct checksum state in conntrack actions
2017-01-15 22:15:16 -05:00
packet
virtio-net: restore VIRTIO_HDR_F_DATA_VALID on receiving
2017-01-20 11:01:17 -05:00
phonet
netns: make struct pernet_operations::id unsigned int
2016-11-18 10:59:15 -05:00
qrtr
net: qrtr: Mark 'buf' as little endian
2017-01-10 20:45:04 -05:00
rds
RDS: use rb_entry()
2016-12-20 14:22:49 -05:00
rfkill
rose
Replace <asm/uaccess.h> with <linux/uaccess.h> globally
2016-12-24 11:46:01 -08:00
rxrpc
rxrpc: abstract away knowledge of IDR internals
2016-12-14 16:04:10 -08:00
sched
net sched actions: fix refcnt when GETing of action after bind
2017-01-16 19:43:19 -05:00
sctp
tcp: don't annotate mark on control socket from tcp_v6_send_response()
2017-01-27 10:33:56 -05:00
strparser
strparser: Propagate correct error code in strp_recv()
2016-10-12 01:51:49 -04:00
sunrpc
svcrpc: fix oops in absence of krb5 module
2017-01-31 12:29:24 -05:00
switchdev
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2016-10-30 12:42:58 -04:00
tipc
tipc: fix cleanup at module unload
2017-01-24 16:14:58 -05:00
unix
af_unix: move unix_mknod() out of bindlock
2017-01-24 14:30:56 -05:00
vmw_vsock
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2016-12-17 20:17:04 -08:00
wimax
genetlink: mark families as __ro_after_init
2016-10-27 16:16:09 -04:00
wireless
cfg80211: consider VHT opmode on station update
2017-01-11 16:34:25 +01:00
x25
Replace <asm/uaccess.h> with <linux/uaccess.h> globally
2016-12-24 11:46:01 -08:00
xfrm
ktime: Cleanup ktime_set() usage
2016-12-25 17:21:22 +01:00
compat.c
Replace <asm/uaccess.h> with <linux/uaccess.h> globally
2016-12-24 11:46:01 -08:00
Kconfig
cgroup: move CONFIG_SOCK_CGROUP_DATA to init/Kconfig
2017-01-11 09:47:10 -05:00
Makefile
strparser: Stream parser for messages
2016-08-17 19:36:23 -04:00
socket.c
net: socket: Make unnecessarily global sockfs_setattr() static
2017-01-10 11:29:50 -05:00
sysctl_net.c
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace
2016-10-06 09:52:23 -07:00