geom_event.c (b1876192f015b1cf392b52b82b124265fc9683a7) | geom_event.c (2654e1fc4e36acb05b62f4dd9b8fb32cc5521034) |
---|---|
1/*- 2 * Copyright (c) 2002 Poul-Henning Kamp 3 * Copyright (c) 2002 Networks Associates Technology, Inc. 4 * All rights reserved. 5 * 6 * This software was developed for the FreeBSD Project by Poul-Henning Kamp 7 * and NAI Labs, the Security Research Division of Network Associates, Inc. 8 * under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the --- 141 unchanged lines hidden (view full) --- 150 g_trace(G_T_TOPOLOGY, "g_do_event(%p) %d m:%p g:%p p:%p c:%p - ", 151 ep, ep->event, ep->class, ep->geom, ep->provider, ep->consumer); 152 g_topology_assert(); 153 switch (ep->event) { 154 case EV_NEW_CLASS: 155 mp2 = ep->class; 156 if (mp2->taste == NULL) 157 break; | 1/*- 2 * Copyright (c) 2002 Poul-Henning Kamp 3 * Copyright (c) 2002 Networks Associates Technology, Inc. 4 * All rights reserved. 5 * 6 * This software was developed for the FreeBSD Project by Poul-Henning Kamp 7 * and NAI Labs, the Security Research Division of Network Associates, Inc. 8 * under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the --- 141 unchanged lines hidden (view full) --- 150 g_trace(G_T_TOPOLOGY, "g_do_event(%p) %d m:%p g:%p p:%p c:%p - ", 151 ep, ep->event, ep->class, ep->geom, ep->provider, ep->consumer); 152 g_topology_assert(); 153 switch (ep->event) { 154 case EV_NEW_CLASS: 155 mp2 = ep->class; 156 if (mp2->taste == NULL) 157 break; |
158 LIST_FOREACH(mp, &g_classs, class) { | 158 LIST_FOREACH(mp, &g_classes, class) { |
159 if (mp2 == mp) 160 continue; 161 LIST_FOREACH(gp, &mp->geom, geom) { 162 LIST_FOREACH(pp, &gp->provider, provider) { 163 mp2->taste(ep->class, pp, 0); 164 g_topology_assert(); 165 } 166 } 167 } 168 break; 169 case EV_NEW_PROVIDER: 170 g_trace(G_T_TOPOLOGY, "EV_NEW_PROVIDER(%s)", 171 ep->provider->name); | 159 if (mp2 == mp) 160 continue; 161 LIST_FOREACH(gp, &mp->geom, geom) { 162 LIST_FOREACH(pp, &gp->provider, provider) { 163 mp2->taste(ep->class, pp, 0); 164 g_topology_assert(); 165 } 166 } 167 } 168 break; 169 case EV_NEW_PROVIDER: 170 g_trace(G_T_TOPOLOGY, "EV_NEW_PROVIDER(%s)", 171 ep->provider->name); |
172 LIST_FOREACH(mp, &g_classs, class) { | 172 LIST_FOREACH(mp, &g_classes, class) { |
173 if (mp->taste == NULL) 174 continue; 175 i = 1; 176 LIST_FOREACH(cp, &ep->provider->consumers, consumers) 177 if(cp->geom->class == mp) 178 i = 0; 179 if (i) { 180 mp->taste(mp, ep->provider, 0); --- 120 unchanged lines hidden --- | 173 if (mp->taste == NULL) 174 continue; 175 i = 1; 176 LIST_FOREACH(cp, &ep->provider->consumers, consumers) 177 if(cp->geom->class == mp) 178 i = 0; 179 if (i) { 180 mp->taste(mp, ep->provider, 0); --- 120 unchanged lines hidden --- |