WinDbg BOD Basic problem

Hi,everyone
When I debugging my system, I have a BOD.
The Kernel Crash dump file displays:

The analysis of the core dump, using Windbg is as follows:

*******************************************************************************
* *
* 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: 81ee5030, Newly reported PDO.
Arg3: 82315e30, PDO of which it is a duplicate.
Arg4: 00000000

Debugging Details:

BUGCHECK_STR: 0xCA_1

DEVICE_OBJECT: 81ee5030

DRIVER_OBJECT: 8237f350

IMAGE_NAME: ftdisk.sys

DEBUG_FLR_IMAGE_TIMESTAMP: 3b7d8419

MODULE_NAME: ftdisk

FAULTING_MODULE: f84c3000 ftdisk

CUSTOMER_CRASH_COUNT: 3

DEFAULT_BUCKET_ID: DRIVER_FAULT

PROCESS_NAME: System

LOCK_ADDRESS: 80558660 -- (!locks 80558660)

Resource @ nt!PiEngineLock (0x80558660) Available

WARNING: SystemResourcesList->Flink chain invalid. Resource may be corrupted, or
already deleted.

WARNING: SystemResourcesList->Blink chain invalid. Resource may be corrupted, or
already deleted.

1 total locks

PNP_TRIAGE:
Lock address : 0x80558660
Thread Count : 0
Thread address: 0x00000000
Thread wait : 0x0

LAST_CONTROL_TRANSFER: from 805eb3ff to 8053354e

STACK_TEXT:
f89919c8 805eb3ff 000000ca 00000001 81ee5030 nt!KeBugCheckEx+0x1b
f8991ac4 805b52c0 82131be0 81effa70 823cd8f0 nt!PipProcessNewDeviceNode+0x5d1
f8991d18 805a8fbe 823cd8f0 00000001 00000000 nt!PipProcessDevNodeTree+0x16b
f8991d4c 80509396 00000003 80558740 8056167c nt!PiProcessReenumeration+0x60
f8991d74 804e426b 00000000 00000000 823c8640 nt!PipDeviceActionWorker+0x166
f8991dac 8057d0f1 00000000 00000000 00000000 nt!ExpWorkerThread+0x100
f8991ddc 804f827a 804e4196 00000001 00000000 nt!PspSystemThreadStartup+0x34
00000000 00000000 00000000 00000000 00000000 nt!KiThreadStartup+0x16

STACK_COMMAND: kb

FOLLOWUP_NAME: MachineOwner

FAILURE_BUCKET_ID: 0xCA_1_IMAGE_ftdisk.sys_DATE_2001_08_18

BUCKET_ID: 0xCA_1_IMAGE_ftdisk.sys_DATE_2001_08_18

Followup: MachineOwner

The analysis from seems that the source of the BOD is ftdisk, but the call stack seems that all the function calling was occured in ntoskrnl.exe.

So, my problem is that,what the source of BOD? ftDisk of ntoskrnl?

Thanks in advanced!