summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoger Wang <wangroger@google.com>2021-08-12 15:35:13 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2021-08-12 15:35:13 +0000
commite3c53e71cebb6a27a7f6e5e03e6489305208a1ac (patch)
tree1ecb844219a87904d0fe08573fbfaad8a4a9a997
parentefef2dcf790feb043eb119046e70c72dce000d50 (diff)
parent3c8fcfcaf3716ff32765e0f3fa29f4d30764c3ae (diff)
downloadwlan-e3c53e71cebb6a27a7f6e5e03e6489305208a1ac.tar.gz
HAL: error handling when no buffer space available am: 3c8fcfcaf3
Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/broadcom/wlan/+/15542594 Change-Id: I2d009fa137a60f6136324e47a9ea2d092556c193
-rwxr-xr-xbcmdhd/wifi_hal/wifi_hal.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/bcmdhd/wifi_hal/wifi_hal.cpp b/bcmdhd/wifi_hal/wifi_hal.cpp
index 0ba633b..d3ffe57 100755
--- a/bcmdhd/wifi_hal/wifi_hal.cpp
+++ b/bcmdhd/wifi_hal/wifi_hal.cpp
@@ -66,6 +66,7 @@
#define WIFI_HAL_CMD_SOCK_PORT 644
#define WIFI_HAL_EVENT_SOCK_PORT 645
#define MAX_VIRTUAL_IFACES 5
+#define WIFI_HAL_EVENT_BUFFER_NOT_AVAILABLE 105
/*
* Defines for wifi_wait_for_driver_ready()
@@ -747,6 +748,10 @@ void wifi_event_loop(wifi_handle handle)
ssize_t result2 = TEMP_FAILURE_RETRY(read(pfd[0].fd, buf, sizeof(buf)));
ALOGE("Read after POLL returned %zd, error no = %d (%s)", result2,
errno, strerror(errno));
+ if (errno == WIFI_HAL_EVENT_BUFFER_NOT_AVAILABLE) {
+ ALOGE("Exit, No buffer space");
+ break;
+ }
} else if (pfd[0].revents & POLLHUP) {
ALOGE("Remote side hung up");
break;