[ovs-dev] [PATCH] Discourage use of unencodable error codes, add a generic OFPERR_NX__UNKNOWN_ERROR code.
Ben Pfaff
blp at nicira.com
Sat Dec 1 17:55:58 UTC 2012
On Fri, Nov 30, 2012 at 02:22:00PM +0200, Jarno Rajahalme wrote:
> Removed error category types (OFPERR_OFPET_*) from enum ofperr to make it harder for contributors to use
> unencodable error codes. Removed corresponding functions ofperr_is_category() and ofperr_decode_type().
> Added OFPERR_NX__UNKNOWN_ERROR (NX1.0+(0xfffe,256)), which is now encoded if the error code given to
> ofperr_encode_msg__() cannot be encoded with the given ofp_version. The rationale is that the corresponding
> OF transaction has failed, and the controller must know this, so sending no error message is not an option.
> Changed ofperr_encode_msg__() logging from WARN to ERR, as using unencodable error codes for the underlying
> openflow version is an error.
> Added OFPERR_NXBRC_FM_BAD_EVENT to avoid using an unencodable error code in ofputil_decode_flow_update().
> Replaced unencodable error codes in ofp-actions.c with encodable ones.
This mostly looks good. I spent some time Friday breaking it up into
smaller commits and fixing a few existing bugs that I noticed while
reviewing it. I'm not quite done; I'll probably post the new series on
Monday.
Thanks a lot for doing this.
Ben
More information about the dev
mailing list