Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Evergreen:11.1:Test
squid-beta
10848.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 10848.patch of Package squid-beta
--------------------- PatchSet 10848 Date: 2007/06/10 12:13:31 Author: hno Branch: HEAD Tag: (none) Log: Kill old stale code dealing with deferred reads and delay pools. Squid-3 already have a deferred read infrastructure dealing with buffering and delay pools, taking filedescriptors in/out from the active set when needed. The comm loops don't need to emulate this. Members: src/comm_poll.cc:1.22->1.23 src/comm_select.cc:1.80->1.81 Index: squid3/src/comm_poll.cc =================================================================== RCS file: /cvsroot/squid/squid3/src/comm_poll.cc,v retrieving revision 1.22 retrieving revision 1.23 diff -u -r1.22 -r1.23 --- squid3/src/comm_poll.cc 10 Jun 2007 11:02:23 -0000 1.22 +++ squid3/src/comm_poll.cc 10 Jun 2007 12:13:31 -0000 1.23 @@ -1,6 +1,6 @@ /* - * $Id: comm_poll.cc,v 1.22 2007/06/10 11:02:23 hno Exp $ + * $Id: comm_poll.cc,v 1.23 2007/06/10 12:13:31 hno Exp $ * * DEBUG: section 5 Socket Functions * @@ -179,36 +179,6 @@ return 0; } -#if DELAY_POOLS -static int slowfdcnt = 0; -static int slowfdarr[SQUID_MAXFD]; - -static void -commAddSlowFd(int fd) -{ - assert(slowfdcnt < SQUID_MAXFD); - slowfdarr[slowfdcnt++] = fd; -} - -static int -commGetSlowFd(void) -{ - int whichfd, retfd; - - if (!slowfdcnt) - return -1; - - whichfd = squid_random() % slowfdcnt; - - retfd = slowfdarr[whichfd]; - - slowfdarr[whichfd] = slowfdarr[--slowfdcnt]; - - return retfd; -} - -#endif - static int comm_check_incoming_poll_handlers(int nfds, int *fds) { @@ -354,10 +324,6 @@ { struct pollfd pfds[SQUID_MAXFD]; -#if DELAY_POOLS - - fd_set slowfds; -#endif PF *hdl = NULL; int fd; @@ -373,10 +339,6 @@ double start; getCurrentTime(); start = current_dtime; -#if DELAY_POOLS - - FD_ZERO(&slowfds); -#endif if (commCheckICPIncoming) comm_poll_icp_incoming(); @@ -513,14 +475,6 @@ if (NULL == (hdl = F->read_handler)) (void) 0; - -#if DELAY_POOLS - - else if (FD_ISSET(fd, &slowfds)) - commAddSlowFd(fd); - -#endif - else { PROF_start(comm_read_handler); F->read_handler = NULL; @@ -600,30 +554,6 @@ if (callhttp) comm_poll_http_incoming(); -#if DELAY_POOLS - - while ((fd = commGetSlowFd()) != -1) { - fde *F = &fd_table[fd]; - debugs(5, 6, "comm_select: slow FD " << fd << " selected for reading"); - - if ((hdl = F->read_handler)) { - F->read_handler = NULL; - F->flags.read_pending = 0; - hdl(fd, F->read_data); - statCounter.select_fds++; - - if (commCheckICPIncoming) - comm_poll_icp_incoming(); - - if (commCheckDNSIncoming) - comm_poll_dns_incoming(); - - if (commCheckHTTPIncoming) - comm_poll_http_incoming(); - } - } - -#endif getCurrentTime(); statCounter.select_time += (current_dtime - start); Index: squid3/src/comm_select.cc =================================================================== RCS file: /cvsroot/squid/squid3/src/comm_select.cc,v retrieving revision 1.80 retrieving revision 1.81 diff -u -r1.80 -r1.81 --- squid3/src/comm_select.cc 10 Jun 2007 11:02:23 -0000 1.80 +++ squid3/src/comm_select.cc 10 Jun 2007 12:13:31 -0000 1.81 @@ -1,6 +1,6 @@ /* - * $Id: comm_select.cc,v 1.80 2007/06/10 11:02:23 hno Exp $ + * $Id: comm_select.cc,v 1.81 2007/06/10 12:13:31 hno Exp $ * * DEBUG: section 5 Socket Functions * @@ -191,36 +191,6 @@ return 0; } -#if DELAY_POOLS -static int slowfdcnt = 0; -static int slowfdarr[SQUID_MAXFD]; - -static void -commAddSlowFd(int fd) -{ - assert(slowfdcnt < SQUID_MAXFD); - slowfdarr[slowfdcnt++] = fd; -} - -static int -commGetSlowFd(void) -{ - int whichfd, retfd; - - if (!slowfdcnt) - return -1; - - whichfd = squid_random() % slowfdcnt; - - retfd = slowfdarr[whichfd]; - - slowfdarr[whichfd] = slowfdarr[--slowfdcnt]; - - return retfd; -} - -#endif - static int comm_check_incoming_select_handlers(int nfds, int *fds) { @@ -362,10 +332,6 @@ fd_set readfds; fd_set pendingfds; fd_set writefds; -#if DELAY_POOLS - - fd_set slowfds; -#endif PF *hdl = NULL; int fd; @@ -394,10 +360,6 @@ double start; getCurrentTime(); start = current_dtime; -#if DELAY_POOLS - - FD_ZERO(&slowfds); -#endif if (commCheckICPIncoming) comm_select_icp_incoming(); @@ -558,14 +520,6 @@ if (NULL == (hdl = F->read_handler)) (void) 0; - -#if DELAY_POOLS - - else if (FD_ISSET(fd, &slowfds)) - commAddSlowFd(fd); - -#endif - else { F->read_handler = NULL; F->flags.read_pending = 0; @@ -656,31 +610,6 @@ if (callhttp) comm_select_http_incoming(); -#if DELAY_POOLS - - while ((fd = commGetSlowFd()) != -1) { - F = &fd_table[fd]; - debugs(5, 6, "comm_select: slow FD " << fd << " selected for reading"); - - if ((hdl = F->read_handler)) { - F->read_handler = NULL; - F->flags.read_pending = 0; - commUpdateReadBits(fd, NULL); - hdl(fd, F->read_data); - statCounter.select_fds++; - - if (commCheckICPIncoming) - comm_select_icp_incoming(); - - if (commCheckDNSIncoming) - comm_select_dns_incoming(); - - if (commCheckHTTPIncoming) - comm_select_http_incoming(); - } - } - -#endif getCurrentTime(); statCounter.select_time += (current_dtime - start);
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor