You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
IDF version (run git describe --tags to find it):
// v4.0-dev-447-g689032650
Build System: Make
Compiler version (run xtensa-esp32-elf-gcc --version to find it):
// xtensa-esp32-elf-gcc (crosstool-NG esp32-2019r1-rc2) 8.2.0
Operating System: Linux
Power Supply: USB
Problem Description
I'm currently using "simulated pipes" by connecting together two datagram sockets with ephemeral ports.
I'd like to implement my own VFS module to support signaling (set/clear flag) fds. Unfortunately the current interface involving start_select/end_select doesn't allow for it because end_select doesn't provide back any context pointer for the select call that just finished..
Expected Behavior
start_select / end_select calls should be linked together with some pointer or ID for the current select operation, so that simultaneous select operations can be signalled for relevant events.
Actual Behavior
A single select call can be supported at a given time by each VFS module (eg, one task can't be doing select() on uart receive while another does select() on uart send). The example uart VFS module just returns ESP_ERR_INVALID_STATE in start_select() when a previous start_select() was already ongoing.
EDIT: Completed Expected/Actual Behavior.
The text was updated successfully, but these errors were encountered:
github-actionsbot
changed the title
Allow VFS components to work with concurrent select calls from several tasks.
Allow VFS components to work with concurrent select calls from several tasks. (IDFGH-1072)
Apr 30, 2019
Hi @skandalfo! Thank you for pointing out this problem and sorry for the long silence regarding this. The fix is under internal review and got delayed. It will be published as soon as possible.
Environment
git describe --tags
to find it):// v4.0-dev-447-g689032650
xtensa-esp32-elf-gcc --version
to find it):// xtensa-esp32-elf-gcc (crosstool-NG esp32-2019r1-rc2) 8.2.0
Problem Description
I'm currently using "simulated pipes" by connecting together two datagram sockets with ephemeral ports.
I'd like to implement my own VFS module to support signaling (set/clear flag) fds. Unfortunately the current interface involving start_select/end_select doesn't allow for it because end_select doesn't provide back any context pointer for the select call that just finished..
Expected Behavior
start_select / end_select calls should be linked together with some pointer or ID for the current select operation, so that simultaneous select operations can be signalled for relevant events.
Actual Behavior
A single select call can be supported at a given time by each VFS module (eg, one task can't be doing select() on uart receive while another does select() on uart send). The example uart VFS module just returns ESP_ERR_INVALID_STATE in start_select() when a previous start_select() was already ongoing.
EDIT: Completed Expected/Actual Behavior.
The text was updated successfully, but these errors were encountered: