• Johan Hovold's avatar
    USB: quatech2: fix port-data memory leaks · 40d04738
    Johan Hovold authored
    Fix port-data memory leak by moving port data allocation and
    deallocation to port_probe and port_remove.
    
    Since commit 0998d063 (device-core: Ensure drvdata = NULL when no
    driver is bound) the port private data is no longer freed at release as
    it is no longer accessible.
    
    Note that this also fixes memory leaks in the error path of attach where
    the write urbs were not freed on errors.
    
    Make sure all interface-data deallocation is done in release by moving
    the read urb deallocation from disconnect.
    
    Note that the write urb is killed during close so that the call in
    disconnect was superfluous.
    
    Compile-only tested.
    
    Cc: Bill Pemberton <wfp5p@virginia.edu>
    Cc: <stable@vger.kernel.org>
    Signed-off-by: default avatarJohan Hovold <jhovold@gmail.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    40d04738
quatech2.c 27.6 KB