Calling the setuid function within a multithreaded program interrupts poll and select syscalls in other threads

Solution Unverified - Updated -

Issue

  • When setuid is called in a thread of a multithreaded program, other threads seem to get interrupted by a signal
  • This is noticeable when another thread is in the middle of either the select or poll system calls, since those calls get interrupted and return EINTR in errno.

Environment

  • Red Hat Enterprise Linux 5
  • Red Hat Enterprise Linux 6
  • glibc

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.

Current Customers and Partners

Log in for full access

Log In
Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.