On 12/14/09 08:54, Adam Hamsik wrote:
Hi, [snip] 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 ?
At first sight, I thought that DIOCGDISKINFO was able to return partition information too (you have the "disk geometry dictionary", as well as a "disk partition dictionary" in sys/sys/disk.h). Then query the "block-count" tag, for example.
Unfortunately, it seems that the "disk partition" dict is not implemented; there is no reference to it anywhere in src/, and adding it would need some work in all drivers (rf, dk, wd and lvm come to mind, but there are others too). Given that it is only to get partition volume size in xbdbackend, IMHO it is not worth the hassle.
Can I commit my patch as temporal solution for your work ?
Please do. Although "temporal" might not be the case anymore ;) -- Jean-Yves Migeon jeanyves.migeon%free.fr@localhost