Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e98fc4aa authored by John W. Linville's avatar John W. Linville
Browse files

[PATCH] e1000: avoid leak when e1000_setup_loopback_test fails



In e1000_loopback_test, make sure to call e1000_free_desc_rings if
e1000_setup_loopback_test fails.  Currently in that case it will not
get called, causing a leak.

Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent cd52d1ee
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -1440,9 +1440,11 @@ static int
e1000_loopback_test(struct e1000_adapter *adapter, uint64_t *data)
{
	if((*data = e1000_setup_desc_rings(adapter))) goto err_loopback;
	if((*data = e1000_setup_loopback_test(adapter))) goto err_loopback;
	if((*data = e1000_setup_loopback_test(adapter)))
		goto err_loopback_setup;
	*data = e1000_run_loopback_test(adapter);
	e1000_loopback_cleanup(adapter);
err_loopback_setup:
	e1000_free_desc_rings(adapter);
err_loopback:
	return *data;