Opened 3 years ago

Closed 2 years ago

#17356 closed bug (fixed)

WebPositive (master) page freezes after loading on Amazon.ca

Reported by: vidrep Owned by: pulkomandy
Priority: normal Milestone: Unscheduled
Component: Kits/Web Kit Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Platform: All

Description

hrev55585 x86_64

HaikuWebKit 1.8.2

WebKit 613.1.5

WebPositive consistently freezes after logging into my account and accessing the order history

Debugger report attached

Attachments (2)

WebPositive-15537-debug-26-10-2021-23-06-38.report (107.9 KB ) - added by vidrep 3 years ago.
WebPositive-3561-debug-24-11-2021-19-52-22.report (103.1 KB ) - added by vidrep 3 years ago.

Download all attachments as: .zip

Change History (9)

comment:1 by nephele, 3 years ago

Component: Applications/WebPositiveKits/Web Kit
Version: R1/beta3R1/Development

I think this was reported once already, it seems to be the same IconDatabase freeze

comment:2 by pulkomandy, 3 years ago

This does not seem to be a problem with the Icon Database but with BUrlProtocol calling directly into WebKit code from HTTP threads. This should not be allowed, all calls to WebKit must happen in the main thread.

You can see this in several stacktraces:

731	        0x7fb91510b7b0  0x1ef41f71371   WTF::LockAlgorithm<unsigned char, (unsigned char)1, (unsigned char)2, WTF::EmptyLockHooks<unsigned char> >::lockSlow(WTF::Atomic<unsigned char>&) + 0xf1
732	        0x7fb91510b800  0x1ef41f30f13   WebCore::BUrlRequestWrapper::Write(void const*, unsigned long) + 0xf3
733	        0x7fb91510b840  0x11a69570806   BDataIO::WriteExactly(void const*, unsigned long, unsigned long*) + 0x46

This is a regression from the new services kit. Previously, the data was received through a BMessage and so it was handled in the main thread. But now it's received by direct writes to a BDataIO, which happens on the HTTP thread (for performance reasons, this considerably speeds up downloads). BUrlRequestWrapper should take care of moving the data to the right thread by using a BMessage, now.

comment:3 by pulkomandy, 3 years ago

Please try with https://github.com/haiku/haikuwebkit/commit/a76b8f20242835bb72159a1fc70c59f3faa00c51 (or latest haikuwebkit master) and see if you still have problems. If you do, please attach a new debug report.

comment:4 by vidrep, 3 years ago

Tested with hrev55662 x86_64 HaikuWebKit 1.8.4 WebKit 613.1.10

Still freezing as before.

comment:5 by vidrep, 3 years ago

Debug report attached

comment:6 by vidrep, 3 years ago

Still freezing using latest HaikuWebKit 1.8.4 WebKit 614.1.2

comment:7 by vidrep, 2 years ago

Resolution: fixed
Status: newclosed

Tested withHaikuWebKit 1.9.0 WebKit 615.1.10 (master) and the page is not freezing any longer.

Note: See TracTickets for help on using tickets.