cancelling requests due to max_request_time
    Frank Cusack 
    fcusack at fcusack.com
       
    Mon Jan 15 18:39:06 CET 2007
    
    
  
request_list.c around line 574, calling pthread_cancel() on the thread
handling a timed out request is a bad idea.  It can leave resources
hanging, like a locked mutex for ownership of an ldap file descriptor.
In order for pthread_cancel() to be a good idea, most modules would
need to take care to disable cancellation while they hold resources
open, and/or set cancellation handlers to clean them up.  That's a
lot of work and there's a lot of room for bugs there.
But I can't think of a better approach.  You don't want to let threads
just run to completion and waste resources.
-frank
    
    
More information about the Freeradius-Devel
mailing list