Deal with EOPNOTSUPP returned from getsockopt()
This can be returned when running on QEMU user-mode emulation, which does not support getsockopt with SO_RCVTIMEO. Signed-off-by: Michael Kuron <mkuron@icp.uni-stuttgart.de>
Этот коммит содержится в:
родитель
fddad2e8cb
Коммит
17b0f1fcc3
@ -1372,7 +1372,7 @@ static void mca_btl_tcp_component_recv_handler(int sd, short flags, void* user)
|
||||
|
||||
/* get the current timeout value so we can reset to it */
|
||||
if (0 != getsockopt(sd, SOL_SOCKET, SO_RCVTIMEO, (void*)&save, &rcvtimeo_save_len)) {
|
||||
if (ENOPROTOOPT == errno) {
|
||||
if (ENOPROTOOPT == errno || EOPNOTSUPP == errno) {
|
||||
sockopt = false;
|
||||
} else {
|
||||
opal_show_help("help-mpi-btl-tcp.txt", "socket flag fail",
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user