View topic - WAITPAGE?
WAITPAGE?
4 posts
• Page 1 of 1
WAITPAGE?
Has anyone ever seen processes/threads locked up in WAITPAGE mode? We saw this, this morning with both an application and the eide driver. It seemed to be a one time glitch as it didn't repeat. I think the WAITPAGE mode in this case means the program is waiting for the stack to be allocated, but I'm not sure.
- maschoen
- QNX Master
- Posts: 2728
- Joined: Wed Jun 25, 2003 5:18 pm
Re: WAITPAGE?
>>>means the program is waiting for the stack to be allocated
That is correct. Stacks are allocated with MAP_LAZY by the loader so if you allocate a huge variable on the stack, it will trigger page fault to allocate physical RAM - during which the state is WAITPAGE. This saves physical ram since most programs don't use all the virtual memory space allocated to the stack.
>>>it seemed to be a one time glitch as it didn't repeat.
You would have to restart the process for it to recur.
That is correct. Stacks are allocated with MAP_LAZY by the loader so if you allocate a huge variable on the stack, it will trigger page fault to allocate physical RAM - during which the state is WAITPAGE. This saves physical ram since most programs don't use all the virtual memory space allocated to the stack.
>>>it seemed to be a one time glitch as it didn't repeat.
You would have to restart the process for it to recur.
- denkelly
- Senior Member
- Posts: 163
- Joined: Sat Aug 02, 2008 3:27 pm
Re: WAITPAGE?
denkelly wrote:>>>means the program is waiting for the stack to be allocated
That is correct. Stacks are allocated with MAP_LAZY by the loader so if you allocate a huge variable on the stack, it will trigger page fault to allocate physical RAM - during which the state is WAITPAGE. This saves physical ram since most programs don't use all the virtual memory space allocated to the stack.
>>>it seemed to be a one time glitch as it didn't repeat.
You would have to restart the process for it to recur.
Thanks Dennis. I guess I wasn't clear about one thing. The processes (1 application, 2 eide driver) were stuck in this state. Repeating meant rebooting the system and looking for the same behavior, which did not occur.
I would think this indicated a serious error going on in the OS, which may have been caused by a one time memory glitch. You can't think of any normal reason why this would occur, can you?
- maschoen
- QNX Master
- Posts: 2728
- Joined: Wed Jun 25, 2003 5:18 pm
Re: WAITPAGE?
The SP1 Release Notes mention something about WAITPAGE, but it's not exactly your case. But I would recommend you applying the suggested workaround: Disable lazy page faulting by specifying the -mL option to procnto. I've never seen the advantage of lazy page faulting anyway - it only is useful when you are using up your memory.
- Thunderblade
- Senior Member
- Posts: 489
- Joined: Thu Apr 07, 2005 11:52 am
4 posts
• Page 1 of 1
Who is online
Users browsing this forum: No registered users and 2 guests