Commit 87b8ee64 authored by Sreedevi Joshi's avatar Sreedevi Joshi Committed by Tony Nguyen
Browse files

idpf: Fix error handling in idpf_vport_open()



Fix error handling to properly cleanup interrupts when
idpf_vport_queue_ids_init() or idpf_rx_bufs_init_all() fail. Jump to
'intr_deinit' instead of 'queues_rel' to ensure interrupts are cleaned up
before releasing other resources.

Fixes: d4d55871 ("idpf: initialize interrupts and enable vport")
Signed-off-by: default avatarSreedevi Joshi <sreedevi.joshi@intel.com>
Reviewed-by: default avatarMadhu Chittim <madhu.chittim@intel.com>
Reviewed-by: default avatarAleksandr Loktionov <aleksandr.loktionov@intel.com>
Reviewed-by: default avatarSimon Horman <horms@kernel.org>
Tested-by: default avatarSamuel Salin <Samuel.salin@intel.com>
Signed-off-by: default avatarTony Nguyen <anthony.l.nguyen@intel.com>
parent ebecca5b
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -1524,14 +1524,14 @@ static int idpf_vport_open(struct idpf_vport *vport, bool rtnl)
	if (err) {
		dev_err(&adapter->pdev->dev, "Failed to initialize queue registers for vport %u: %d\n",
			vport->vport_id, err);
		goto queues_rel;
		goto intr_deinit;
	}

	err = idpf_rx_bufs_init_all(vport);
	if (err) {
		dev_err(&adapter->pdev->dev, "Failed to initialize RX buffers for vport %u: %d\n",
			vport->vport_id, err);
		goto queues_rel;
		goto intr_deinit;
	}

	idpf_rx_init_buf_tail(vport);