RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 729207 - /var/lib/libvirt/dnsmasq/default.hostsfile lags behind changes
Summary: /var/lib/libvirt/dnsmasq/default.hostsfile lags behind changes
Keywords:
Status: CLOSED DUPLICATE of bug 727982
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: libvirt
Version: 6.1
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: ---
Assignee: Laine Stump
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-08-09 03:49 UTC by Laine Stump
Modified: 2011-08-09 06:05 UTC (History)
15 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of: 713728
Environment:
Last Closed: 2011-08-09 06:05:44 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Laine Stump 2011-08-09 03:49:44 UTC
+++ This bug was initially created as a clone of Bug #713728 +++

Description of problem:
When editing a network in virsh ('net-edit default', 'net-destroy/start default') to e.g. add a new MAC/IP static address combo, /var/lib/libvirt/dnsmasq/default.hostsfile seems to lag one "version" behind, i.e. carries combos only from the previous edit. To make the current ones effective, changing an unrelated one (e.g. change a hex digit from upper to lowercase) then destroying/restarting the network helps (the unrelated change is only effective on the next change though).

I haven't found this issue in RH/Fedora Bugzilla, but googling gave me an open ticket on Launchpad for Ubuntu: https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/584910

Version-Release number of selected component (if applicable):
libvirt-0.8.8-4.fc15.x86_64
libvirt-client-0.8.8-4.fc15.x86_64
libvirt-python-0.8.8-4.fc15.x86_64

How reproducible:
Reproducible

Steps to Reproduce:
1. 'net-edit default', then add a new static DHCP mapping to the default network (e.g. <host mac='FF:FF:EE:EE:DD:DD' ip='192.168.122.254' />)
2. 'net-destroy default'
3. 'net-start default'
4. 'grep FF:FF:EE:EE:DD:DD /var/lib/libvirt/dnsmasq/default.hostsfile'
  
Actual results:
(nothing)

Expected results:
FF:FF:EE:EE:DD:DD,192.168.122.254


BTW, I noticed that destroying/starting the network makes it unusable on running guests without rebooting them (they don't ping, restarting the network service in the guest or equivalent doesn't help). Is that expected/intentional or are there ways to add a new static MAC/IP address combo without having to reboot other running guests?

--- Additional comment from nphilipp on 2011-08-03 09:13:50 EDT ---

Ping?

--- Additional comment from crobinso on 2011-08-03 10:23:30 EDT ---

Laine, any thoughts?

--- Additional comment from laine on 2011-08-03 16:34:58 EDT ---

The problem is that when an active network is re-defined, the new data is stored in network->newDef, but the code that builds the new hosts files uses network->def (the old version of the config). If the network is inactive at the time it's redefined, then the new data is stored directly into network->def, and it takes effect immediately.

I just posted a patch upstream to fix the problem:

https://www.redhat.com/archives/libvir-list/2011-August/msg00181.html

Comment 1 Laine Stump 2011-08-09 04:02:38 UTC
commit 3aa84653d1c457b1c12efd4b8449e31525042254
Author: Laine Stump <laine>
Date:   Wed Aug 3 15:33:24 2011 -0400

    network: eliminate lag in updating dnsmasq hosts files

    This addresses https://bugzilla.redhat.com/show_bug.cgi?id=713728

    When "defining" a new network (or one that exists but isn't currently
    active) the new definition is stored in network->def, but for a
    network that already exists and is active, the new definition is
    stored in network->newDef, and then moved over to network->def as soon
    as the network is destroyed.

    However, the code that writes the dhcp and dns hosts files used by
    dnsmasq was always using network->def for its information, even when
    the new data was actually in network->newDef, so the hosts files
    always lagged one edit behind the definition.

    This patch changes the code to keep the pointer to the new definition
    after it's been assigned into the network, and use it directly
    (regardless of whether it's stored in network->newDef or network->def)
    to construct the hosts files.

This same patch has also been posted to rhvirt-patches for inclusion in
RHEL6.2:

http://post-office.corp.redhat.com/archives/rhvirt-patches/2011-August/msg00298.html

Comment 2 Daniel Veillard 2011-08-09 06:05:44 UTC

*** This bug has been marked as a duplicate of bug 727982 ***


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