]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/socketengine_epoll.cpp
Smart trick: the 'build complete' message is now a makefile section of its own which...
[user/henk/code/inspircd.git] / src / socketengine_epoll.cpp
index 163bd45c6a72c2077bfbfa389ab75735365e76eb..3d0b7dee041bf03fa38572f3e434863dc9253559 100644 (file)
@@ -87,17 +87,19 @@ bool EPollEngine::DelFd(EventHandler* eh)
 
        struct epoll_event ev;
        memset(&ev,0,sizeof(struct epoll_event));
-       ref[fd]->Readable() ? ev.events = EPOLLIN : ev.events = EPOLLOUT;
+       eh->Readable() ? ev.events = EPOLLIN : ev.events = EPOLLOUT;
        ev.data.fd = fd;
        int i = epoll_ctl(EngineHandle, EPOLL_CTL_DEL, fd, &ev);
+
        if (i < 0)
        {
-               ServerInstance->Log(DEBUG,"epoll: List deletion failure!");
+               ServerInstance->Log(DEBUG,"epoll: List deletion failure: %s",strerror(errno));
                return false;
        }
 
        CurrentSetSize--;
        ref[fd] = NULL;
+
        return true;
 }
 
@@ -113,7 +115,7 @@ int EPollEngine::GetRemainingFds()
 
 int EPollEngine::DispatchEvents()
 {
-       int i = epoll_wait(EngineHandle, events, MAX_DESCRIPTORS, 50);
+       int i = epoll_wait(EngineHandle, events, MAX_DESCRIPTORS, 150);
        for (int j = 0; j < i; j++)
        {
                ServerInstance->Log(DEBUG,"Handle %s event on fd %d",ref[events[j].data.fd]->Readable() ? "read" : "write", ref[events[j].data.fd]->GetFd());