Isn’t the stack size limit on 2K 16 kilobytes?
I’ve put DbgPrints in a few drivers of mine, and I get 20+ KB as the
IoGetRemainingStackSize value.
–
Kind regards, Dejan M. www.alfasp.com
E-mail: xxxxx@alfasp.com ICQ#: 56570367
Alfa File Monitor - File monitoring library for Win32 developers.
Alfa File Protector - File protection and hiding library for Win32
developers.
Alfa Registry Monitor - Registry monitoring library for Win32
developers.
Alfa Registry Protector - Registry protection library for Win32
developers.
You are currently subscribed to ntfsd as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntfsd-$subst(‘Recip.MemberIDChar’)@lists.osr.com
Shockingly, no. The answer is it depends. Threads that invoke certain WIN32 interfaces have their stacks grown to 64K. You can see this in the kernel debugger when you’re dumping threads with “!process 0 7”–if I’m remembering the correct Windbg command. Some thread stacks are labelled as “large stacks,” and their upper and lower boundaries indicate they are 64K in size.
-----Original Message-----
From: Dejan Maksimovic [mailto:xxxxx@alfasp.com]
Sent: Monday, February 04, 2002 9:32 AM
To: File Systems Developers
Subject: [ntfsd] Stack size limit on 2K
Isn’t the stack size limit on 2K 16 kilobytes?
I’ve put DbgPrints in a few drivers of mine, and I get 20+ KB as the
IoGetRemainingStackSize value.
–
Kind regards, Dejan M. www.alfasp.com
E-mail: xxxxx@alfasp.com ICQ#: 56570367
Alfa File Monitor - File monitoring library for Win32 developers.
Alfa File Protector - File protection and hiding library for Win32
developers.
Alfa Registry Monitor - Registry monitoring library for Win32
developers.
Alfa Registry Protector - Registry protection library for Win32
developers.
You are currently subscribed to ntfsd as: xxxxx@inin.com
To unsubscribe send a blank email to leave-ntfsd-$subst(‘Recip.MemberIDChar’)@lists.osr.com
You are currently subscribed to ntfsd as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntfsd-$subst(‘Recip.MemberIDChar’)@lists.osr.com
Interesting! So, what is the stack limit before the stack grows? I.e. how do I determine it?
Regards, Dejan.
“Fuller, Rob” wrote:
Shockingly, no. The answer is it depends. Threads that invoke certain WIN32 interfaces have their stacks grown to 64K. You can see this in the kernel debugger when you’re dumping threads with “!process 0 7”–if I’m remembering the correct Windbg command. Some thread stacks are labelled as “large stacks,” and their upper and lower boundaries indicate they are 64K in size.
–
Kind regards, Dejan M. www.alfasp.com
E-mail: xxxxx@alfasp.com ICQ#: 56570367
Alfa File Monitor - File monitoring library for Win32 developers.
Alfa File Protector - File protection and hiding library for Win32 developers.
Alfa Registry Monitor - Registry monitoring library for Win32 developers.
Alfa Registry Protector - Registry protection library for Win32 developers.
You are currently subscribed to ntfsd as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntfsd-$subst(‘Recip.MemberIDChar’)@lists.osr.com
Check out IoGetStackLimits() in NTDDK.H.
-----Original Message-----
From: Dejan Maksimovic [mailto:xxxxx@alfasp.com]
Sent: Monday, February 04, 2002 12:02 PM
To: File Systems Developers
Subject: [ntfsd] RE: Stack size limit on 2K
Interesting! So, what is the stack limit before the stack grows? I.e. how do I determine it?
Regards, Dejan.
“Fuller, Rob” wrote:
Shockingly, no. The answer is it depends. Threads that invoke certain WIN32 interfaces have their stacks grown to 64K. You can see this in the kernel debugger when you’re dumping threads with “!process 0 7”–if I’m remembering the correct Windbg command. Some thread stacks are labelled as “large stacks,” and their upper and lower boundaries indicate they are 64K in size.
–
Kind regards, Dejan M. www.alfasp.com
E-mail: xxxxx@alfasp.com ICQ#: 56570367
Alfa File Monitor - File monitoring library for Win32 developers.
Alfa File Protector - File protection and hiding library for Win32 developers.
Alfa Registry Monitor - Registry monitoring library for Win32 developers.
Alfa Registry Protector - Registry protection library for Win32 developers.
You are currently subscribed to ntfsd as: xxxxx@inin.com
To unsubscribe send a blank email to leave-ntfsd-$subst(‘Recip.MemberIDChar’)@lists.osr.com
You are currently subscribed to ntfsd as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntfsd-$subst(‘Recip.MemberIDChar’)@lists.osr.com
Won’t this give values over 0x80000000 (i.e. the actual pointer to the stack limits?)?
If not, what do the two values in “returns” mean?
“Fuller, Rob” wrote:
Check out IoGetStackLimits() in NTDDK.H.
–
Kind regards, Dejan M. www.alfasp.com
E-mail: xxxxx@alfasp.com ICQ#: 56570367
Alfa File Monitor - File monitoring library for Win32 developers.
Alfa File Protector - File protection and hiding library for Win32 developers.
Alfa Registry Monitor - Registry monitoring library for Win32 developers.
Alfa Registry Protector - Registry protection library for Win32 developers.
You are currently subscribed to ntfsd as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntfsd-$subst(‘Recip.MemberIDChar’)@lists.osr.com
This function doesn’t appear to return what I thought it did. From NTDDK.H:
__inline
ULONG_PTR
IoGetRemainingStackSize (
VOID
)
{
ULONG_PTR Top;
ULONG_PTR Bottom;
IoGetStackLimits( &Bottom, &Top );
return((ULONG_PTR)(&Top) - Bottom );
}
Perhaps you can use IoGetInitialStack() in conjunction with IoGetStackLimits() to determine the size of the stack allocated for use by the thread.
-----Original Message-----
From: Dejan Maksimovic [mailto:xxxxx@alfasp.com]
Sent: Monday, February 04, 2002 12:55 PM
To: File Systems Developers
Subject: [ntfsd] RE: Stack size limit on 2K
Won’t this give values over 0x80000000 (i.e. the actual pointer to the stack limits?)?
If not, what do the two values in “returns” mean?
“Fuller, Rob” wrote:
Check out IoGetStackLimits() in NTDDK.H.
–
Kind regards, Dejan M. www.alfasp.com
E-mail: xxxxx@alfasp.com ICQ#: 56570367
Alfa File Monitor - File monitoring library for Win32 developers.
Alfa File Protector - File protection and hiding library for Win32 developers.
Alfa Registry Monitor - Registry monitoring library for Win32 developers.
Alfa Registry Protector - Registry protection library for Win32 developers.
You are currently subscribed to ntfsd as: xxxxx@inin.com
To unsubscribe send a blank email to leave-ntfsd-$subst(‘Recip.MemberIDChar’)@lists.osr.com
You are currently subscribed to ntfsd as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntfsd-$subst(‘Recip.MemberIDChar’)@lists.osr.com
Aha! I think that’s it!
“Fuller, Rob” wrote:
Perhaps you can use IoGetInitialStack() in conjunction with IoGetStackLimits() to determine the size of the stack allocated for use by the thread.
–
Kind regards, Dejan M. www.alfasp.com
E-mail: xxxxx@alfasp.com ICQ#: 56570367
Alfa File Monitor - File monitoring library for Win32 developers.
Alfa File Protector - File protection and hiding library for Win32 developers.
Alfa Registry Monitor - Registry monitoring library for Win32 developers.
Alfa Registry Protector - Registry protection library for Win32 developers.
You are currently subscribed to ntfsd as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntfsd-$subst(‘Recip.MemberIDChar’)@lists.osr.com