Process port down or error events. While a port is down, the
ibacm service will fail all requests to endpoints on that port.
Cached data is not invalidated however, under the assumption
that the port state is temporary. (A future enhancement can
optimize the cleanup.)
Since a port can now transition between up and down, we need
to fixup a couple of places to avoid initializing structures
multiple times.