Всем привет. Копирую с системы диск в образ (например physicaldrive0), после чего через PnpManager монтирую образ в ту же систему. Получаю указанный bugcheck при добавление копии volume, оригинал которого уже есть в системе. Есть какие то идеи? *** Fatal System Error: 0x000000ca (0x00000001,0x811F4708,0x811A3100,0x00000000) Break instruction exception - code 80000003 (first chance) A fatal system error has occurred. Debugger entered on first try; Bugcheck callbacks have not been invoked. A fatal system error has occurred. Connected to Windows XP 2600 x86 compatible target, ptr64 FALSE Loading Kernel Symbols ............................................................................................................. Loading User Symbols Loading unloaded module list .................... ******************************************************************************* * * * Bugcheck Analysis * * * ******************************************************************************* Use !analyze -v to get detailed debugging information. BugCheck CA, {1, 811f4708, 811a3100, 0} 60 Probably caused by : ftdisk.sys Followup: MachineOwner --------- nt!RtlpBreakWithStatusInstruction: 0008:804e3b25 cc int 3 kd> !analyze -v ******************************************************************************* * * * Bugcheck Analysis * * * ******************************************************************************* PNP_DETECTED_FATAL_ERROR (ca) PnP encountered a severe error, either as a result of a problem in a driver or a problem in PnP itself. The first argument describes the nature of the problem, the second argument is the address of the PDO. The other arguments vary depending on argument 1. Arguments: Arg1: 00000001, Duplicate PDO A specific instance of a driver has enumerated multiple PDOs with identical device id and unique ids. Arg2: 811f4708, Newly reported PDO. Arg3: 811a3100, PDO of which it is a duplicate. Arg4: 00000000 Debugging Details: ------------------ OVERLAPPED_MODULE: Address regions for 'p2eemnt' and 'kmixer.sys' overlap BUGCHECK_STR: 0xCA_1 DEVICE_OBJECT: 811f4708 DRIVER_OBJECT: 81257998 IMAGE_NAME: ftdisk.sys DEBUG_FLR_IMAGE_TIMESTAMP: 3b7d8419 MODULE_NAME: ftdisk FAULTING_MODULE: baf81000 ftdisk DEFAULT_BUCKET_ID: INTEL_CPU_MICROCODE_ZERO PROCESS_NAME: System LOCK_ADDRESS: 80558be0 -- (!locks 80558be0) Resource @ nt!IopDeviceTreeLock (0x80558be0) Shared 1 owning threads Threads: 8128c640-01<*> 1 total locks, 1 locks currently held PNP_TRIAGE: Lock address : 0x80558be0 Thread Count : 1 Thread address: 0x8128c640 Thread wait : 0x1341ec LAST_CONTROL_TRANSFER: from 805328e7 to 804e3b25 STACK_TEXT: fc90a57c 805328e7 00000003 fc90a8d8 00000000 nt!RtlpBreakWithStatusInstruction fc90a5c8 805333be 00000003 811a3100 00000118 nt!KiBugCheckDebugBreak+0x19 fc90a9a8 805339ae 000000ca 00000001 811f4708 nt!KeBugCheck2+0x574 fc90a9c8 805ebaa7 000000ca 00000001 811f4708 nt!KeBugCheckEx+0x1b fc90aac4 805b7d58 811a5220 ffbc7818 811729c8 nt!PipProcessNewDeviceNode+0x5d1 fc90ad18 805aba64 811729c8 00000001 00000000 nt!PipProcessDevNodeTree+0x16b fc90ad4c 8050cff5 00000003 80558c40 80561b7c nt!PiProcessReenumeration+0x60 fc90ad74 804e47fe 00000000 00000000 8128c640 nt!PipDeviceActionWorker+0x166 fc90adac 8057dfed 00000000 00000000 00000000 nt!ExpWorkerThread+0x100 fc90addc 804fa477 804e4729 00000001 00000000 nt!PspSystemThreadStartup+0x34 00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16 STACK_COMMAND: kb FOLLOWUP_NAME: MachineOwner FAILURE_BUCKET_ID: 0xCA_1_VRF_IMAGE_ftdisk.sys_DATE_2001_08_17 BUCKET_ID: 0xCA_1_VRF_IMAGE_ftdisk.sys_DATE_2001_08_17 Followup: MachineOwner ---------
Как показало следствие - nt!PipProcessNewDeviceNode для раздела вызывает nt!PpQueryID, которое возвращает следующую строку - kd> du e14bac68 e14bac68 "Signature897F2070Offset7E00Lengt" e14baca8 "h2F08E00" (где Offset и Length смещение и размер раздела, а Signature(897F2070) - некое мистическое число, которое я нашел в образе, в структуре MBR, строго над талицей разделов (смещение - 0x1b8). Вопрос, что это такое?) Именно эту строку ниже сравнивают, и если она совпадает с каким то существующим разделом - вызывают KebugCheckEx(PNP_DETECTED_FATAL_ERROR, PNP_ERR_DUPLICATE_PDO). Я заменил Signature(897F2070) на Signature(997F2070) - образ примантился. (Во всяком случае, в DiskManagement он отображается, и Far его видит). Explorer не видет, наверное и за совпадения серийников волумов. Вот. Насчет Signature - что это все таки такое, гугл молчит, говорит что перед таблицей разделов никакого поля нет?