HomeFreeBSD

Make iser(4) buildable again by adjusting it for the recent changes

Description

Make iser(4) buildable again by adjusting it for the recent changes
in ICL interface.

  • the ordering of parameters to icl_conn_task_setup is different, so that the "cookie" is last.
  • the icl_conn_connected() method is gone, replaced by much simpler mechanism. I'd rather keep the ICL interface as small as possible.
  • I don't really like the s/offload/driver/g. The "tcp" is not a driver; "iser" is not really a driver either. I'd prefer to leave it as it is.
  • the check for ic_session_type_discovery() in iser_conn_handoff() is gone, as handoff cannot happen for discovery sessions.
  • ic_session_login_phase() and ic_session_type_discovery() are gone. If you had your handoff method called - you're no longer in either of those.
  • the way maxtags is passed is different; now it's simply ic->ic_maxtags. It's cleaner, and the old way would cause weird things to happen if fail_on_disconnection=1 and the user changed the maxtags sysctl before reconnecting (basically the CAM idea of maxtags would be different from iSER one).
  • icl_hba_misc() is gone; declare support for PIM_UNMAPPED by setting ic->ic_unmapped flag.
  • the way we find the "iser" ICL module is rewritten - we have a flag for icl_register() that says if the module is iSER-capable or not.
  • icl_conn_release() is gone; iser_conn_release() is called from iser_conn_free() (no functional change in this case) and at the beginning of icl_conn_connect(), to handle reconnection.

MFC after: 1 month
Sponsored by: The FreeBSD Foundation

Details

Provenance
traszAuthored on
Parents
rS300726: Increase the size and alignment of the setjmp buffer.
Branches
Unknown
Tags
Unknown