diff options
author | Vidyakumar Athota <vathota@codeaurora.org> | 2021-01-19 15:57:51 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2021-01-19 15:57:51 +0000 |
commit | b29cafd5591f0e55c5f9442eea76c75b65e87110 (patch) | |
tree | 1746ca9f5d2ed40ebf9f439274fbac7b7e5861ad | |
parent | a6219ca411d78e33261298f0b275d07304d2ccd4 (diff) | |
parent | 8a03c49eec159347c4f480bec5791b709bce4982 (diff) | |
download | tinyalsa-b29cafd5591f0e55c5f9442eea76c75b65e87110.tar.gz |
tinyalsa : update event_cnt before eventfd_write() am: 8a03c49eec
Original change: https://android-review.googlesource.com/c/platform/external/tinyalsa/+/1554369
MUST ONLY BE SUBMITTED BY AUTOMERGER
Change-Id: Ibebc089dcb654475cbf8b06f8cd63024bacb359b
-rw-r--r-- | mixer_plugin.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/mixer_plugin.c b/mixer_plugin.c index 90f332f..015120a 100644 --- a/mixer_plugin.c +++ b/mixer_plugin.c @@ -132,8 +132,8 @@ static int mixer_plug_info_integer(struct snd_control *ctl, void mixer_plug_notifier_cb(struct mixer_plugin *plugin) { - eventfd_write(plugin->eventfd, 1); plugin->event_cnt++; + eventfd_write(plugin->eventfd, 1); } /* In consume_event/read, do not call eventfd_read until all events are read from list. @@ -149,8 +149,10 @@ static ssize_t mixer_plug_read_event(void *data, struct snd_ctl_event *ev, size_ if (result > 0) { plugin->event_cnt -= result / sizeof(struct snd_ctl_event); - if (plugin->event_cnt == 0) + if (plugin->event_cnt <= 0) { + plugin->event_cnt = 0; eventfd_read(plugin->eventfd, &evfd); + } } return result; |