Re: [KMDF] Removing FDO and let PDO running
- From: "Doron Holan [MS]" <doronh@xxxxxxxxxxxxxxxxxxxx>
- Date: Sun, 3 Sep 2006 22:14:37 -0700
i am betting acpi is setting flag for you. you could clear the flag by
using the following code in your add device routine
WDF_DEVICE_STATE state
WDF_DEVICE_STATE_INIT(&state);
state.NotDisableable =WdfFalse;
WdfDeviceSetDeviceState(device, &state);
Isn't that reference the one for my running FDO ?? If it was zero, theIf this reference is there after the stack has been removed, this is a
stack would unload without disabling right ?
leaked reference. typically for a driver before a remove has been
processed, will have at least 2 references per created devobj
d
--
Please do not send e-mail directly to this alias. this alias is for
newsgroup purposes only.
This posting is provided "AS IS" with no warranties, and confers no rights.
"Your Name" <user@xxxxxxxxxxx> wrote in message
news:44fb8783$0$7018$626a54ce@xxxxxxxxxxxxxxx
that or somebody in the stack other then acpi is reporting
PNP_DEVICE_NOT_DISABLEABLE
You're right, here's what my stack looks like with !devnode (also, the
stack contains 2 devices.)
# The system timer PDO :
DevNode 0x86add9f0 for PDO 0000000000
(...)
Flags (0000000000)
CapabilityFlags (0xe9766544) LockSupported, UniqueID,
RawDeviceOK, WakeFromD0,
WakeFromD3, HardwareDisabled,
NoDisplayInUI
Unknown flags 0xe9740000
# My FDO :
DevNode 0x86adb1c8 for PDO 0x86add9f0
(...)
Flags (0x000000f0) DNF_ENUMERATED, DNF_IDS_QUERIED,
DNF_HAS_BOOT_CONFIG, DNF_BOOT_CONFIG_RESERVED
UserFlags (0x00000008) ***DNUF_NOT_DISABLEABLE***
CapabilityFlags (0x00000080) SilentInstall
DisableableDepends = 1 (including self)
So it appears I unintentionally set a PNP_DEVICE_NOT_DISABLEABLE user flag
somehow. I am not touching any flag of capability directly in my code. How
can I unset this flag safely ?
if you have one reference and no handles, you leaked a reference
somewhere with ObReferenceObject.
Isn't that reference the one for my running FDO ?? If it was zero, the
stack would unload without disabling right ?
.
- References:
- Re: [KMDF] Removing FDO and let PDO running
- From: Your Name
- Re: [KMDF] Removing FDO and let PDO running
- From: Doron Holan [MS]
- Re: [KMDF] Removing FDO and let PDO running
- From: Your Name
- Re: [KMDF] Removing FDO and let PDO running
- Prev by Date: Re: Extra reference?
- Next by Date: Re: InterlockedExchangePointer() while lock held?
- Previous by thread: Re: [KMDF] Removing FDO and let PDO running
- Next by thread: Re: BDA Device - How to expose multiple instances of a filter
- Index(es):
Relevant Pages
|