[RTEMS Project] #4993: Increase FD_SIZE to 256

RTEMS trac trac at rtems.org
Mon Feb 19 22:38:06 UTC 2024


#4993: Increase FD_SIZE to 256
--------------------------+--------------------
  Reporter:  Chris Johns  |      Owner:  (none)
      Type:  defect       |     Status:  new
  Priority:  highest      |  Milestone:  6.1
 Component:  tool/newlib  |    Version:  6
  Severity:  blocker      |   Keywords:
Blocked By:               |   Blocking:
--------------------------+--------------------
 The default for `FD_SIZE` in newlib is 64. This is proving to be too small
 for EPICS applications. EPICS limits the number of descriptors
 [https://github.com/epics-base/epics-
 base/blob/7.0/modules/libcom/RTEMS/posix/rtems_config.c#L63 here] for
 RTEMS 6 builds. The comment in EPICS base is:
 {{{
 /* Note: The select() system call can only be used with the first
 FD_SETSIZE
  *       File Descriptors (newlib default is 64).  Beginning RTEMS 5.1,
 FDs are
  *       allocated sequentially.  So changing this CONFIGURE parameter
 such
  *       that CONFIGURE_MAXIMUM_FILE_DESCRIPTORS >= FD_SETSIZE will likely
  *       cause applications making select() calls to fault at some point.
  *
  *       IOC core components (libca and RSRV) do not make select() calls.
  *
  *       Applications and driver code using poll() or other socket
  *       multiplexers do not share this limitation.
  *
  *       cf. https://github.com/epics-base/epics-base/issues/300
  */
 }}}
 Increasing `FD_SIZE` to 256 will increase the set but 64 is too small for
 RTEMS and we do not need 1024 that systems like FreeBSD have.

--
Ticket URL: <http://devel.rtems.org/ticket/4993>
RTEMS Project <http://www.rtems.org/>
RTEMS Project


More information about the bugs mailing list