summaryrefslogtreecommitdiff
path: root/arch/s390
diff options
context:
space:
mode:
authorJulian Wiedmann <jwi@linux.ibm.com>2018-05-02 09:48:43 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2018-05-22 19:53:59 +0300
commitc568bdf37b6ecf37aa5823f8845c3ecf07f19ab3 (patch)
treea0cd8bb0f2b75c4ad81b55e4c0065f1bd30555b9 /arch/s390
parente2266ea100ea54556c0524a7763a844f7c4eca17 (diff)
downloadlinux-c568bdf37b6ecf37aa5823f8845c3ecf07f19ab3.tar.xz
s390/qdio: fix access to uninitialized qdio_q fields
commit e521813468f786271a87e78e8644243bead48fad upstream. Ever since CQ/QAOB support was added, calling qdio_free() straight after qdio_alloc() results in qdio_release_memory() accessing uninitialized memory (ie. q->u.out.use_cq and q->u.out.aobs). Followed by a kmem_cache_free() on the random AOB addresses. For older kernels that don't have 6e30c549f6ca, the same applies if qdio_establish() fails in the DEV_STATE_ONLINE check. While initializing q->u.out.use_cq would be enough to fix this particular bug, the more future-proof change is to just zero-alloc the whole struct. Fixes: 104ea556ee7f ("qdio: support asynchronous delivery of storage blocks") Cc: <stable@vger.kernel.org> #v3.2+ Signed-off-by: Julian Wiedmann <jwi@linux.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'arch/s390')
0 files changed, 0 insertions, 0 deletions