From: Don Dutile <ddutile@redhat.com> Date: Wed, 1 Jul 2009 19:31:19 -0400 Subject: [xen] quiet printk on FV guest shutdown Message-id: 4A4BF1C7.2040800@redhat.com O-Subject: [Patch RHEL 5.4] Quiet printk on FV guest shutdown BZ 501474 Regression Bugzilla: 501474 RH-Acked-by: Juan Quintela <quintela@redhat.com> RH-Acked-by: Chris Lalancette <clalance@redhat.com> When a FV guest is shutdown that is *not* using the xen pv drivers (on a xen hypervisor), the following messages are seen at shutdown: xenbus_dev_shutdown: device/vbd/5632: Initialised != Connected, skipping xenbus_dev_shutdown: device/vbd/768: Closed != Connected, skipping These are the virtual disk devices (hda & hdc) that are always presented by the xen tools to the FV guests, as well as the emulated IDE. (for compatibility reasons, to be brief). These were not seen until after -133, because the anaconda workaround (hack) removed unconnected devices after xenblk had completed it's initialization. By moving xen-platform-pci.(k)o from a built-in to a loadable module, the anaconda hack wasn't necessary, and it was removed. The above messages did not exist in 5.3 & earlier, thus, it's deemed a (minor) regression, that is easily silenced to avoid unnecessary customer concerns & their ensuing bug-report/service calls. (i.e, want to optimize RedHat Value). The fix is to tag the printk's w/KERN_DEBUG, so they are available for debug, which is what they were designed to do originally. Brew build: https://brewweb.devel.redhat.com/taskinfo?taskID=1870958 Testing: Install kernel-2.6.18-155 x86_64 as FV guest; boot up & shutdown see above messages. Install brew built -156 kernel w/above patch, and above messages no longer coming out. Please review & ack. - Don drivers/xen/xenbus/xenbus_probe.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/drivers/xen/xenbus/xenbus_probe.c b/drivers/xen/xenbus/xenbus_probe.c index 4e3f730..cb98b21 100644 --- a/drivers/xen/xenbus/xenbus_probe.c +++ b/drivers/xen/xenbus/xenbus_probe.c @@ -469,7 +469,8 @@ static void xenbus_dev_shutdown(struct device *_dev) get_device(&dev->dev); if (dev->state != XenbusStateConnected) { - printk("%s: %s: %s != Connected, skipping\n", __FUNCTION__, + printk(KERN_DEBUG + "%s: %s: %s != Connected, skipping\n", __FUNCTION__, dev->nodename, xenbus_strstate(dev->state)); goto out; }