[pso] [tema2][windows] KeSetEvent IRQL_NOT_LESS_OR_EQUAL
Bercea Gabriel
gamitech at gmail.com
Thu Apr 23 01:00:23 EEST 2009
Buna Alexandra,
Ca sa poti da set event trebuie mai intai sa il initializezi din nonpaged
pool.
Poti face asta in 2 moduri
1) PKEVENT myEvent = Exallocatepool -> nonpagedpool sizeof(KEVENT);
KeInitializeEvent()
2) KeInitializeEvent(&myEvent) la un event declarat intr-o functie sau
global de tipul KEVENT.
Ruleaza-ti driverul cu verifierul pornit.
Cu respect,
Bercea Gabriel 342 C2
Mobile contact: (+40)0740049634
eMail: gamitech at gmail.com
From: pso-bounces at cursuri.cs.pub.ro [mailto:pso-bounces at cursuri.cs.pub.ro]
On Behalf Of alexandra gherghina
Sent: Wednesday, April 22, 2009 11:36 PM
To: Proiectarea Sistemelor de Operare
Subject: [pso] [tema2][windows] KeSetEvent IRQL_NOT_LESS_OR_EQUAL
Salut!
Am urmat schema:
- wait pe un cate event in rutina de write, respectiv read
- planificat cate un dpc in handlerul de intrerupere ce face KeSetEvent
Problema este ca la acel KeSetEvent imi da blue screen. Any ideas de la ce
vine?
Multumesc!
Alexandra
kd> !analyze -v
****************************************************************************
***
*
*
* Bugcheck Analysis
*
*
*
****************************************************************************
***
IRQL_NOT_LESS_OR_EQUAL (a)
An attempt was made to access a pageable (or completely invalid) address at
an
interrupt request level (IRQL) that is too high. This is usually
caused by drivers using improper addresses.
If a kernel debugger is available get the stack backtrace.
Arguments:
Arg1: fa037098, memory referenced
Arg2: 00000002, IRQL
Arg3: 00000000, bitfield :
bit 0 : value 0 = read operation, 1 = write operation
bit 3 : value 0 = not an execute operation, 1 = execute operation (only
on chips which support this level of status)
Arg4: 808269e6, address which referenced memory
Debugging Details:
------------------
READ_ADDRESS: fa037098
CURRENT_IRQL: 2
FAULTING_IP:
nt!KeSetEvent+e
808269e6 803e00 cmp byte ptr [esi],0
DEFAULT_BUCKET_ID: DRIVER_FAULT
BUGCHECK_STR: 0xA
PROCESS_NAME: Idle
TRAP_FRAME: 80894510 -- (.trap 0xffffffff80894510)
ErrCode = 00000000
eax=00000001 ebx=00000001 ecx=fa037098 edx=00000009 esi=fa037098
edi=ffdffa40
eip=808269e6 esp=80894584 ebp=80894590 iopl=0 nv up ei pl nz na po
nc
cs=0008 ss=0010 ds=0023 es=0023 fs=0030 gs=0000
efl=00010202
nt!KeSetEvent+0xe:
808269e6 803e00 cmp byte ptr [esi],0
ds:0023:fa037098=??
Resetting default scope
LAST_CONTROL_TRANSFER: from 808269e6 to 80886099
STACK_TEXT:
80894510 808269e6 badb0d00 00000009 00000000 nt!KiTrap0E+0x2a1
80894590 f9fa805b fa037098 00000000 00000000 nt!KeSetEvent+0xe
WARNING: Stack unwind information not available. Following frames may be
wrong.
808945b0 8082f582 816479cc fa036c6c 81647e38 uart16550+0x105b
80894600 808873c7 00000000 0000000e 00000000 nt!KiRetireDpcList+0xca
80894604 00000000 0000000e 00000000 00000000 nt!KiIdleLoop+0x2f
STACK_COMMAND: kb
FOLLOWUP_IP:
uart16550+105b
f9fa805b eb0d jmp uart16550+0x106a (f9fa806a)
SYMBOL_STACK_INDEX: 2
SYMBOL_NAME: uart16550+105b
FOLLOWUP_NAME: MachineOwner
MODULE_NAME: uart16550
IMAGE_NAME: uart16550.sys
DEBUG_FLR_IMAGE_TIMESTAMP: 49ef7a54
FAILURE_BUCKET_ID: 0xA_uart16550+105b
BUCKET_ID: 0xA_uart16550+105b
Followup: MachineOwner
---------
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/pso/attachments/20090423/1df8b681/attachment-0001.htm>
More information about the pso
mailing list