Index: src/fdevent_solaris_devpoll.c
===================================================================
--- src/fdevent_solaris_devpoll.c	(revision 2081)
+++ src/fdevent_solaris_devpoll.c	(revision 2082)
@@ -67,7 +67,7 @@
 	int ret;
 
 	dopoll.dp_timeout = timeout_ms;
-	dopoll.dp_nfds = ev->maxfds;
+	dopoll.dp_nfds = ev->maxfds - 1;
 	dopoll.dp_fds = ev->devpollfds;
 
 	ret = ioctl(ev->devpoll_fd, DP_POLL, &dopoll);
Index: src/server.c
===================================================================
--- src/server.c	(revision 2081)
+++ src/server.c	(revision 2082)
@@ -697,9 +697,6 @@
 			}
 		}
 
-		/* #372: solaris need some fds extra for devpoll */
-		if (rlim.rlim_cur > 10) rlim.rlim_cur -= 10;
-
 		if (srv->event_handler == FDEVENT_HANDLER_SELECT) {
 			srv->max_fds = rlim.rlim_cur < FD_SETSIZE - 200 ? rlim.rlim_cur : FD_SETSIZE - 200;
 		} else {
