diff options
author | Thomas Pugliese <thomas.pugliese@gmail.com> | 2013-09-26 19:08:14 (GMT) |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-09-26 23:31:36 (GMT) |
commit | ffd6d17ddb1bea8267ee3edf6032fc6aa777e832 (patch) | |
tree | c27abec7bb059be740d6555c4a2e84430ff4df52 /crypto/lz4hc.c | |
parent | d993670ca97f646db1ef9b345e78ecfd3d6f0143 (diff) | |
download | linux-ffd6d17ddb1bea8267ee3edf6032fc6aa777e832.tar.xz |
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 <thomas.pugliese@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'crypto/lz4hc.c')
0 files changed, 0 insertions, 0 deletions