Bug 1210707
| Summary: | The default path '/etc/qemu/fsfreeze-hook' for 'fsfreeze-hook' script doesn't exist | |||
|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | Gu Nini <ngu> | |
| Component: | qemu-guest-agent | Assignee: | Miroslav Rezanina <mrezanin> | |
| Status: | CLOSED ERRATA | QA Contact: | Virtualization Bugs <virt-bugs> | |
| Severity: | unspecified | Docs Contact: | ||
| Priority: | unspecified | |||
| Version: | 7.2 | CC: | dgibson, hhuang, huding, juzhang, michen, virt-maint, xfu, xuhan, ypu, zhengtli | |
| Target Milestone: | rc | |||
| Target Release: | --- | |||
| Hardware: | All | |||
| OS: | Unspecified | |||
| Whiteboard: | ||||
| Fixed In Version: | qemu-guest-agent-2.3.0-2.el7 | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | ||
| Clone Of: | ||||
| : | 1213233 (view as bug list) | Environment: | ||
| Last Closed: | 2015-11-19 07:10:52 UTC | Type: | Bug | |
| Regression: | --- | Mount Type: | --- | |
| Documentation: | --- | CRM: | ||
| Verified Versions: | Category: | --- | ||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
| Cloudforms Team: | --- | Target Upstream Version: | ||
| Embargoed: | ||||
| Bug Depends On: | ||||
| Bug Blocks: | 1213233 | |||
Doesn't appear to be ppc specific, reassigning to default maintainer. see bug 1213233 for build solution, reassigning Fix included in qemu-guest-agent-2.3.0-2.el7 Reproduce this bug using the following version: Host: kernel-3.10.0-292.el7.x86_64 qemu-kvm-rhev-2.3.0-12.el7.x86_64 Guest: kernel-3.10.0-295.el7.x86_64 qemu-guest-agent-2.3.0-1.el7.x86_64 Steps to reproduce: 1. Start a guest with virtio serial guest agent /usr/libexec/qemu-kvm -cpu SandyBridge -machine pc-i440fx-rhel7.2.0 -enable-kvm -m 4096 -smp 2,sockets=1,cores=2,threads=1 -name rhel7base -drive file=/home/rhel7.2.qcow2,if=none,id=drive-virtio-disk0,format=qcow2,werror=stop,rerror=stop,aio=native,cache.direct=on -device virtio-blk-pci,drive=drive-virtio-disk0,id=virtio-disk0 -boot menu=on -monitor stdio -netdev tap,id=hostnet0,vhost=on,script=/etc/qemu-ifup -device virtio-net-pci,netdev=hostnet0,mac=52:54:00:c6:4b:15,id=test -nodefaults -nodefconfig -spice port=5910,seamless-migration=on,disable-ticketing -vga qxl -global qxl-vga.vram_size=67108864 -global PIIX4_PM.disable_s3=0 -global PIIX4_PM.disable_s4=0 -device virtio-serial-pci,id=virtio-serial0,bus=pci.0,addr=0x9,disable-legacy=true,disable-modern=false -chardev socket,path=/tmp/qga.sock,server,nowait,id=qga0 -device virtserialport,bus=virtio-serial0.0,chardev=qga0,id=org.qemu.guest_agent.0,name=org.qemu.guest_agent.0 -qmp tcp:0:6666,server,nowait 2. In the guest, install guest agent 3. In the guest, start qemu-guest-agent service # service qemu-guest-agent start 4. In the guest, list help info of qemu-ga # qemu-ga --help' 5. In the guest, check the files of qemu-guest-agent package: # rpm -ql qemu-guest-agent Actual results: after step 3, qemu-guest-agent can start normally. after step 4, -F, --fsfreeze-hook ... ...(default is /etc/qemu-kvm/fsfreeze-hook) after step 5, /etc/qemu-ga /etc/qemu-ga/fsfreeze-hook /etc/qemu-ga/fsfreeze-hook.d /etc/sysconfig/qemu-ga ... ... Test this bug using the following version: Host: kernel-3.10.0-292.el7.x86_64 qemu-kvm-rhev-2.3.0-12.el7.x86_64 Guest: kernel-3.10.0-295.el7.x86_64 qemu-guest-agent-2.3.0-2.el7.x86_64 Steps to reproduce: 1. Start a guest with virtio serial guest agent /usr/libexec/qemu-kvm -cpu SandyBridge -machine pc-i440fx-rhel7.2.0 -enable-kvm -m 4096 -smp 2,sockets=1,cores=2,threads=1 -name rhel7base -drive file=/home/rhel7.2.qcow2,if=none,id=drive-virtio-disk0,format=qcow2,werror=stop,rerror=stop,aio=native,cache.direct=on -device virtio-blk-pci,drive=drive-virtio-disk0,id=virtio-disk0 -boot menu=on -monitor stdio -netdev tap,id=hostnet0,vhost=on,script=/etc/qemu-ifup -device virtio-net-pci,netdev=hostnet0,mac=52:54:00:c6:4b:15,id=test -nodefaults -nodefconfig -spice port=5910,seamless-migration=on,disable-ticketing -vga qxl -global qxl-vga.vram_size=67108864 -global PIIX4_PM.disable_s3=0 -global PIIX4_PM.disable_s4=0 -device virtio-serial-pci,id=virtio-serial0,bus=pci.0,addr=0x9,disable-legacy=true,disable-modern=false -chardev socket,path=/tmp/qga.sock,server,nowait,id=qga0 -device virtserialport,bus=virtio-serial0.0,chardev=qga0,id=org.qemu.guest_agent.0,name=org.qemu.guest_agent.0 -qmp tcp:0:6666,server,nowait 2. In the guest, install guest agent 3. In the guest, start qemu-guest-agent service # service qemu-guest-agent start 4. In the guest, list help info of qemu-ga # qemu-ga --help' 5. In the guest, check the files of qemu-guest-agent package: # rpm -ql qemu-guest-agent Actual results: after step 3, qemu-guest-agent can start normally. The path of fsfreeze-hook in step 4 is same as step 5. after step 4, -F, --fsfreeze-hook ... ...(default is /etc/qemu-ga/fsfreeze-hook) after step 5, /etc/qemu-ga /etc/qemu-ga/fsfreeze-hook /etc/qemu-ga/fsfreeze-hook.d /etc/sysconfig/qemu-ga ... ... Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHBA-2015-2217.html |
Description of problem: At present, on a rhel7.2 host, the default path for script 'fsfreeze-hook' is '/etc/qemu/fsfreeze-hook', which doesn't exist on the guest Version-Release number of selected component (if applicable): Host kernel: 3.10.0-234.el7.ppc64 Qemu-kvm: qemu-kvm-rhev-2.2.0-8.el7.ppc64 Guest kernel: 2.6.32-548.el6.ppc64/3.10.0-229.el7.ppc64 Guest agent: 0.12.1.2-2.465.el6.ppc64/2.1.0-4.el7.ppc64 How reproducible: 100% Steps to Reproduce: 1. Start a guest with virtio serial guest agent by qemu cmd 2. In the guest, install guest agent, and set 'FSFREEZE_HOOK_ENABLE=1' in file '/etc/sysconfig/qemu-ga' for the rhel6.7 guest 3. In the guest, start the guest agent with following cmd: # qemu-ga --method virtio-serial --path /dev/virtio-ports/org.qemu.guest_agent.0 -F 4. In the guest, issue command: # qemu-ga --help' # rpm -ql qemu-guest-agent 5. In the host, connect to the guest agent channel with cmd 'nc -U' and issue cmd 'fsfreeze' cmd there: # nc -U /var/lib/libvirt/qemu/channel/target/virtioqcow-0323.qemu.guest_agent.0 {"execute":"guest-fsfreeze-freeze"} Actual results: In step3, the guest agent could be started; In step4, from the help output, it can be seen that the default path for script 'fsfreeze-hook' is '/etc/qemu/fsfreeze-hook'; while from 'rpm -ql' output, there is not the path, it's '/usr/libexec/qemu-ga/fsfreeze-hook' in rhel6.7 guest and '/etc/qemu-ga/fsfreeze-hook' in rhel7.2 guest instead; In step5, the 'fsfreeze' command fails for could not find the script path Expected results: The default path is the correct one, and 'qemu-ga --help' should be updated correspondingly Additional info: