Revision ce85cfbed6fe3dbc01bd1976b23ac3e97878cde6 authored by Benjamin Coddington on 21 April 2015, 18:17:35 UTC, committed by Trond Myklebust on 23 April 2015, 19:16:15 UTC
If a READDIR reply comes back without any page data, avoid a NULL pointer
dereference in xdr_copy_to_scratch().

BUG: unable to handle kernel NULL pointer dereference at 0000000000000001
IP: [<ffffffff813a378d>] memcpy+0xd/0x110
...
Call Trace:
	? xdr_inline_decode+0x7a/0xb0 [sunrpc]
	nfs3_decode_dirent+0x73/0x320 [nfsv3]
	nfs_readdir_page_filler+0xd5/0x4e0 [nfs]
	? nfs3_rpc_wrapper.constprop.9+0x42/0xc0 [nfsv3]
	nfs_readdir_xdr_to_array+0x1fa/0x330 [nfs]
	? mem_cgroup_commit_charge+0xac/0x160
	? nfs_readdir_xdr_to_array+0x330/0x330 [nfs]
	nfs_readdir_filler+0x22/0x90 [nfs]
	do_read_cache_page+0x7e/0x1a0
	read_cache_page+0x1c/0x20
	nfs_readdir+0x18e/0x660 [nfs]
	? nfs3_xdr_dec_getattr3res+0x80/0x80 [nfsv3]
	iterate_dir+0x97/0x130
	SyS_getdents+0x94/0x120
	? fillonedir+0xd0/0xd0
	system_call_fastpath+0x12/0x17

Signed-off-by: Benjamin Coddington <bcodding@redhat.com>
Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
1 parent 3708f84
History
File Mode Size
netfilter
Kconfig -rw-r--r-- 2.0 KB
Makefile -rw-r--r-- 576 bytes
br.c -rw-r--r-- 5.8 KB
br_device.c -rw-r--r-- 9.2 KB
br_fdb.c -rw-r--r-- 24.5 KB
br_forward.c -rw-r--r-- 6.5 KB
br_if.c -rw-r--r-- 12.8 KB
br_input.c -rw-r--r-- 7.4 KB
br_ioctl.c -rw-r--r-- 8.9 KB
br_mdb.c -rw-r--r-- 11.0 KB
br_multicast.c -rw-r--r-- 51.1 KB
br_netfilter.c -rw-r--r-- 26.7 KB
br_netlink.c -rw-r--r-- 19.2 KB
br_nf_core.c -rw-r--r-- 2.2 KB
br_private.h -rw-r--r-- 23.4 KB
br_private_stp.h -rw-r--r-- 1.9 KB
br_stp.c -rw-r--r-- 13.4 KB
br_stp_bpdu.c -rw-r--r-- 5.7 KB
br_stp_if.c -rw-r--r-- 7.7 KB
br_stp_timer.c -rw-r--r-- 4.5 KB
br_sysfs_br.c -rw-r--r-- 23.6 KB
br_sysfs_if.c -rw-r--r-- 8.4 KB
br_vlan.c -rw-r--r-- 15.0 KB

back to top