kt = pool_get(&pfr_ktable_pl, PR_WAITOK | PR_LIMITFAIL);
kt = pool_get(&pfr_ktable_pl, PR_NOWAIT);
pfr_create_ktable(struct pfr_table *tbl, long tzero, int attachruleset){	struct pfr_ktable	*kt;	struct pf_ruleset	*rs;	kt = pool_get(&pfr_ktable_pl, PR_WAITOK | PR_LIMITFAIL);	if (kt == NULL)		return (NULL);	bzero(kt, sizeof(*kt));	kt->pfrkt_t = *tbl;	if (attachruleset) {		rs = pf_find_or_create_ruleset(tbl->pfrt_anchor);		if (!rs) {			pfr_destroy_ktable(kt, 0);			return (NULL);		}		kt->pfrkt_rs = rs;		rs->tables++;	}	if (!rn_inithead((void **)&kt->pfrkt_ip4,	    offsetof(struct sockaddr_in, sin_addr) * 8) ||	    !rn_inithead((void **)&kt->pfrkt_ip6,	    offsetof(struct sockaddr_in6, sin6_addr) * 8)) {		pfr_destroy_ktable(kt, 0);		return (NULL);	}	kt->pfrkt_tzero = tzero;	return (kt);}