conditional breakpoints in driver makes system extremely slow

Are there any known issues with placing conditional breakpoints. I am using
Windbg 6.5.0003.7. A simple bp as follows:

bu module!function "j (poi(variable)==0n0) ‘’; ‘gc’ " seems to get the
system running considerably slow. Also note that it is not that this
function gets invoked every now and then.

thanks
bank

The breakpoint itself, conditional or not, might have such an effect if
the address of the breakpoint is read-only or paged out. This will
occur even if the breakpoint is not being hit. When you set the
breakpoint you can use !pte to see the status of the address. If it
isn’t normal, paged-in memory you can take a perf hit because the system
will need to defer making the code patch to a later time. If the page
stays paged-out the breakpoint will continue to be deferred and retried,
thus reducing system performance.

Another possible perf hit would be if the variable name is not
resolving, causing symbol access. Be sure to prefix the variable with a
module name (or $!variable for a local).

Try putting a similar breakpoint on known non-paged code as then you may
be able to isolate whether the problem is paging, symbol resolution or
something else.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of bank kus
Sent: Monday, September 26, 2005 10:56 PM
To: Kernel Debugging Interest List
Subject: [windbg] conditional breakpoints in driver makes system
extremely slow

Are there any known issues with placing conditional breakpoints. I am
using Windbg 6.5.0003.7. A simple bp as follows:

bu module!function "j (poi(variable)==0n0) ‘’; ‘gc’ " seems to get the
system running considerably slow. Also note that it is not that this
function gets invoked every now and then.

thanks
bank


You are currently subscribed to windbg as: xxxxx@winse.microsoft.com To
unsubscribe send a blank email to xxxxx@lists.osr.com