On 09/12/2013 04:03 AM, KY Srinivasan wrote: > >> -----Original Message----- >> From: Wei Yongjun [mailto:weiyj...@gmail.com] >> Sent: Wednesday, September 11, 2013 4:20 AM >> To: KY Srinivasan; Haiyang Zhang >> Cc: yongjun_...@trendmicro.com.cn; de...@linuxdriverproject.org; linux- >> ker...@vger.kernel.org >> Subject: [PATCH] Drivers: hv: vmbus: fix error return code in vmbus_connect() >> >> From: Wei Yongjun <yongjun_...@trendmicro.com.cn> >> >> Fix to return -EINVAL in the version check error handling >> case instead of 0, as done elsewhere in this function. > The return will not be zero in this case. If you look at the function > vmbus_negotiate_version(), in case the host refuses the version, the > return value will be set to -ECONNREFUSED
look at the code: 196 do { 197 ret = vmbus_negotiate_version(msginfo, version); 198 if (ret) 199 goto cleanup; 200 201 if (vmbus_connection.conn_state == CONNECTED) 202 break; 203 204 version = vmbus_get_next_version(version); 205 } while (version != VERSION_INVAL); 206 207 if (version == VERSION_INVAL) 208 goto cleanup; if function vmbus_negotiate_version() return error, the code will goto cleanup. If 'version == VERSION_INVAL' is true, I think we tried all of the VERSION_WS2008/VERSION_WIN7/VERSION_WIN8, but still can not get the connection. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/