Menu

#36 epoll_create: Function not implemented

closed-fixed
5
2008-04-10
2008-04-09
Anonymous
No

Bumped upstream from
http://trac.transmissionbt.com/ticket/861 and
http://forum.transmissionbt.com/viewtopic.php?t=4508

dsmg600 ~ # transmission-remote -i
[warn] epoll_create: Function not implemented

I think this is a libevent error, not a Transmission one. The "epoll_create: Function not implemented" error you're seeing is being printed by the OS when libevent invokes epoll_create() in libevent, file epoll.c, function epoll_init().

It seems to me that the reason libevent is trying to use epoll is because the configure script seems to just confirm that the functions exist, but doesn't test to see whether they're implemented. I imagine that test would be harder to confirm :)

Discussion

  • Nick Mathewson

    Nick Mathewson - 2008-04-10

    Logged In: YES
    user_id=499
    Originator: NO

    So, this shouldn't be a fatal error. What's happening here is this: when it initializes a new event_base, libevent tries every method it was compiled to know about, from best to worst. If a method succeeds, libevent uses that method. If a method fails, libevent uses the next method down the list. So if epoll_create() fails, libevent should just fall back to whatever's next.

    There is still a problem here, of course: printing the warning message is a silly thing to do in this case. I think the right fix for libevent is to check whether the error on epoll_create is ENOSYS, and if so, to treat the message as a debugging message, not a warning.

    There are two things that Transmission (or Transmission users) can do as a workaround for now. First, on systems where epoll isn't supported, setting the environment variable EVENT_NOEPOLL will keep libevent from trying to use it. Second, from inside an application, you can use the event_set_log_callback() function to make libevent stop sending its warnings to stderr.

     
  • Nick Mathewson

    Nick Mathewson - 2008-04-10
    • assigned_to: nobody --> nickm
     
  • Nick Mathewson

    Nick Mathewson - 2008-04-10
    • status: open --> closed-fixed
     
  • Nick Mathewson

    Nick Mathewson - 2008-04-10

    Logged In: YES
    user_id=499
    Originator: NO

    Warning removed in r706 (trunk) and r707 (1.4 branch). Thanks!

     

Log in to post a comment.