Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 435757 - (kvm) bridge_forward_delay 15 seconds default
Summary: (kvm) bridge_forward_delay 15 seconds default
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: libvirt
Version: 8
Hardware: All
OS: Linux
low
low
Target Milestone: ---
Assignee: Daniel Veillard
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: K12LTSP
TreeView+ depends on / blocked
 
Reported: 2008-03-03 18:34 UTC by Warren Togami
Modified: 2008-11-04 11:09 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2008-11-04 11:09:19 UTC


Attachments (Terms of Use)

Description Warren Togami 2008-03-03 18:34:04 UTC
Sometime after F-8 GA the kernel changed the bridge forwarding delay to be 15
seconds.

kernel source:
net/bridge/br_if.c:     br->bridge_forward_delay = br->forward_delay = 15 * HZ;

This makes it really annoying for KVM PXE boot users, because DHCP fails for 15
seconds instead of working instantly like it did in the past.

Workaround:
brctl setfd virbr0 0.1

Two questions:
1) Why did the kernel change this?
2) Can we workaround this in the virbr0 creation?

Comment 1 Dave Jones 2008-03-03 18:51:19 UTC
The line you quoted was added in 2.3.47pre5
It hasn't changed since.   I think the problem is elsewhere.

Comment 2 Warren Togami 2008-03-03 20:40:54 UTC
OK, it was some other host kernel change that caused this problem.


Comment 3 Warren Togami 2008-07-22 15:00:14 UTC
Reassigning to libvirt.

> 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

Comment 4 Daniel Berrange 2008-11-04 11:09:19 UTC
libvirt now explicitly sets FD to zero, from at least 0.4.5 release


Note You need to log in before you can comment on or make changes to this bug.