don't call if_link_state_change if link state is not changed and fix minor discrepancies with link state handling
don't call if_link_state_change if link state is not changed
and fix minor discrepancies with link state handling

orumin/openbsd-efivars,orumin/openbsd-efivars,orumin/openbsd-efivars,orumin/openbsd-efivars