Loading adb/daemon/usb.cpp +2 −16 Original line number Diff line number Diff line Loading @@ -270,29 +270,15 @@ struct UsbFfsConnection : public Connection { bool started = false; bool running = true; while (running) { int timeout = -1; if (!bound || !started) { timeout = 5000 /*ms*/; } adb_pollfd pfd[2] = { { .fd = control_fd_.get(), .events = POLLIN, .revents = 0 }, { .fd = monitor_event_fd_.get(), .events = POLLIN, .revents = 0 }, }; int rc = TEMP_FAILURE_RETRY(adb_poll(pfd, 2, timeout)); int rc = TEMP_FAILURE_RETRY(adb_poll(pfd, 2, -1)); if (rc == -1) { PLOG(FATAL) << "poll on USB control fd failed"; } else if (rc == 0) { // Something in the kernel presumably went wrong. // Close our endpoints, wait for a bit, and then try again. StopWorker(); aio_context_.reset(); read_fd_.reset(); write_fd_.reset(); control_fd_.reset(); std::this_thread::sleep_for(5s); HandleError("didn't receive FUNCTIONFS_ENABLE, retrying"); return; LOG(FATAL) << "poll on USB control fd returned 0"; } if (pfd[1].revents) { Loading Loading
adb/daemon/usb.cpp +2 −16 Original line number Diff line number Diff line Loading @@ -270,29 +270,15 @@ struct UsbFfsConnection : public Connection { bool started = false; bool running = true; while (running) { int timeout = -1; if (!bound || !started) { timeout = 5000 /*ms*/; } adb_pollfd pfd[2] = { { .fd = control_fd_.get(), .events = POLLIN, .revents = 0 }, { .fd = monitor_event_fd_.get(), .events = POLLIN, .revents = 0 }, }; int rc = TEMP_FAILURE_RETRY(adb_poll(pfd, 2, timeout)); int rc = TEMP_FAILURE_RETRY(adb_poll(pfd, 2, -1)); if (rc == -1) { PLOG(FATAL) << "poll on USB control fd failed"; } else if (rc == 0) { // Something in the kernel presumably went wrong. // Close our endpoints, wait for a bit, and then try again. StopWorker(); aio_context_.reset(); read_fd_.reset(); write_fd_.reset(); control_fd_.reset(); std::this_thread::sleep_for(5s); HandleError("didn't receive FUNCTIONFS_ENABLE, retrying"); return; LOG(FATAL) << "poll on USB control fd returned 0"; } if (pfd[1].revents) { Loading