This service will be undergoing maintenance at 00:00 UTC, 2017-10-23 It is expected to last about 30 minutes
Bug 803239 - Call Trace when use netfront NIC on RHEL6.3 HVM guest with xen_emul_unplug=never
Call Trace when use netfront NIC on RHEL6.3 HVM guest with xen_emul_unplug=never
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: kernel (Show other bugs)
6.2
x86_64 Linux
medium Severity medium
: rc
: ---
Assigned To: Igor Mammedov
Virtualization Bugs
xen
: Regression
Depends On:
Blocks: 653816
  Show dependency treegraph
 
Reported: 2012-03-14 05:59 EDT by Qin Guan
Modified: 2013-01-10 05:59 EST (History)
11 users (show)

See Also:
Fixed In Version: kernel-2.6.32-257.el6
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2012-06-20 04:34:24 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
dmesg-rhel6u3-20120307.log (31.03 KB, text/plain)
2012-03-14 06:01 EDT, Qin Guan
no flags Details
[RHEL6.3 PATCH] xen: initialize platform_pci even if xen_emul_unplug=never (2.81 KB, patch)
2012-03-21 16:29 EDT, Igor Mammedov
no flags Details | Diff

  None (edit)
Description Qin Guan 2012-03-14 05:59:24 EDT
Description of problem:
As the Bug 756307 modified, it will not init the xen platform pci when the kernel option xen_emul_unplug=nerver added.

While, the Call Trace keep printing on the RHEL6.3 guest console when :
a) with option "xen_emul_unplug=nerver" added in kernel cmd line.
b) use NIC with the type of netfront

INFO: task rhsmd:26621 blocked for more than 120 seconds.
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
rhsmd D 0000000000000000 0 26621 26619 0x00000080
ffff88003df15cf8 0000000000000082 000000023df15ca8 0000000000000000
ffff880000019718 00000037ffffffc8 ffff88000002ab00 0000000000000000
ffff88003df9d058 ffff88003df15fd8 000000000000fac8 ffff88003df9d058
Call Trace:
[<ffffffff810909ae>] ? prepare_to_wait+0x4e/0x80
[<ffffffff81306cb5>] read_reply+0xb5/0x140
[<ffffffff810906c0>] ? autoremove_wake_function+0x0/0x40
[<ffffffff81306e64>] xs_talkv+0xe4/0x1e0
[<ffffffff813070cb>] xs_single+0x4b/0x60
[<ffffffff81307838>] xenbus_read+0x48/0x70
[<ffffffff8130a187>] uuid_show+0x57/0xc0
[<ffffffff81309f9c>] hyp_sysfs_show+0x1c/0x20
[<ffffffff811ee1b1>] sysfs_read_file+0x111/0x1f0
[<ffffffff81179745>] vfs_read+0xb5/0x1a0
[<ffffffff810d4fa2>] ? audit_syscall_entry+0x272/0x2a0
[<ffffffff81179881>] sys_read+0x51/0x90
[<ffffffff8100b0f2>] system_call_fastpath+0x16/0x1b

Version-Release number of selected component (if applicable):
Host:
kernel-xen-2.6.18-308.el5
xen-3.0.3-135.el5
Guest:
2.6.32-250.el6

How reproducible:
100%

Steps to Reproduce:
1. Add option "xen_emul_unplug=nerver" to guest kernel cmd line .
2. Create the guest with NIC type of netfront .
3. Wait for a long time (such as couple of hours), then Call Trace keep printing in on the console at the interval of 120 seconds.

Actual results:
Call Trace printed on the console.

Expected results:
No Call Trace printed on the console.

Additional info:
Comment 1 Qin Guan 2012-03-14 06:01:15 EDT
Created attachment 569948 [details]
dmesg-rhel6u3-20120307.log
Comment 3 Igor Mammedov 2012-03-16 12:17:14 EDT
Could be reproduced faster with command 'cat /sys/hypervisor/uuid' in guest and we have the same trace:

