Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HPCC-32960 Fix epoll memory corruption issues #19283

Merged

Commits on Nov 11, 2024

  1. HPCC-32960 Fix epoll memory corruption issues

    Although the SelectItem 'items' array is protected by a CS,
    epoll_wait can receive pending events for SelectItems that have
    been deleted, which were then link counted and caused corruption.
    
    Like the select handler version, avoid deleting the SelectItem's
    when items are removed, instead mark them deleted and let the
    triggerselect() approach remove them on the main thread.
    
    Also fix a theoretical issue when adding a existing socket to
    CSocketEpollThread, it did not check other CSocketEpollThread's
    to see if it needed to be removed. (given default hdlPerThrd is
    UINT_MAX, it will not have happened).
    
    Signed-off-by: Jake Smith <jake.smith@lexisnexisrisk.com>
    jakesmith committed Nov 11, 2024
    Configuration menu
    Copy the full SHA
    0ecb3e4 View commit details
    Browse the repository at this point in the history