Code review request 7132889: Possible race conditions in AbstractSelectableChannel (original) (raw)
Shirish Kuncolienkar shirishk at linux.vnet.ibm.com
Tue Aug 7 02:34:23 PDT 2012
- Next message: Code review request 7132889: Possible race conditions in AbstractSelectableChannel
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Could I get this change reviewed please
code inspection of the AbstractSelectableChannel class shows that a timing window exists between the channel close and cancellation of the key. Which can lead to following consequences
- Selector registered on this channel can select the key while the channel is closed or is being closed
- A new key can be added to the channel while the it is closed or is being closed
- configureBlocking() can be invoked while the channel is closed or is being closed
One might be able to construct a testcase using a test-specific subclass of AbstractSelectableChannel, which has a synchronization point in its implementation of implCloseSelectableChannel() so that tests can be performed there. However, it would be quite an involved thing to write with clarity.
I have created a patch under http://cr.openjdk.java.net/~luchsh/7132889/
- Next message: Code review request 7132889: Possible race conditions in AbstractSelectableChannel
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]