diff options
author | Jens Lorenz <jlorenz@de.adit-jv.com> | 2018-06-07 18:04:03 +0200 |
---|---|---|
committer | Jens Lorenz <jlorenz@de.adit-jv.com> | 2018-06-12 08:39:48 +0200 |
commit | fc50c62104b3019ff4de9e4fcc5b6f04b74a664a (patch) | |
tree | de6c86d62087e27f318f5a9e97d8972b6c40154e /CMakeLists.txt | |
parent | 27c9983421494ce9f5b82027f4b2e7f72369dced (diff) | |
download | audiomanager-fc50c62104b3019ff4de9e4fcc5b6f04b74a664a.tar.gz |
AMUtil: Fix inconsistent fdPollingArray
In case someone removed a fd and closed it opened a new one and added it
to the socket handler the container state of the object in map was
changed from either REMOVE/CLOSE to UNINIT.
This leads to the emplace call in the fdPollingArray vector and the fd
is maintained twice. Over the entire runtime there will be zombie fds
provided to ppoll functions which will race a POLLERR revent leading to
100% cpu load.
Also the CLOSE state is now removed because only the application is aware
if a fd has to be closed. For instance calling add/remove in a loop were
start_listenting is not running will turn to a system issue were no fds
can be provided by the operation system.
Signed-off-by: Jens Lorenz <jlorenz@de.adit-jv.com>
Diffstat (limited to 'CMakeLists.txt')
0 files changed, 0 insertions, 0 deletions