brctl setfd virbr0 0.1 by default?

Daniel P. Berrange berrange at redhat.com
Tue Jul 22 14:51:23 UTC 2008


On Tue, Jul 22, 2008 at 10:22:12AM -0400, Warren Togami wrote:
> Daniel P. Berrange wrote:
> >On Mon, Jul 21, 2008 at 04:06:50PM -0400, Warren Togami wrote:
> >>https://bugzilla.redhat.com/show_bug.cgi?id=435757
> >>Sometime after F8, something changed where stuff attached to a bridge 
> >>fails to connect until 15 seconds later.  A manual workaround of brctl 
> >>setfd BRIDGENAME 0.1 makes stuff work immediately.
> >>
> >>Are there any reasons why don't we do this by default for virbr0 in 
> >>libvirt?
> >
> >Because no one has ever suggested it before...
> >
> >Arguably we should just turn off STP on the virbr0 device. Since it is
> >not connected directly to the public LAN[1] there is no risk of network
> >loops and thus spanning tree protocol is pointless for virbr0. I wonder
> >if somewhere along the lines post F8 GA, STP accidentally got toggled 
> >from offf by default to on by default on virbr0. Please file a BZ about
> >this problem.
> >
> >Daniel
> >
> >[1] The only connectivity is outbound, masqueraded / NAT traffic.
> 
> Disabling STP on virbr0 alone is not enough.  I just tested it now.  STP 
> enabled or disabled, the default forward delay of 15 seconds makes it 
> fail for 15 seconds, long enough for most DHCP clients to give up.
> 
> Given this, what should we do?  Both disable STP and also reduce the delay?

I think I understand what's going on here.

 - The libvirt 'default' network XML config (aka that for virbr0) does
   not specify any forward delay or STP setting, so it defaults to
   delay=0, and STP=on

 - The libvirt in F8 GA had a bug, where it called 'setfd' instead
   'stp' when invoking  brctl.

 - Thus, the default config would result in a bridge with STP off
   and a delay of 1 second.

 - A libvirt update fixed the bug in the way we call brctl. Fixing
   the bug means we now by default create a bridge with STP on
   and the default kernel delay setting of 15 seconds.

 - There is a further bug in that if you specify delay=0 in the XML
   it'll never call 'brctl setfd 0', so you'll be stuck with the 15
   second default still.

So yes, we need to fix things such that it has STP=on and a tiny (or even 
zer) forward forward delay again, as per F8 GA behaviour. Can you file
a BZ about this problem against libvirt. It impacts F9 and rawhide too

Daniel
-- 
|: Red Hat, Engineering, London   -o-   http://people.redhat.com/berrange/ :|
|: http://libvirt.org  -o-  http://virt-manager.org  -o-  http://ovirt.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505  -o-  F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|




More information about the fedora-devel-list mailing list