From: SMTP%"craft@alacritech.com" 8-NOV-1997 15:48:49.53 To: ntdev@atria.com CC: Subj: [ntdev] Bug in KeInsertQueueDpc? Return-Path: owner-ntdev@atria.com Received: by arisia.gce.com (UCX V4.1-12C, OpenVMS V7.1 VAX); Sat, 8 Nov 1997 15:45:41 -0500 Received: from gw.atria.com (gw.atria.com [192.88.237.2]) by mercury.mv.net (8.8.8/mem-971025) with SMTP id VAA29619 for ; Fri, 7 Nov 1997 21:33:37 -0500 (EST) Received: by gw.atria.com id Fri, 7 Nov 1997 17:17:53 -0500 Received: from Server1.alacritech.com by gw.atria.com id Fri, 7 Nov 1997 17:17:50 -0500 Received: from boxer (10.1.1.72) by Server1.alacritech.com (WorldMail 1.3.122) for ntdev@atria.com; 7 Nov 1997 14:18:08 -0800 Message-ID: <34639547.A7A@alacritech.com> Date: Fri, 07 Nov 1997 14:25:11 -0800 From: Peter Craft Reply-To: craft@alacritech.com X-Mailer: Mozilla 3.01 (WinNT; I) MIME-Version: 1.0 To: ntdev@atria.com Subject: [ntdev] Bug in KeInsertQueueDpc? Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-ntdev@atria.com Precedence: bulk I've had numerous system crashes which I have discovered are the result of a corrupted DPC list. The system crashes in KiRetireDpcList. It only occurs on my SMP system. I first figured that I must be calling KeInsertQueueDpc in my drivers with KIRQL < DISPATCH_LEVEL, but after littering every call to KeInsertQueueDpc with assertions, I have verified that my irql is always 2 when calling KeInsertQueueDpc. Then, I put spinlocks around each of my calls to KeInsertQueueDpc and that solved my problem. Since this is a very commonly used call, I find it difficult to believe that there could be an SMP bug in the KeInsertQueueDpc routine, yet I can't figure out what else it could be given the evidence. I *am* using custom DPC routines very extensively in my driver, and it is running under a very very high load, so I wouldn't be suprised if my driver is calling KeInsertQueueDpc more frequently than most. Can anyone suggest an alternative cause for my DPC queue corruption? If anyone on the list has Microsoft NT 4.0 source and has a spare minute ( ;-) ) could you take a quick look at the KeInsertQueueDpc routine and see if it there are any SMP holes in it? Pete - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [ To unsubscribe, send email to ntdev-request@atria.com with body UNSUBSCRIBE (the subject is ignored). ]