Tor chooses at most one entry guard per family

In choose_good_entry_server(), we do

  /* and exclude current entry guards, if applicable */
  if (options->UseEntryGuards && entry_guards) {
    SMARTLIST_FOREACH(entry_guards, entry_guard_t *, entry,
      { 
        if ((r = router_get_by_digest(entry->identity))) {
          smartlist_add(excluded, r);
          routerlist_add_family(excluded, r);
        }
      });
  }

That routerlist_add_family() line means that we do not consider any nodes to be a new guard if they're in the family of one of our current guards.

Is that a good idea (due to increased diversity)? Bad idea (due to decreased diversity)? Scary idea? What were we thinking?

Note that "family" includes "in the same /16".