- int nbytes = 3 * ni;
-
- /* Free previous allocation, if any */
- if (sel->ibits != NULL) {
- FREE(sel->ibits, M_TEMP);
- }
- if (sel->obits != NULL) {
- FREE(sel->obits, M_TEMP);
- /* NULL out; subsequent ibits allocation may fail */
- sel->obits = NULL;
- }
-
- MALLOC(sel->ibits, u_int32_t *, nbytes, M_TEMP, M_WAITOK | M_ZERO);
- if (sel->ibits == NULL) {
- return EAGAIN;
- }
- MALLOC(sel->obits, u_int32_t *, nbytes, M_TEMP, M_WAITOK | M_ZERO);
- if (sel->obits == NULL) {
- FREE(sel->ibits, M_TEMP);
- sel->ibits = NULL;