alloc_ofp_port does not allocate the port number correctly
alloc_ofp_port() does not allocate the port number correctly if the port
number passed initially is already in use. The following if block
if (ofp_port >= ofproto->max_ports
|| bitmap_is_set(ofproto->ofp_port_ids, ofp_port)) {
is entered when either of the two conditions is true but the while block
after this is not entered if the second condition above is true and the
first condition is false.
This results in an existing port_number to be re-assigned!