Busy loop in IoLib

Bug #1629659 reported by Philipp Marek
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
IOLib
New
Undecided
Unassigned

Bug Description

Using the DBus library (the experimental "server" branch) I was able to trigger a busy loop in IOLIB:

  [pid 17998] 14:14:57.805234 epoll_wait(9, [{EPOLLIN|EPOLLHUP, {u32=10, u64=10}}], 1024, -1) = 1
  [pid 17998] 14:14:57.805282 recvfrom(10, "", 4096, 0, NULL, NULL) = 0
  [pid 17998] 14:14:57.805332 epoll_wait(9, [{EPOLLIN|EPOLLHUP, {u32=10, u64=10}}], 1024, -1) = 1
  [pid 17998] 14:14:57.805381 recvfrom(10, "", 4096, 0, NULL, NULL) = 0
  [pid 17998] 14:14:57.805431 epoll_wait(9, [{EPOLLIN|EPOLLHUP, {u32=10, u64=10}}], 1024, -1) = 1
  [pid 17998] 14:14:57.805505 recvfrom(10, "", 4096, 0, NULL, NULL) = 0
  [pid 17998] 14:14:57.805556 epoll_wait(9, [{EPOLLIN|EPOLLHUP, {u32=10, u64=10}}], 1024, -1) = 1

Swank shows this stack - nearly the same one on a few different tries.

  0: ("bogus stack frame")
  1: ((:METHOD IOLIB/MULTIPLEX::HARVEST-EVENTS (IOLIB/MULTIPLEX:EPOLL-MULTIPLEXER T)) #<epoll(4) multiplexer> NIL) [fast-method]
  2: (IOLIB/MULTIPLEX::DISPATCH-FD-EVENTS-ONCE #<event base, 1 FDs monitored, using: #<epoll(4) multiplexer> {1008DB9ED3}> NIL 47018.885726127d0)
  3: ((:METHOD IOLIB/MULTIPLEX:EVENT-DISPATCH (IOLIB/MULTIPLEX:EVENT-BASE)) #<event base, 1 FDs monitored, using: #<epoll(4) multiplexer> {1008DB9ED3}> :ONE-SHOT T :TIMEO
  4: ((FLET CALL-NEXT-METHOD :IN "/home/marek/.quicklisp/dists/quicklisp/software/iolib-v0.8.1/src/multiplex/event-loop.lisp"))
  5: ((:METHOD IOLIB/MULTIPLEX:EVENT-DISPATCH :AROUND (IOLIB/MULTIPLEX:EVENT-BASE)) #<event base, 1 FDs monitored, using: #<epoll(4) multiplexer> {1008DB9ED3}> :ONE-SHOT
  6: ((:METHOD WAIT-FOR-REPLY (T STANDARD-CONNECTION)) 2 #<UNIX-CONNECTION {1009CE3DE3}>) [fast-method]

Another try had

  0: ((LAMBDA (SB-KERNEL:INSTANCE) :IN SB-PCL::MAKE-OPTIMIZED-STD-READER-METHOD-FUNCTION) #<unavailable argument>) [external]
  1: ((:METHOD IOLIB/MULTIPLEX::HARVEST-EVENTS (IOLIB/MULTIPLEX:EPOLL-MULTIPLEXER T)) #<epoll(4) multiplexer> NIL) [fast-method]

etc.

Revision history for this message
Philipp Marek (philipp-marek) wrote :

This is with iolib-v0.8.1 from QL, BTW.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.