mirror of
				https://gitlab.labs.nic.cz/labs/bird.git
				synced 2024-05-11 16:54:54 +00:00 
			
		
		
		
	Netlink: fix occasional netlink hangs on busy machines
This commit is contained in:
		@@ -1497,6 +1497,7 @@ nl_async_hook(sock *sk, uint size UNUSED)
 | 
			
		||||
	   *  One day we might react to it by asking for route table
 | 
			
		||||
	   *  scan in near future.
 | 
			
		||||
	   */
 | 
			
		||||
	  log(L_WARN "Kernel dropped some netlink messages, will resync on next scan.");
 | 
			
		||||
	  return 1;	/* More data are likely to be ready */
 | 
			
		||||
	}
 | 
			
		||||
      else if (errno != EWOULDBLOCK)
 | 
			
		||||
 
 | 
			
		||||
@@ -2238,7 +2238,8 @@ io_loop(void)
 | 
			
		||||
	      if (pfd[s->index].revents & (POLLHUP | POLLERR))
 | 
			
		||||
		{
 | 
			
		||||
		  sk_err(s, pfd[s->index].revents);
 | 
			
		||||
		  goto next2;
 | 
			
		||||
		  if (s != current_sock)
 | 
			
		||||
		    goto next2;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	      current_sock = sk_next(s);
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user