Closed
Bug 11222
Opened 26 years ago
Closed 26 years ago
Assertion: "wrap around" and apprunner lockup
Categories
(Core :: Networking, defect, P3)
Core
Networking
Tracking
()
VERIFIED
FIXED
M9
People
(Reporter: tor, Assigned: rpotts)
References
()
Details
(Whiteboard: 8/26 asked reporter to verify)
Attempting to visit http://www.projo.com/ (either from the commandline
or interactively) causes apprunner to print the following message and
then lockup.
Assertion: "wrap around" (i_Length - actualBytesRead <= i_Length) at file
/cs/src/mozilla/mozilla/netwerk/protocol/http/src/nsHTTPResponseListener.cpp,
line 141
apprunner then locks up, seemingly stuck in nsBuffer::GetReadSegment():
current thread: t@1
[1] CreateMonitor(0x63efe8, 0x1, 0x0, 0x0, 0x0, 0x0), at 0xfe9238e0
[2] PR_CEnterMonitor(0x63efe8, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfe923b18
=>[3] nsAutoCMonitor::nsAutoCMonitor(this = 0xffbeeb28, lockObject = 0x63efe8),
line 194 in "nsAutoLock.h"
[4] nsBuffer::GetReadSegment(this = 0x63efe8, segmentLogicalOffset = 0,
resultSegment = 0xffbeebd4, resultSegmentLen = 0xffbeebd0), line 244 in
"nsBuffer.cpp"
[5] nsBuffer::Search(this = 0x63efe8, string = 0xfc708807 "\n", ignoreCase =
0, found = 0xffbeeca0, offsetSearchedTo = 0xffbeec9c), line 388 in
"nsBuffer.cpp"
[6] nsHTTPResponseListener::ParseHTTPHeader(this = 0x63ee68, aBuffer =
0x63efe8, aLength = 4294966884U, aBytesRead = 0xffbeed64), line 534 in
"nsHTTPResponseListener.cpp"
[7] nsHTTPResponseListener::OnDataAvailable(this = 0x63ee68, channel =
0x63ef08, context = 0x63ea50, i_pStream = 0x52d3f0, i_SourceOffset = 0, i_Length
= 4294966884U), line 140 in "nsHTTPResponseListener.cpp"
[8] nsOnDataAvailableEvent::HandleEvent(this = 0x63e928), line 348 in
"nsAsyncStreamListener.cpp"
[9] nsStreamListenerEvent::HandlePLEvent(aEvent = 0x63e928), line 149 in
"nsAsyncStreamListener.cpp"
[10] PL_HandleEvent(0x63e928, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfeba3d98
[11] PL_ProcessPendingEvents(0xb2100, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfeba3b5c
[12] nsEventQueueImpl::ProcessPendingEvents(this = 0x9c958), line 118 in
"nsEventQueue.cpp"
[13] event_processor_callback(data = 0x9c958, source = 6, condition =
GDK_INPUT_READ), line 149 in "nsAppShell.cpp"
[14] gdk_io_invoke(0x140f28, 0x1, 0xa4660, 0x1, 0xfe611930, 0xffbef0b0), at
0xfe63fb20
[15] g_main_dispatch(0xffbef120, 0xfe613d70, 0x0, 0xfe613cb0, 0xfe611930,
0x3), at 0xfe5ea7b4
[16] g_main_iterate(0xffffffff, 0x1, 0xfe5eba4c, 0xfe613d78, 0xfe613ce0,
0xfe613d6c), at 0xfe5eaee4
[17] g_main_run(0xa3748, 0xa3748, 0xfe611930, 0xfe613d70, 0xaab00,
0xfe63faa4), at 0xfe5eb0d8
[18] gtk_main(0xfe6740a8, 0xfe87d5e0, 0xfe865b1c, 0xa3748, 0x0, 0xfe67105c),
at 0xfe77baa8
[19] nsAppShell::Run(this = 0x90f98), line 371 in "nsAppShell.cpp"
[20] nsAppShellService::Run(this = 0xc2490), line 467 in
"nsAppShellService.cpp"
[21] main1(argc = 2, argv = 0xffbef634), line 744 in "nsAppRunner.cpp"
[22] main(argc = 2, argv = 0xffbef634), line 811 in "nsAppRunner.cpp"
Updated•26 years ago
|
Target Milestone: M9
Comment 1•26 years ago
|
||
I've seen this too -- and I inserted the assertion so that we can catch it.
Updated•26 years ago
|
Severity: normal → critical
Comment 2•26 years ago
|
||
This hangs Linux, crashes Mac, and loads OK in Windows. Here's the Mac stack
trace, for what it's worth.
Call Stack: (Signature = .__ptr_glue 376b2233)
.__ptr_glue
http.shlb + 0x8300 (0x0ace7f40)
Network.shlb + 0xc08 (0x0b7a5b78)
Network.shlb + 0x1f8 (0x0b7a5168)
PL_HandleEvent()
PL_ProcessPendingEvents()
nsEventQueueImpl::ProcessPendingEvents()
[nsEventQueue.cpp, line 117]
EventDispatchingFunc()
[nsEventQueueService.cpp, line 352]
_hashEnumerate()
[nsHashtable.cpp, line 81]
PL_HashTableEnumerateEntries()
nsHashtable::Enumerate()
[nsHashtable.cpp, line 210]
nsEventQueueServiceImpl::ProcessEvents()
[nsEventQueueService.cpp, line 363]
nsToolkit::RepeatAction()
[nsToolkit.cpp, line 144]
NETLIB_DLL + 0x1bb4 (0x0b9b8564)
nsMacMessagePump::DispatchEvent()
[nsMacMessagePump.cpp, line 329]
nsMacMessagePump::DoMessagePump()
[nsMacMessagePump.cpp, line 230]
nsAppShell::Run()
[nsAppShell.cpp, line 90]
nsAppShellService::Run()
[nsAppShellService.cpp, line 464]
main1()
[nsAppRunner.cpp, line 744]
main()
[nsAppRunner.cpp, line 811]
.__start
Updated•26 years ago
|
OS: Solaris → All
Hardware: Sun → All
Comment 3•26 years ago
|
||
I got something similar on Windows. I lookad at
nsHTTPResponseListener::ParseHTTPHeader(...) which seems to cause the problem in
my case and it failed to look at the buffer length (aLength) when reading into
the buffer which causes this abnormalty. I think
nsHTTPResponseListener::ParseStatusLine(...) has the same problem.
I'm cc-ing rpotts since he was the one writing it so he can propably tell me if
I'm wrong.
Quite uninteresting stack trace:
NTDLL! 77f7629c()
nsDebug::Assertion(const char * 0x0a462ee4, const char * 0x0a462ebc, const char
* 0x0a462e74, int 141) line 176 + 13 bytes
nsHTTPResponseListener::OnDataAvailable(nsHTTPResponseListener * const
0x0af120a0, nsIChannel * 0x0bfae2e0, nsISupports * 0x0bfaf1f0, nsIInputStream *
0x0af12200, unsigned int 257367, unsigned int 26) line 141 + 37 bytes
nsOnDataAvailableEvent::HandleEvent(nsOnDataAvailableEvent * const 0x0c520ee0)
line 350
nsStreamListenerEvent::HandlePLEvent(PLEvent * 0x0c520ee4) line 149 + 12 bytes
PL_HandleEvent(PLEvent * 0x0c520ee4) line 509 + 10 bytes
PL_ProcessPendingEvents(PLEventQueue * 0x00ad90f0) line 470 + 9 bytes
_md_EventReceiverProc(HWND__ * 0x007908ec, unsigned int 49397, unsigned int 0,
long 11374832) line 932 + 9 bytes
USER32! 77e71820()
00ad90f0()
Comment 4•26 years ago
|
||
Changing OS and Platform to "All"
Updated•26 years ago
|
Assignee: gagan → rpotts
Comment 5•26 years ago
|
||
reassign gagan -> rpotts
I tested this with Win95 and Mac 8.51 with 1999081608 build. Page loads and
does not lock up, but it is slow and the layout is ugly. Would not hold M9 for
this.
rpotts, unless you've got a fix in hand, I would move to M10. Cool?
Assignee | ||
Updated•26 years ago
|
Status: NEW → RESOLVED
Closed: 26 years ago
Resolution: --- → WORKSFORME
Assignee | ||
Comment 7•26 years ago
|
||
I can't seem to reporduce this anymore...
I have a feeling that it was a dup of bug #7843.
-- rick
Updated•26 years ago
|
Status: RESOLVED → VERIFIED
On a build from a 7pm pst 8/24 cvs pull I'm seeing this assertation/lockup
behaviour about 90% of the time. Same site - http://www.projo.com/ Stack
trace looks similiar to the original.
Updated•26 years ago
|
Status: REOPENED → RESOLVED
Closed: 26 years ago → 26 years ago
Resolution: --- → FIXED
Comment 9•26 years ago
|
||
tor, the change was made on a separate branch, not the one you checked out, I
believe. The change should be merged into the tip in the next day or
so. The page is loading for me fine right now, though the layout is a bit messed
up.
Therefore, I'm going to mark it resolved again, and I will let you verify, but
give it about two days.
Updated•26 years ago
|
Whiteboard: 8/26 asked reporter to verify
Comment 10•26 years ago
|
||
tor, M9 binaries are available. Let us know what you find, thanks. Also, the
changes have been checked into the tip now, so if you checkout, you should see
this fixed also.
Reporter | ||
Comment 11•26 years ago
|
||
Assertion/lockup problem is gone in a 8/26 evening pull (post m9 merge).
Comment 12•25 years ago
|
||
Bulk move of all Necko (to be deleted component) bugs to new Networking
component.
You need to log in
before you can comment on or make changes to this bug.
Description
•