Diff for /src/sys/netinet/ip_demux.c between versions 1.3 and 1.4

version 1.3, 2003/11/20 06:05:31 version 1.4, 2004/03/05 19:47:28
Line 45  SYSCTL_INT(_net_inet_ip, OID_AUTO, mthre Line 45  SYSCTL_INT(_net_inet_ip, OID_AUTO, mthre
 static int  static int
 INP_MPORT_HASH(in_addr_t src, in_addr_t dst, int sport, int dport)  INP_MPORT_HASH(in_addr_t src, in_addr_t dst, int sport, int dport)
 {  {
        int hv;        /*
         * Use low order bytes.
        hv = (int)ntohl(src) ^ (int)ntohl(dst) ^          * This particular hash function is only good for ncpus < 256.
                (int)ntohs(sport) ^ (int)ntohs(dport);         */
        return((hv & 0xFFFF) % ncpus);#if (BYTE_ORDER == LITTLE_ENDIAN)
         return (((src >> 24) ^ (sport >> 8) ^ (dst >> 24) ^ (dport >> 8)) &
                 ncpus2_mask);
 #else
         return ((src ^ sport ^ dst ^ dport) & ncpus2_mask);
 #endif
 }  }
   
 lwkt_port_t  lwkt_port_t
Line 133  tcp_thread_init(void) Line 138  tcp_thread_init(void)
 {  {
         int cpu;          int cpu;
   
        for (cpu = 0; cpu < ncpus; cpu++) {        for (cpu = 0; cpu < ncpus2; cpu++) {
                 lwkt_create(netmsg_service_loop, NULL, NULL,                   lwkt_create(netmsg_service_loop, NULL, NULL, 
                         &tcp_thread[cpu], 0, cpu, "tcp_thread %d", cpu);                          &tcp_thread[cpu], 0, cpu, "tcp_thread %d", cpu);
         }          }
Line 144  udp_thread_init(void) Line 149  udp_thread_init(void)
 {  {
         int cpu;          int cpu;
   
        for (cpu = 0; cpu < ncpus; cpu++) {        for (cpu = 0; cpu < ncpus2; cpu++) {
                 lwkt_create(netmsg_service_loop, NULL, NULL,                  lwkt_create(netmsg_service_loop, NULL, NULL,
                         &udp_thread[cpu], 0, cpu, "udp_thread %d", cpu);                          &udp_thread[cpu], 0, cpu, "udp_thread %d", cpu);
         }          }

Removed from v.1.3  
changed lines
  Added in v.1.4