summaryrefslogtreecommitdiff
path: root/annotations/generate_annotated_java_files.py
diff options
context:
space:
mode:
authorBrian Carlstrom <bdc@google.com>2011-01-17 22:44:10 -0800
committerEvan Millar <emillar@google.com>2011-03-18 11:33:14 -0700
commit44fa6764d0f235032cc64fb4ecd7018140a2d5d8 (patch)
tree72fea5b507fc9eeeced39efef3d69fb86d8417e7 /annotations/generate_annotated_java_files.py
parente61a37593b5a93e5defe693b85971f281dbee7dc (diff)
DO NOT MERGE: Ensure sslSelect is non-blocking
This was cherry-picked back from Honeycomb 41e32e5a6b091b2f8682f525bae47deb395be4b1 sslSelect had a comment explaining why its blocking read from a pipe would never block. However, there is repeatable evidence to the contrary. Attaching gdb to a process with SSLSocket blocked in both read and write showed that the writer was waiting in sslSelect trying to acquire the AppData::mutex while the reader was holding the mutex and blocked in read(2). This change makes the file descriptor of the pipe non-blocking. Callers of sslSelect select already repeat their attempt to handshake, read, or write as necessary when waking up from select, so now if the code is woken up by the pipe, it continues regardless of the read status. Bug: 3332268 Change-Id: I75fb094e168d89a8e2752a6e12ee79f9adadc013
Diffstat (limited to 'annotations/generate_annotated_java_files.py')
0 files changed, 0 insertions, 0 deletions