Bug 501468 - RHEL5.4 virtio: "Device does not have a release() function, it is broken and must be fixed" warnings
Summary: RHEL5.4 virtio: "Device does not have a release() function, it is broken and ...
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: kernel
Version: 5.4
Hardware: All
OS: Linux
medium
low
Target Milestone: rc
: ---
Assignee: Mark McLoughlin
QA Contact: Red Hat Kernel QE team
URL:
Whiteboard:
Keywords:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-05-19 10:24 UTC by Yolkfull Chow
Modified: 2010-04-19 18:57 UTC (History)
8 users (show)

(edit)
Clone Of:
(edit)
Last Closed: 2009-09-02 08:50:26 UTC


Attachments (Terms of Use)
driver-core-add-root_device_register.patch (4.18 KB, patch)
2009-07-01 13:37 UTC, Mark McLoughlin
no flags Details | Diff
virtio-add-PCI-device-release-function.patch (2.51 KB, patch)
2009-07-01 13:38 UTC, Mark McLoughlin
no flags Details | Diff
virtio-do-not-statically-allocate-root-device.patch (2.55 KB, patch)
2009-07-01 13:38 UTC, Mark McLoughlin
no flags Details | Diff


External Trackers
Tracker ID Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2009:1243 normal SHIPPED_LIVE Important: Red Hat Enterprise Linux 5.4 kernel security and bug fix update 2009-09-01 08:53:34 UTC

Description Yolkfull Chow 2009-05-19 10:24:51 UTC
Description of problem:
Add a virtio pci device and then remove it, can find trace message in dmesg:

-----
acpiphp: Slot [29] registered
acpiphp: Slot [30] registered
acpiphp: Slot [31] registered
ACPI Exception (pci_bind-0302): AE_NOT_FOUND, Unable to get data from device S4 [20060707]
PCI: Ignore bogus resource 6 [0:0] of 0000:00:02.0
decode_hpp: Could not get hotplug parameters. Use defaults
PCI: Enabling device 0000:00:04.0 (0000 -> 0001)
ACPI: PCI Interrupt 0000:00:04.0[A] -> Link [LNKD] -> GSI 11 (level, high) -> IRQ 11
Device 'virtio1' does not have a release() function, it is broken and must be fixed.
BUG: warning at drivers/base/core.c:101/device_release() (Not tainted)

Call Trace:
 [<ffffffff80149402>] kobject_cleanup+0x53/0x7e
 [<ffffffff8014942d>] kobject_release+0x0/0x9
 [<ffffffff80034e87>] kref_put+0x6f/0x7a
 [<ffffffff881ec04a>] :virtio_pci:virtio_pci_remove+0x19/0x5e
 [<ffffffff80154e3c>] pci_device_remove+0x24/0x3a
 [<ffffffff801b6cd3>] __device_release_driver+0x9f/0xc3
 [<ffffffff801b6fa4>] device_release_driver+0x2c/0x4e
 [<ffffffff801b64d4>] bus_remove_device+0x9b/0xb0
 [<ffffffff801b524d>] device_del+0x129/0x1a9
 [<ffffffff801b52ea>] device_unregister+0x9/0x12
 [<ffffffff8015215c>] pci_stop_dev+0x25/0x57
 [<ffffffff884ae79f>] :acpiphp:acpiphp_disable_slot+0x66/0x12a
 [<ffffffff8016cde5>] acpi_os_execute_deferred+0x0/0x27
 [<ffffffff884aee53>] :acpiphp:handle_hotplug_event_func+0x10c/0x13e
 [<ffffffff80185c91>] acpi_bus_get_device+0x1d/0x2e
 [<ffffffff801728a0>] acpi_ev_notify_dispatch+0x57/0x60
 [<ffffffff8016ce03>] acpi_os_execute_deferred+0x1e/0x27
 [<ffffffff8004d139>] run_workqueue+0x94/0xe4
 [<ffffffff800499ba>] worker_thread+0x0/0x122
 [<ffffffff8009d909>] keventd_create_kthread+0x0/0xc4
 [<ffffffff80049aaa>] worker_thread+0xf0/0x122
 [<ffffffff8008a461>] default_wake_function+0x0/0xe
 [<ffffffff8009d909>] keventd_create_kthread+0x0/0xc4
 [<ffffffff8009d909>] keventd_create_kthread+0x0/0xc4
 [<ffffffff80032360>] kthread+0xfe/0x132
 [<ffffffff8005dfb1>] child_rip+0xa/0x11
 [<ffffffff8009d909>] keventd_create_kthread+0x0/0xc4
 [<ffffffff80032262>] kthread+0x0/0x132
 [<ffffffff8005dfa7>] child_rip+0x0/0x11

ACPI: PCI interrupt for device 0000:00:04.0 disabled

Version-Release number of selected component (if applicable):
83-51

How reproducible:
everytime

Steps to Reproduce:
1. add a virtio pci device: #pci_add pci_addr=auto nic model=virtio
2. try to remove it: #pci_del pci_addr=<addr>
3. found call trace in dmesg
  
Actual results:
get call trace

Expected results:
Can remove virtio pci device successfully

Additional info:

Comment 1 Yaniv Kaul 2009-05-19 10:53:14 UTC
Hot-add is not supported for RHEV 2.1.

Comment 2 Mark McLoughlin 2009-05-19 10:58:05 UTC
As I said in bug #500975 ...

This is a bug with the guest driver. Please do not confuse guest issues with
host issues. Only host bugs are relevant to RHEV-H

What OS is the guest running? RHEL 5.4? If so, please file a bug against
RHEL5.4/kernel about this and cc me. Thanks

Comment 3 Yolkfull Chow 2009-05-19 11:38:45 UTC
Guest RHEL-5.3-server-64, ah... yes,seems to be guest's driver problem.

Comment 5 RHEL Product and Program Management 2009-05-19 18:30:31 UTC
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 7 Mark McLoughlin 2009-07-01 13:37:37 UTC
Created attachment 350109 [details]
driver-core-add-root_device_register.patch

Comment 8 Mark McLoughlin 2009-07-01 13:38:08 UTC
Created attachment 350110 [details]
virtio-add-PCI-device-release-function.patch

Comment 9 Mark McLoughlin 2009-07-01 13:38:37 UTC
Created attachment 350112 [details]
virtio-do-not-statically-allocate-root-device.patch

Comment 11 Don Zickus 2009-07-14 20:57:10 UTC
in kernel-2.6.18-158.el5
You can download this test kernel from http://people.redhat.com/dzickus/el5

Please do NOT transition this bugzilla state to VERIFIED until our QE team
has sent specific instructions indicating when to do so.  However feel free
to provide a comment indicating that this fix has been verified.

Comment 14 errata-xmlrpc 2009-09-02 08:50:26 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHSA-2009-1243.html


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