staging: unisys: visorchannel cleanup visorchannel_create_guts()
authorPrarit Bhargava <prarit@redhat.com>
Tue, 5 May 2015 22:36:17 +0000 (18:36 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 8 May 2015 13:26:01 +0000 (15:26 +0200)
commit10c69bb7d9c492666690f2bd359493c2e900865b
treeded9faafb7d9e0b7081b0caba51255f294b23d1a
parent2ee0deec49bd1aded66bc7b017af35f8723ff9ef
staging: unisys: visorchannel cleanup visorchannel_create_guts()

The error handling in this function was broken and while looking at that
I noticed that the whole function was in need of cleanup.  This patch
fixes the error handling, specifically

                if (!p) {
                        visorchannel_destroy(p);
                        channel = NULL;
                }

and does a lot of cleanup.  I also verified that the called functions
returned correct errors, and that led to a change in
visor_memregion_resize(), visorchannel_destroy() and
visor_memregion_destroy().

Signed-off-by: Prarit Bhargava <prarit@redhat.com>
Signed-off-by: Benjamin Romer <benjamin.romer@unisys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/unisys/visorbus/visorchannel.c
drivers/staging/unisys/visorutil/memregion_direct.c