From: Thomas Pugliese Date: Thu, 26 Sep 2013 19:08:14 +0000 (-0500) Subject: usb: wusbcore: resource cleanup fix in __wa_xfer_setup_segs X-Git-Tag: omap-for-v3.13/fixes-for-merge-window-take2~66^2~144 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ffd6d17ddb1bea8267ee3edf6032fc6aa777e832;p=pandora-kernel.git usb: wusbcore: resource cleanup fix in __wa_xfer_setup_segs This patch updates __wa_xfer_setup_segs error path to only clean up the xfer->seg entry that it failed to create and then set that entry to NULL. wa_xfer_destroy will clean up the remaining xfer->segs that were fully created. It also moves the code to create the dto sg list to an out of line function to make __wa_xfer_setup_segs easier to read. Prior to this change, __wa_xfer_setup_segs would clean up all entries in the xfer->seg array in case of an error but it did not set them to NULL. This resulted in a double free when wa_xfer_destroy was eventually called by the higher level error handler. Signed-off-by: Thomas Pugliese Signed-off-by: Greg Kroah-Hartman --- Reading git-diff-tree failed