URL: <http://savannah.gnu.org/bugs/?49813>
Summary: libfreeipmi crashes when using multithreading >1024 threads Project: GNU FreeIPMI Submitted by: None Submitted on: Fri 09 Dec 2016 03:31:23 PM UTC Category: libfreeipmi Severity: 3 - Normal Priority: 5 - Normal Item Group: Crash Status: None Privacy: Public Assigned to: None Open/Closed: Open Discussion Lock: Any Operating System: GNU/Linux _______________________________________________________ Details: the _api_lan_recvfrom uses the select() function to receive data from the network. select() uses FD_SET to write into the file-descriptors. Stupidly, the maximum count of fd's, select() can use is 1024. If you use a multithreaded program with libfreeipmi with more than 1024 calls (in my case: 1600threads) then often the program crashes with stack-smashing errors. Replacing the select() call in the _api_lan_recvfrom by poll() solves the problem. attached files: my version of the c-file which is running fine with multithreading _______________________________________________________ File Attachments: ------------------------------------------------------- Date: Fri 09 Dec 2016 03:31:23 PM UTC Name: ipmi-lan-session-common.c Size: 148kB By: None <http://savannah.gnu.org/bugs/download.php?file_id=39185> _______________________________________________________ Reply to this item at: <http://savannah.gnu.org/bugs/?49813> _______________________________________________ Message sent via/by Savannah http://savannah.gnu.org/ _______________________________________________ Freeipmi-devel mailing list Freeipmi-devel@gnu.org https://lists.gnu.org/mailman/listinfo/freeipmi-devel