s390/qdio: don't release memory in qdio_setup_irq()
authorJulian Wiedmann <jwi@linux.ibm.com>
Wed, 2 May 2018 06:28:34 +0000 (08:28 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 22 May 2018 14:57:57 +0000 (16:57 +0200)
commitc79b01b8d4cb7c37c5da2299152c2ca9f22acc76
treea72bed7f8ef970520408290281f13a0dbf795ec3
parenta03e14f09b40a1a10ce464d906814bb85ecd71ab
s390/qdio: don't release memory in qdio_setup_irq()

commit 2e68adcd2fb21b7188ba449f0fab3bee2910e500 upstream.

Calling qdio_release_memory() on error is just plain wrong. It frees
the main qdio_irq struct, when following code still uses it.

Also, no other error path in qdio_establish() does this. So trust
callers to clean up via qdio_free() if some step of the QDIO
initialization fails.

Fixes: 779e6e1c724d ("[S390] qdio: new qdio driver.")
Cc: <stable@vger.kernel.org> #v2.6.27+
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>
drivers/s390/cio/qdio_setup.c