Port-xen archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Getting Xen to go along with LVM



Hi,

Sorry for late reply.

On Nov,Thursday 12 2009, at 10:48 AM, Jean-Yves Migeon wrote:

> 
> On Thu, 12 Nov 2009 01:03:24 +0100, Adam Hamsik <haaaad%gmail.com@localhost> 
> wrote:
>> Hi,
>> 
>> What about this patch ? It calls CGWEDGEINFO for all disks and try  
>> CGDPARTINFO only if first ioctl returns ENOTTY.
> 
> I have the same patch locally, but I don't think its the right way(c) to do
> it. IMHO, we should implement DIOCGDISKINFO ioctl(), and get rid of
> WEDGEINFO and PARTINFO entirely here.

From code I understand that main reason why it was used here was to get size of 
device. Main problem here is that these days is not enough to do this if 
(strcmp(devname, "dk") == 0) because we can have more wedge like devices e.g. 
LV's or ZFS zvols not only dk's. But all of them should implement at least two 
disk ioctl calls. 


1) DIOCGWEDGEINFO to get partition size 
2) DIOCGDISKINFO to get information about virtual disk. LV's and zvols are 
creating faked disk description dictionary here.


> 
> I am currently looking for the correct way of getting prop_dictionary
> entries ("sectors-per-unit" out of "geometry" proplist) out of the struct
> plistref, or simply find another solution around VOP_IOCTL().

I think that DIOCGDISKINFO doesn't tell us anything because it doesn't have 
wanted information about partition size. Therefore we should't use it. Why do 
you want to use DIOCGDISKINFO ? 

Can I commit my patch as temporal solution for your work ?

Regards

Adam.



Home | Main Index | Thread Index | Old Index