Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.
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 711106

Summary: Block device is mapped into xvde (instead of xvda) on PV Xen guest
Product: Red Hat Enterprise Linux 6 Reporter: Yura Kohut <ykohut>
Component: kernelAssignee: Red Hat Kernel Manager <kernel-mgr>
Status: CLOSED NOTABUG QA Contact: Red Hat Kernel QE team <kernel-qe>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 6.1CC: drjones
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-06-06 16:09:30 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Yura Kohut 2011-06-06 14:50:44 UTC
Description of problem:
Block devices (disk devices) are mapped into xvde (instead of xvda - ..) while "Red Hat Enterprise Linux Server release 6.1 (Santiago)" amd64 (x86_64) is running as paravirtualized Xen guest. 

Version-Release number of selected component (if applicable):
/etc/redhat-release 
Red Hat Enterprise Linux Server release 6.1 (Santiago)

Linux version 2.6.32-131.2.1.el6.x86_64 (mockbuild.bos.redhat.com) (gcc version 4.4.5 20110214 (Red Hat 4.4.5-6) (GCC) ) #1 SMP Wed May 18 07:07:37 EDT 2011

Command line: ro root=/dev/xvda1 rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=us


How reproducible:
Run RHEL 6.1 x86_64 as PV guest (DomU).
Run RHEL 5.6 x86_64 with Xen 3.4.3 as hypervisor system (Dom0)

Steps to Reproduce:
1. Get the RHEL 5.6 x86_64 box with Xen 3.4.3 installed. Some hypervisor details:
xm info
host                   : ****
release                : 2.6.18-194.17.4.el5xen
version                : #1 SMP Mon Oct 25 16:36:31 EDT 2010
machine                : x86_64
nr_cpus                : 4
nr_nodes               : 1
cores_per_socket       : 4
threads_per_core       : 1
cpu_mhz                : 2128
hw_caps                : bfebfbff:28100800:00000000:00000340:009ce3bd:00000000:00000001:00000000
virt_caps              : hvm
total_memory           : 6135
free_memory            : 2582
node_to_cpu            : node0:0-3
node_to_memory         : node0:2582
xen_major              : 3
xen_minor              : 4
xen_extra              : .3
xen_caps               : xen-3.0-x86_64 xen-3.0-x86_32p hvm-3.0-x86_32 hvm-3.0-x86_32p hvm-3.0-x86_64 
xen_scheduler          : credit
xen_pagesize           : 4096
platform_params        : virt_start=0xffff800000000000
xen_changeset          : unavailable
cc_compiler            : gcc version 4.1.2 20080704 (Red Hat 4.1.2-48)
cc_compile_by          : root
cc_compile_domain      : gitco.tld
cc_compile_date        : Sat Jan 22 14:01:09 CET 2011
xend_config_format     : 4

2. Prepare the following DomU (Xen guest) configuration file:
bootloader = "/usr/bin/pygrub"
vcpus = "4"
memory = "128"
name = "rhel-6.1"

disk = [ "phy:/dev/<dev1>,sda1,w", "phy:/dev/<dev2>,sda2,w" ]
vfb = [ "type=vnc,vncpasswd=" ]


where, /dev/<dev1> and /dev/<dev2> - block devices for the guest (DomU).


3. Create the guest with:
xm create <domu_config_file> -c

where, <domu_config_file> Xen guest configuration file (you have just created on step #2) full name

  
Actual results:

dracut: Starting plymouth daemon
xlblk_init: register_blkdev major: 202 
blkfront: xvde1: barriers disabled
blkfront: xvde2: barriers disabled
dracut Warning: No root device "block:/dev/xvda1" found
dracut Warning: Boot has failed. To debug this issue add "rdshell" to the kernel command line.
dracut Warning: Signal caught!
dracut Warning: Boot has failed. To debug this issue add "rdshell" to the kernel command line.
Kernel panic - not syncing: Attempted to kill init!
Pid: 1, comm: init Not tainted 2.6.32-131.2.1.el6.x86_64 #1
Call Trace:
 [<ffffffff814da16e>] ? panic+0x78/0x143
 [<ffffffff8106c452>] ? do_exit+0x852/0x860
 [<ffffffff81173fc5>] ? fput+0x25/0x30
 [<ffffffff8106c4b8>] ? do_group_exit+0x58/0xd0
 [<ffffffff8106c547>] ? sys_exit_group+0x17/0x20
 [<ffffffff8100b172>] ? system_call_fastpath+0x16/0x1b
Expected results:

Devices are mapped inside the PV guest (DomU) as xvda1 and xvda2

Additional info:

The bug seems to be similar to https://bugzilla.redhat.com/show_bug.cgi?id=691339

But the guest is running on PV mode (not HVM).

Comment 2 Andrew Jones 2011-06-06 16:09:15 UTC
Hi,

You should change your config from

disk = [ "phy:/dev/<dev1>,sda1,w", "phy:/dev/<dev2>,sda2,w" ]

to

disk = [ "phy:/dev/<dev1>,xvda1,w", "phy:/dev/<dev2>,xvda2,w" ]

The scsi major numbers are reserved for emulated devices, and, while there's conversion code that remaps them to xvd devices (as you've seen), they add an offset to avoid conflicts. PV guests should just always use xvd.