Bug 216556

Summary: Virtual disk size wraps around at 2 TB mark
Product: Red Hat Enterprise Linux 5 Reporter: Daniel Berrangé <berrange>
Component: kernel-xenAssignee: Rik van Riel <riel>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: 5.0CC: xen-maint
Target Milestone: ---   
Target Release: ---   
Hardware: i686   
OS: Linux   
Whiteboard:
Fixed In Version: 5.0.0 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-01-26 20:45:38 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:
Bug Depends On: 216555    
Bug Blocks: 217580    
Attachments:
Description Flags
Script to create huge block devices with device mapper trickery
none
Patch to fix large blktap disks
none
Patch to fix blkback driver handling of > 2tb disk none

Description Daniel Berrangé 2006-11-21 01:34:58 UTC
+++ This bug was initially created as a clone of Bug #216555 +++

Description of problem:
If I create a virtual disk (either a file, or block device backed) in the dom0
host with a size of 5 TB, and export this to a guest DomU, the domu will only
see it as being 1 TB in size. It looks as if the Xen virtual disk driver is
wrapping around at the 2 TB mark.

Version-Release number of selected component (if applicable):
xen-3.0.3-0.1.rc3
kernel-xen-2.6.18-1.2849.fc6

How reproducible:
Always (on 32-bit)

Steps to Reproduce:
1. Create an block device 7 TB in size
2. Export this to the DomU in the guest config file
3. Look at /proc/partitions inside the guest kernel
4. Look at /proc/partitions in the dom0 host kernel
  
Actual results:
The #blocks column for the disk is different in DomU & Dom0

Expected results:
The #blocks seen in DomU matches #blocks seen in Dom0

Additional info:
The same problem occurs for file backed virtual disks on 32-bit host/guest.

There is no problem on 64-bit kernels - I have exported disks as large as 15 PB
 to the guest.

This is all testing with paravirt guests. Not verified if fully virt guests have
any issues yet.


Post from Ian upstream suggests 32-bit wraparound in blkfront driver

http://lists.xensource.com/archives/html/xen-devel/2006-11/msg01023.html

Comment 1 Daniel Berrangé 2006-11-21 01:39:34 UTC
Created attachment 141715 [details]
Script to create huge block devices with device mapper trickery

The attached script is useful for reproducing the problems.

First create a data file to store the actual data, say 10 GB in size

  * dd if=/dev/null of=/xen/scratch.img bs=1 count=0 seek=10GB

Setup as loop device

  * losetup /dev/loop0 /xen/scratch.img

Now, create  a huge (5 TB) device backed by this small file

  * sparse_create xenhuge  /dev/loop0 $(echo 2000*1000*1000*5 | bc)

Then, add

    'phy:/dev/mapper/xenhuge,xvdb,w' 

to the disk section of an existing guest.

Finally boot the guest & compare /proc/partitions for this device in the Dom0 &
DomU.

Comment 2 RHEL Program Management 2006-11-21 02:00:58 UTC
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux major release.  Product Management has requested further
review of this request by Red Hat Engineering, for potential inclusion in a Red
Hat Enterprise Linux Major release.  This request is not yet committed for
inclusion.

Comment 3 Daniel Berrangé 2006-11-21 12:40:36 UTC
Patch added in xen-unstable

http://xenbits.xensource.com/xen-unstable.hg?cs=0c0ef61de06b

Comment 4 Daniel Berrangé 2006-11-21 22:45:06 UTC
I have tested the patch listed in comment #3 and confirmed it fixes operation of
file: and phy: backed disks > 2 TB in size. It does not, however, fix tap:aio:
backed disks.


Comment 5 Daniel Berrangé 2006-11-21 22:46:25 UTC
Created attachment 141846 [details]
Patch to fix large blktap disks

This additional patch fixes blktap based disks which are > 2TB

Comment 6 Brian Stein 2006-12-01 03:16:22 UTC
Please post for ACKs

Comment 7 Jay Turner 2006-12-01 12:58:43 UTC
QE ack for RHEL5.

Comment 8 Daniel Berrangé 2006-12-01 15:02:52 UTC
Created attachment 142572 [details]
Patch to fix  blkback driver handling of > 2tb disk

Comment 9 Daniel Berrangé 2006-12-01 15:04:50 UTC
The equivalent userspace blktap patches are tracked in a separate bug 217580

Comment 10 Don Zickus 2006-12-05 19:52:51 UTC
in 2.6.18-1.2817.el5

Comment 11 Jay Turner 2007-01-26 20:45:38 UTC
2.6.18-7.el5 included in 20070125.0.