]> CyberLeo.Net >> Repos - FreeBSD/stable/10.git/commit
MFC r278239 and r278374.
authornp <np@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Sat, 6 Jun 2015 18:00:36 +0000 (18:00 +0000)
committernp <np@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Sat, 6 Jun 2015 18:00:36 +0000 (18:00 +0000)
commit7009e51c5acbcfb7902d9661225a5b0d1be41d7a
tree61b344d86b4d21ff87e46013e425432b39918067
parent9e142eeaab63514a16c9b6d78c0b5d738b3ac955
MFC r278239 and r278374.

r278239:
cxgbe(4): reserve id for iSCSI upper layer driver.

r278374:
cxgbe(4): tidy up some of the interaction between the Upper Layer
Drivers (ULDs) and the base if_cxgbe driver.

Track the per-adapter activation of ULDs in a new "active_ulds" field.
This was done pretty arbitrarily before this change -- via TOM_INIT_DONE
in adapter->flags for TOM, and the (1 << MAX_NPORTS) bit in
adapter->offload_map for iWARP.

iWARP and hw-accelerated iSCSI rely on the TOE (supported by the TOM
ULD).  The rules are:
a) If the iWARP and/or iSCSI ULDs are available when TOE is enabled then
   iWARP and/or iSCSI are enabled too.
b) When the iWARP and iSCSI modules are loaded they go looking for
   adapters with TOE enabled and enable themselves on that adapter.
c) You cannot deactivate or unload the TOM module from underneath iWARP
   or iSCSI.  Any such attempt will fail with EBUSY.

git-svn-id: svn://svn.freebsd.org/base/stable/10@284089 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
sys/dev/cxgbe/adapter.h
sys/dev/cxgbe/iw_cxgbe/device.c
sys/dev/cxgbe/offload.h
sys/dev/cxgbe/t4_main.c
sys/dev/cxgbe/tom/t4_listen.c
sys/dev/cxgbe/tom/t4_tom.c