question on ldm dump

when I do a ldmdump on a dynamic disk I see a entry called guid which I feel is unique to the volume.
How can I get that GUID from the filter driver.
My driver sits above ftdisk.
Basically I want some unique entity to identify the volume otehr disk extent details which I have already

At 14:05 12/03/2009, xxxxx@yahoo.co.in wrote:

when I do a ldmdump on a dynamic disk I see a entry called guid
which I feel is unique to the volume.
How can I get that GUID from the filter driver.
My driver sits above ftdisk.
Basically I want some unique entity to identify the volume otehr
disk extent details which I have already

You have some confusion going on here.

If your filter driver only sits above FtDisk then it CAN’T see
dynamic volumes, these are managed by DMIO. Are you a volume or a disk filter.

You seem to be fixated that there must be an ioctl you can use or
intercept to work out dynamic disk information. This is not the
case, the information is resident on the disk in certain sectors and
in a database maintained by DMIO. DMIO recognises a dynamic
partition from the partition type and then proceeds to read the
relevant information from the disk in order to build up the picture
of how a dynamic disk is allocated.

As for LdmDump, this is a user mode program. All it does is read and
interpret the on-disk structures and to do this all it needs to issue
is sector read requests, no fancy, weird or undocumented ioctls.

It has to be said that the on disk information created and used by
DMIO is undocumented. However, if you search there are enough
references out there regarding reverse engineered information about
the on disk information.

I strongly advise not doing anything to try to manipulate dynamic
disks with kernel code. If you do and you screw up (which you will),
you won’t get support from Microsoft and neither will your customers
when they you’ve lost data on their 8 disk RAID 5 setup.

The only safe way to manage or manipulate dynamic disks/volumes is to
use VDS in user mode. This drives DMIO to do the right thing and to
all intents and purposes, DMIO is a black box of magic.

Mark.

I am sorry I have confused.
I sit above dmio only.
My volume filter driver was supporting basic disk now I wanted to support dynamicdisk.
I got the details of the volume using ioctl_disk_get_disk_extents ioctl.
what I thought was if I get the guid which is seen in ldmdump at my filter driver I can make use of it.

whenever I create a dynamic volume I get an entry created in my enum key of my filter driver
STORAGE\Volume\1&3735c57b&0&LDM#{71704b1f-38ed-4d4e-9954-3095d8017fed}

Basically I want to get the above guid.

I guess from ur above explanation it is not possible.
Am I correct??

At 14:34 12/03/2009, xxxxx@yahoo.co.in wrote:

I am sorry I have confused.
I sit above dmio only.
My volume filter driver was supporting basic disk now I wanted to
support dynamicdisk.
I got the details of the volume using ioctl_disk_get_disk_extents ioctl.
what I thought was if I get the guid which is seen in ldmdump at my
filter driver I can make use of it.

whenever I create a dynamic volume I get an entry created in my enum
key of my filter driver
STORAGE\Volume\1&3735c57b&0&LDM#{71704b1f-38ed-4d4e-9954-3095d8017fed}

Basically I want to get the above guid.

I guess from ur above explanation it is not possible.
Am I correct??

If you know where to read it from and how to process the DMIO
database on the disk, then you can find this guid. See previous email
on searching (i.e. Google) for reverse engineering on DMIO and
dynamic disk structures.

Mark

This guid is created and owned by dmio. Why do you need this ?..you
shouldn’t .

Do you need to uniquely identify each volume in the system ?.
If yes, read up on mount manager related IOCTLs. Documentation for that
stuff is very good.

Harish

-----Original Message-----
From: Mark S. Edwards [mailto:xxxxx@muttsnuts.com]
Sent: Thursday, March 12, 2009 7:45 AM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] question on ldm dump

At 14:34 12/03/2009, xxxxx@yahoo.co.in wrote:

I am sorry I have confused.
I sit above dmio only.
My volume filter driver was supporting basic disk now I wanted to
support dynamicdisk.
I got the details of the volume using ioctl_disk_get_disk_extents
ioctl.
what I thought was if I get the guid which is seen in ldmdump at my
filter driver I can make use of it.

whenever I create a dynamic volume I get an entry created in my enum
key of my filter driver
STORAGE\Volume\1&3735c57b&0&LDM#{71704b1f-38ed-4d4e-9954-3095d8017fed}

Basically I want to get the above guid.

I guess from ur above explanation it is not possible.
Am I correct??

If you know where to read it from and how to process the DMIO
database on the disk, then you can find this guid. See previous email
on searching (i.e. Google) for reverse engineering on DMIO and
dynamic disk structures.

Mark


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer