1. 17 Oct, 2019 1 commit
  2. 11 Oct, 2019 2 commits
  3. 09 Oct, 2019 1 commit
  4. 08 Oct, 2019 3 commits
  5. 07 Oct, 2019 2 commits
  6. 04 Oct, 2019 3 commits
  7. 30 Sep, 2019 1 commit
  8. 25 Sep, 2019 1 commit
  9. 23 Sep, 2019 4 commits
    • Jan Kiszka's avatar
      cobalt/drivers: Ensure bidirectional IOCTL migration · 8cd92e65
      Jan Kiszka authored
      Ensure that IOCTL switch-over is also prepared for the NRT-to-RT path.
      While we didn't need this in practice for the changed drivers, it's
      better to have this enabled in case driver developers derive from this
      pattern.
      Signed-off-by: Jan Kiszka's avatarJan Kiszka <jan.kiszka@siemens.com>
      8cd92e65
    • Philippe Gerum's avatar
      lib/smokey: consider PATH in smokey_fork_exec() · e932ce4a
      Philippe Gerum authored
      Prefer execlp() over execl() for bootstrapping a new image: callers
      may assume that PATH should be considered when searching for the
      executable file, e.g. posix_fork test.
      Signed-off-by: Philippe Gerum's avatarPhilippe Gerum <rpm@xenomai.org>
      Signed-off-by: Jan Kiszka's avatarJan Kiszka <jan.kiszka@siemens.com>
      e932ce4a
    • Philippe Gerum's avatar
      smokey/rtdm: account for device teardown · e9453500
      Philippe Gerum authored
      Since recently, RTDM forcibly disconnects files from a device being
      unregistered. This has to change the expectations the smokey test may
      have about the rmmod logic.
      Signed-off-by: Philippe Gerum's avatarPhilippe Gerum <rpm@xenomai.org>
      Signed-off-by: Jan Kiszka's avatarJan Kiszka <jan.kiszka@siemens.com>
      e9453500
    • Philippe Gerum's avatar
      cobalt/rtdm: allow for device teardown · 7bdab91e
      Philippe Gerum authored
      Currently, rtdm_dev_unregister() will hang soft until all references
      on the dismantled device have been dropped, which in turn cannot
      happen until all rtdm_fds on the device have been closed, which cannot
      happen until all references on those fds have been dropped eventually.
      Unfortunately, applications have no indication that such teardown has
      been requested, and keep sleeping on I/O channels managed by the
      dismantled device, which prevents rtdm_dev_unregister() from
      completing.
      
      Allow for orderly device teardown by tracking all file descriptors
      representing connections active on a device, forcing each of them down
      by calling the driver's close() handler from rtdm_dev_unregister().
      Since a close() handler should abort any ongoing I/O operation on the
      channel being dismantled, any blocking I/O call on such channel should
      return on error with no additional change to the existing drivers. The
      common error code indicating an aborted I/O operation in this case is
      EBADF.
      
      Upon receiving the error, the application is expected to close the
      stale file descriptor and/or exit, which would drop the corresponding
      file reference.
      
      Stale file descriptors lingering in applications will still prevent
      driver modules serving them from unloading until they are eventually
      closed. Subsequent operations on a file descriptor connected to a
      device which is being torn now down lead to the EBADF error.
      Signed-off-by: Philippe Gerum's avatarPhilippe Gerum <rpm@xenomai.org>
      [Jan: dropped unneeded change to list_get_entry]
      Signed-off-by: Jan Kiszka's avatarJan Kiszka <jan.kiszka@siemens.com>
      Signed-off-by: Philippe Gerum's avatarPhilippe Gerum <rpm@xenomai.org>
      Signed-off-by: Jan Kiszka's avatarJan Kiszka <jan.kiszka@siemens.com>
      7bdab91e
  10. 20 Sep, 2019 1 commit
    • Sebastian Smolorz's avatar
      net/tcp: Account for connection teardown handshake · f6f6e3d2
      Sebastian Smolorz authored
      When closing a TCP connection a handshake procedure is executed between the
      peers. The close routine of the rttcp driver did not participate in
      detecting the end of this handshake but rather waited one second inside
      a close call unconditionally. Especially when peers are directly connected
      this is a waste of time which can hurt a lot in some situations.
      
      This patch replaces the msleep(1000) call with waiting for a completion.
      The maximum waiting time now can be configured via a module parameter.
      The completion is done when the termination handshake has finished.
      Signed-off-by: default avatarSebastian Smolorz <sebastian.smolorz@gmx.de>
      Signed-off-by: Jan Kiszka's avatarJan Kiszka <jan.kiszka@siemens.com>
      f6f6e3d2
  11. 13 Sep, 2019 15 commits
  12. 12 Sep, 2019 1 commit
  13. 10 Sep, 2019 2 commits
  14. 09 Sep, 2019 2 commits
  15. 06 Sep, 2019 1 commit