Date: Fri, 10 Feb 2023 14:45:36 +0000 From: bugzilla-noreply@freebsd.org To: bugs@FreeBSD.org Subject: [Bug 269133] bnxt(4): BCM57416 - HWRM_CFA_L2_SET_RX_MASK command returned RESOURCE_ALLOC_ERROR error Message-ID: <bug-269133-227-x3D1t5ylgk@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-269133-227@https.bugs.freebsd.org/bugzilla/> References: <bug-269133-227@https.bugs.freebsd.org/bugzilla/>
next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D269133 --- Comment #5 from Mark Johnston <markj@FreeBSD.org> --- (In reply to Santiago Martinez from comment #4) I think the problem is this: when a new vlan tag is registered, bnxt_vlan_register() adds a new tag structure to the vlan_tags list. After adding a vlan tag, iflib will reinitialize the interface, see iflib_vlan_register()->iflib_init_locked()->IFDI_INIT. Then bnxt_init() will call bnxt_hwrm_set_filter(), which initializes all the tags on the list. Suppose all of this happens twice. bnxt_hwrm_set_filter() will encounter an already-initialized tag and trigger the EDOOFUS error. I suspect that bnxt_init() should unregister all of its filters during reinitialization. That is, bnxt_init() should call bnxt_hwrm_free_filter() before calling bnxt_clear_ids(). (I'm not very familiar with this driver though, so this might not work.) --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-269133-227-x3D1t5ylgk>