INFO: task cat:9120 blocked for more than 120 seconds.
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
cat           D 0000000000000000     0  9120   1157 0x00000080
 ffff88010ba9fcf8 0000000000000082 0000000000000000 0000000000000000
 ffff880000025dd8 00000037ffffffc8 ffff88000002eb00 0000000000000000
 ffff8801084c45f8 ffff88010ba9ffd8 000000000000fac8 ffff8801084c45f8
Call Trace:
 [<ffffffff81306cb5>] read_reply+0xb5/0x140
 [<ffffffff810906c0>] ? autoremove_wake_function+0x0/0x40
 [<ffffffff81306e64>] xs_talkv+0xe4/0x1e0
 [<ffffffff813070cb>] xs_single+0x4b/0x60
 [<ffffffff81307838>] xenbus_read+0x48/0x70
 [<ffffffff8130a187>] uuid_show+0x57/0xc0
 [<ffffffff81309f9c>] hyp_sysfs_show+0x1c/0x20
 [<ffffffff811ee1b1>] sysfs_read_file+0x111/0x1f0
 [<ffffffff81179745>] vfs_read+0xb5/0x1a0
 [<ffffffff810d4fa2>] ? audit_syscall_entry+0x272/0x2a0
 [<ffffffff81179881>] sys_read+0x51/0x90
 [<ffffffff8100b0f2>] system_call_fastpath+0x16/0x1b

BTW
 it is not necessary to have netfront nic in config.
Comment 4 Igor Mammedov 2012-03-16 12:24:44 EDT
Upstream a947f0f8f70 sort of "fixes" it. i.e. it returns -EBUSY instead of hanging on read.

Question is if this is suitable for RHEL since initially bug was triggered by rhsmd from subscription-manager.

Bryan,
Is it mandatory for files in /sys/hypervisor be readable and return meaningful values?
Comment 7 James Bowes 2012-03-19 09:48:52 EDT
rhsmd reads /sys/hypervisor/uuid to figure out the guest's virt uuid, so we can do guest/host association, and grant free entitlements as appropriate.

Unless there's another way a xen guest can figure out its virt uuid, having access to /sys/hypervisor is pretty important for us.
Comment 8 Richard W.M. Jones 2012-03-19 10:00:19 EDT
virt-what reads /sys/hypervisor/type (not /sys/hypervisor/uuid).

We've not seen a problem before, and IMHO if reading this file
causes a kernel timeout, then it's a bug in the kernel, but I'm
not sure I have the full picture of what is going on.
Comment 9 RHEL Product and Program Management 2012-03-20 12:10:31 EDT
This request was evaluated by Red Hat Product Management for inclusion
in a Red Hat Enterprise Linux maintenance release. Product Management has 
requested further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed 
products. This request is not yet committed for inclusion in an Update release.
Comment 10 Igor Mammedov 2012-03-21 16:29:10 EDT
Created attachment 571838 [details]
[RHEL6.3 PATCH] xen: initialize platform_pci even if xen_emul_unplug=never
Comment 11 Aristeu Rozanski 2012-03-26 17:23:28 EDT
Patch(es) available on kernel-2.6.32-257.el6
Comment 16 Qixiang Wan 2012-04-26 03:10:51 EDT
Verified with kernel-2.6.32-268.

With the fix in bug 807354 integrated, this bug is fixed, PV guest also works well.

# uname -a
Linux RHEL63x64HVM 2.6.32-268.el6.x86_64 #1 SMP Tue Apr 24 16:27:49 EDT 2012 x86_64 x86_64 x86_64 GNU/Linux

# cat /proc/cmdline 
ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD rd_LVM_LV=VolGroup/lv_swap SYSFONT=latarcyrheb-sun16 rd_LVM_LV=VolGroup/lv_root KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM console=tty0 console=ttyS0,115200n8 crashkernel=128M xen_emul_unplug=never

# cat /sys/hypervisor/uuid
da2e69a8-21c6-1d6d-b774-eeb3e5ba4d1f

# cat /sys/hypervisor/type
xen

# virt-what 
xen
xen-hvm
Comment 18 errata-xmlrpc 2012-06-20 04:34:24 EDT
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.

http://rhn.redhat.com/errata/RHSA-2012-0862.html

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