gliaskos / freebsd-chromium

Chromium port for FreeBSD
47 stars 14 forks source link

Bounty for fixing Aw, snap! pages on FreeBSD 10.2 #40

Closed ghost closed 5 years ago

ghost commented 8 years ago

Bountysource

Second Edit, 2017-01-11: I have withdrawn my expired bounty. Just $57 in the pot at the moment.

First edit: I haved moved and doubled my bounty from a personal one to BountySource. This now expires early/mid next year instead of by the end of the year.

Hi,

Chromium on FreeBSD has been extremely unusable for months. I get these pages every several clicks. Firefox, is far too slow. surf, is too slow. Chromium is fast and works great, aside from the random crashes.

I'd rather use Chromium and it's killing me.

1BTC to someone who can provide a reliable (and not for just the next version, ideally patched upstream), current stable Chromium on FreeBSD 10.2, as installed by pkgng. This expires at the end of the year. Does not apply for odd settings hacks, patches that break other things, things that don't work out of the box.

I am using x86_64. I have a new Chromium every start with a set master_preferences which I can provide if needed. This should be very reproducible, from what I've found. Let me know if you have any trouble reproducing it. I'll want to confirm for a couple days that I see no more of these when browsing. Currently, it's about one every five minutes of normal browsing, with a few in succession, and then going away entirely for a little bit. I'd also like a description of the cause and fix.

This is regarding issue #14.

Thank you!

--Teran

ghost commented 8 years ago

I can turn this into a https://www.bountysource.com/ bounty if there is significant interest, as long as they can take payment in Bitcoin and give it back as Bitcoin.

szhongben commented 8 years ago

Synapsi bounty Collect or contribute bitcoins for resolving this issue via Synapsi

ghost commented 8 years ago

@szhongben Synapsi looks interesting, I'll certainly explore it more. Why is it a better option than BountySource? It's much more established and also accepts Bitcoin.

Thanks for contributing to getting this fixed.

szhongben commented 8 years ago

I think you mentioned taking payment and paying out in bitcoin. Synapsi allows you to do both securely using multi-sig escrow.

iron77 commented 8 years ago

Not a FreeBSD user myself, but I applaud OP's initiative. I don't think open-source movement can successfully compete long-term if we don't start heavily use methods that allow us to fund and manage projects, ideally on the grass-root level. Bitcoin is a great thing for this purpose. I'll put another 0.15 BTC to this (EOY deadline as OP), looks like we have a total 1.25 BTC as of now?

ghost commented 8 years ago

@iron77, thank you so much. While the open source community is remarkably self-motivated, this seemed pretty significant and would be very helpful for me. Generally, money seems to help make most things happen more quickly and effectively than anything else, so I'm happy to contribute to get things done.

That does bring the total to 1.25 2.25BTC.

ghost commented 8 years ago

@iron77 I've moved my bounty to BountySource. If you'd like to, you can contribute there as well: https://www.bountysource.com/issues/28271221-1btc-bounty-for-fixing-aw-snap-pages-on-freebsd-10-2

Will be a bit easier to manage and may bring more draw to the project. Unfortunately, there is a fairly high minimum if you wish to set an expiration (higher than 0.15BTC).

Thank you!

iron77 commented 8 years ago

Thanks for the update, I've set it without expiration for now. If noone picks it up in few months, I'll email Bountysource to cancel it or move to some other project.

LeFroid commented 8 years ago

Since I patched chromium to the latest stable release I have not noticed the Aw, snap! pages occurring nearly as often as before- from nearly every other site to around once per 100 to 200 web site visits if I were to make an estimate, and that usually happens now when most of the resources on my system are already being used. I was not specifically targeting this issue (looking, but haven't found a clear-cut cause or solution), however it would be great to hear if others are having a smoother browsing experience as well

ghost commented 8 years ago

@LeFroid Is that 47.X? I haven't seen it hit my mirror yet for 10.2. When it does, I'll definitely give a try and report back.

Thank you so much!

LeFroid commented 8 years ago

@teran-mckinney Yes it is, I'm currently using chromium 47.0.2526.73 on FreeBSD 10.2-STABLE. I hope that others get the same results, it would be great to have chromium acting more stable on FreeBSD

AndyMender commented 8 years ago

Dear Everyone,

Thank you for your efforts regarding Chromium on FreeBSD. Those aw Snap! crashes were highly annoying during the last few days. I will compile the new chromium port overnight and report back with results.

For now I can confirm it's the 47.0.2526.73 version.

Best regards, Andy Bear

On Mon, Dec 7, 2015 at 7:03 PM, Timothy Vaccarelli <notifications@github.com

wrote:

@teran-mckinney https://github.com/teran-mckinney Yes it is, I'm currently using chromium 47.0.2526.73 on FreeBSD 10.2-STABLE. I hope that others get the same results, it would be great to have chromium acting more stable on FreeBSD

— Reply to this email directly or view it on GitHub https://github.com/gliaskos/freebsd-chromium/issues/40#issuecomment-162609611 .

AndyMender commented 8 years ago

Dear All,

Chromium build under FreeBSD 10.2 fails on chrome.gyp. Here is the most recent call:

echo > /usr/ports/www/chromium/work/chromium-47.0.2526.73/flapper_version.h cd /usr/ports/www/chromium/work/chromium-47.0.2526.73 && /usr/bin/env CC="cc" CXX="c++" GYP_GENERATORS=ninja GYP_DEFINES="clang_use_chrome_plugins=0 linux_breakpad=0 linux_use_heapchecker=0 linux_strip_binary=1 use_aura=1 test_isolation_mode=noop disable_nacl=1 enable_extensions=1 enable_one_click_signin=1 enable_openmax=1 enable_webrtc=1 werror= no_gc_sections=1 os_ver=1002502 prefix_dir=/usr/local python_ver=2.7 use_allocator=none use_cups=1 linux_link_gsettings=1 linux_link_libpci=1 linux_link_libspeechd=1 libspeechd_h_prefix=speech-dispatcher/ usb_ids_path=/usr/local/share/usbids/usb.ids want_separate_host_toolset=0 use_system_bzip2=1 use_system_flac=1 use_system_harfbuzz=1 use_system_icu=1 use_system_jsoncpp=1 use_system_libevent=1 use_system_libexif=1 use_system_libjpeg=1 use_system_libpng=1 use_system_libusb=1 use_system_libwebp=1 use_system_libxml=1 use_system_libxslt=1 use_system_nspr=1 use_system_protobuf=0 use_system_re2=1 use_system_snappy=1 use_system_speex=1 use_system_xdg_utils=1 use_system_yasm=1 v8_use_external_startup_data=0 flapper_version_h_file='/usr/ports/www/chromium/work/chromium-47.0.2526.73/flapper_version.h' google_api_key=AIzaSyBsp9n41JLW8jCokwn7vhoaMejDFRd1mp8 google_default_client_id=996322985003.apps.googleusercontent.com google_default_client_secret=IR1za9-1VK0zZ0f_O8MVFicn ffmpeg_branding=Chrome proprietary_codecs=1 use_gconf=1 use_pulseaudio=0 clang=1 use_kerberos=0" ac_cv_path_PERL=/usr/local/bin/perl ac_cv_path_PERL_PATH=/usr/local/bin/perl PKG_CONFIG=pkgconf PYTHON="/usr/local/bin/python2.7" AR=/usr/bin/ar CFLAGS="-O2 -pipe -isystem/usr/local/include -I/usr/local/include/atk-1.0 -Wno-unknown-warning-option -fstack-protector -fno-strict-aliasing" CPPFLAGS="" CXXFLAGS="-O2 -pipe -isystem/usr/local/include -I/usr/local/include/atk-1.0 -Wno-unknown-warning-option -fstack-protector -fno-strict-aliasing " LDFLAGS=" -fstack-protector" XDG_DATA_HOME=/usr/ports/www/chromium/work XDG_CONFIG_HOME=/usr/ports/www/chromium/work HOME=/usr/ports/www/chromium/work SHELL=/bin/sh CONFIG_SHELL=/bin/sh /usr/local/bin/python2.7 ./build/gyp_chromium chrome/chrome.gyp --depth . Updating projects from gyp files... [27545 refs] gyp: Call to 'python ../build/util/version.py -f ../chrome/VERSION -t "@BUILD@.@PATCH_HI@.@PATCH_LO@" -e "PATCH_HI=int(PATCH)/256" -e "PATCH_LO=int(PATCH)%256"' returned exit status 0 while in chrome/chrome.gyp. [59489 refs] *\ Error code 1

Stop. make[1]: stopped in /usr/ports/www/chromium *\ Error code 1

Stop. make: stopped in /usr/ports/www/chromium

I tried redoing make config-recursive and checking all of the configs with focus on gyp, but no luck. Installing the py27-gyp package also did not help. This was also the problem with the previous build and I thought it would solve itself _automagicall_y with this new (47.x).

Any ideas?

Best regards, Andy

On Mon, Dec 7, 2015 at 9:00 PM, Andrzej Bylicki anpaby5@gmail.com wrote:

Dear Everyone,

Thank you for your efforts regarding Chromium on FreeBSD. Those aw Snap! crashes were highly annoying during the last few days. I will compile the new chromium port overnight and report back with results.

For now I can confirm it's the 47.0.2526.73 version.

Best regards, Andy Bear

On Mon, Dec 7, 2015 at 7:03 PM, Timothy Vaccarelli < notifications@github.com> wrote:

@teran-mckinney https://github.com/teran-mckinney Yes it is, I'm currently using chromium 47.0.2526.73 on FreeBSD 10.2-STABLE. I hope that others get the same results, it would be great to have chromium acting more stable on FreeBSD

— Reply to this email directly or view it on GitHub https://github.com/gliaskos/freebsd-chromium/issues/40#issuecomment-162609611 .

ghost commented 8 years ago

@AndyMender Build is in pkg now for 10.2, not sure how with what you're saying. Should be able to just pkg install it and give it a try.

@LeFroid this is great! I haven't had a chance to use it extensively, but crashes are definitely much, much less often than before. Only problem I've had is about a 50% crash rate opening PDFs with the embedded viewer.

I'll reply back later. Thank you!

AndyMender commented 8 years ago

Dear Everyone,

I forgot one can upgrade Chromium through the pkg tool. I did that and everything worked fine. I can confirm that Chromium crashes now a lot less and only on very overloaded websites. Great work, thank you for the contribution! :)

Best regards, Andy

On Fri, Dec 11, 2015 at 7:21 PM, Teran McKinney notifications@github.com wrote:

@AndyMender https://github.com/AndyMender Build is in pkg now for 10.2, not sure how with what you're saying. Should be able to just pkg install it and give it a try.

@LeFroid https://github.com/LeFroid this is great! I haven't had a chance to use it extensively, but crashes are definitely much, much less often than before. Only problem I've had is about a 50% crash rate opening PDFs with the embedded viewer.

I'll reply back later. Thank you!

— Reply to this email directly or view it on GitHub https://github.com/gliaskos/freebsd-chromium/issues/40#issuecomment-164008878 .

LeFroid commented 8 years ago

Hello everyone,

I'm glad to hear that others are having a better browsing experience as well!

@teran-mckinney I'll do a little research on the PDF viewer crashes and see if there's anything I can do - the code base is a lot smaller for that and should be easy enough to handle

All the best, Tim

ghost commented 8 years ago

Hi Tim,

Thank you! I'm glad to hear it.

I've been browsing more. Unfortunately, they still are frequent on some sites and areas. LinkedIn is a bit crashy.

This site in particular I've had problems with: http://www.mobafire.com/league-of-legends/item/the-bloodthirster-60

Still, this is huge progress. I would like to contribute directly to the main developers here (you, @rene0 and @gliaskos?), as well as to a tip4commit on this repo. Could you setup a tip4commit account here? I don't think I can do that as I don't own the repository.

Could the three of you send me Bitcoin addresses?

Sincerely, Teran

LeFroid commented 8 years ago

Hey Teran,

That is quite unfortunate about the crashes, I'll see if I can reproduce them and determine what part of the browser may be responsible. Hopefully others are or will be doing the same.

Thank you very much for your generosity! My Bitcoin address is 1DZ9hx6RKS6gx7pxpzYS41dkMfBhqsCgFj

Best Regards, Tim

ghost commented 8 years ago

Hi Tim,

You're welcome! Thank you for your work with Chrome on FreeBSD. It really is probably the main make-or-break application that lets FreeBSD be usable as a desktop. I like using links, but I don't think many websites support it anymore :-).

I almost wonder if it may be easiest to debug using an older version that crashed even more often as the cause may be the same. That said, you would certainly know more and I on that.

Sincerely, Teran

ghost commented 8 years ago

Happy New Year!

I seem to be having many more crashes with 47.0.2526.106, can anyone else confirm the same?

Thanks, Teran

df2218380513f49d8a3d896fc45740e9 commented 8 years ago

Yes, 47.0.2526.106 remains troublesome.

yonas commented 8 years ago

I'm so happy to hear I'm not the only one. I've been getting crashes on YouTube almost every time I load a video. Sometimes even the home page crashes when creating a new tab (duckduckgo in my case).

Is there any hope to resolving this bug?

PeterMaxwell commented 8 years ago

Chromium has done the "Aw Snap" segfaulting for me over numerous versions. I had thought it was just my hardware but now having googled it, seems it's more common. Using 47.0.2526.73 at the moment on 10.2-p7 amd64 with xorg+kde4 and it's getting ridiculous.

If I'm really unlucky, the system will randomly reset itself on a graphics redraw (almost always chrome). I was presuming this was hardware related but not overly sure now. Anyway, thought it worth mentioning in the unlikely event the two issues are related (it's a laptop with IvyBridge chipset).

ghost commented 8 years ago

This is likely the commit where things broke. Not certain if due to to the patches or upstream.

https://github.com/gliaskos/freebsd-chromium/commit/c0ed1abe333c7be054352dd7f11890dce775e2c4

Does anyone know if any of the other BSD's get these Aw, Snap! errors?

LeFroid commented 8 years ago

Just wanted to let everyone know that I'm still working on the issue to the best of my ability.

I've been suspicious that the segfaults are rooted in the ChildProcessLauncher class, and so I compared the code related to that class in the commit @teran-mckinney mentioned, to the current version of Chromium, to the OpenBSD port of Chromium as well, and I think I've made some progress

After modifying the sandbox-related code for FreeBSD to work more like the way OpenBSD handles it, and doing some very basic testing, it seems to me like the browser is running much better. To what extent I'm not certain, but I will say this: before patching Chromium (I'm on Chromium 48.0.2564.103, FreeBSD 10-Stable, amd64), I've had between 15 and 30 crashes total, that occurred at seemingly random times. Since I've patched what I believe to be the troublesome parts of the browser, I haven't had a single tab crash, so at the very least nothing is worse than before patching it at all.

After I test the modifications a little more, if they still seem to fix or at least alleviate the tab crashes, I'll make a PR

ghost commented 8 years ago

@LeFroid thanks for the update! That is very promising to hear.

These crashes are so random and inconsistent that it's tough to know for certain when it's fixed, but hopefully that is the case this time. Sometimes, I'll see no crashes for a while, or see repeated crashing over and over. It does seem like the longer the Chrome process has been running, the worse it gets.

ghost commented 8 years ago

@LeFroid have you had any more luck with the fix?

Would love to have a fast and non-crashing Chrome on FreeBSD if it's ready.

ghost commented 8 years ago

@LeFroid any luck? Sorry for bugging you, but I'd love to see this merged in if it works.

Thanks!

By the way, Firefox 45 is broken in FreeBSD now. Haven't reported a bug on it yet. Gives random bus errors.

yonas commented 8 years ago

Pages aren't crashing for me with version 48.0.2564.116 (64-bit).

uname: FreeBSD desktop 10.2-RELEASE-p9 FreeBSD 10.2-RELEASE-p9 #0: Thu Jan 14 01:32:46 UTC 2016

ghost commented 8 years ago

@yonas, you may not being using it quite enough. Definitely still crashing for me, but possibly less frequently.

Had several today, already.

LeFroid commented 8 years ago

@teran-mckinney Sorry, no luck. I'm still attempting to come up with a fix for the crashes, but the best results I've been able to observe are that the browser will work fine up until X amount of time (usually over an hour, sometimes a day), and then random tabs will crash at random times..

Unfortunately my spare time has been pretty limited lately, so I'm hoping that there are others who are also looking into this problem

ghost commented 8 years ago

Okay, thank you!

Good news is that a recent Firefox build may have fixed the crashes I was seeing, so at least one of the main browsers is working.

LeFroid commented 8 years ago

Since it's been quiet for a while - I just submitted a PR for the latest stable release of chromium. A lot of platform-dependent code was modified while I was patching chrome, so I'm hoping one of the affected systems will reduce the number of tab crashes we've all been experiencing.

ghost commented 8 years ago

Thank you! I'm happy to hear it.

I'll let you know how it works out.

ghost commented 8 years ago

Sorry for the late update. Still crashes as usual :-(.

LeFroid commented 8 years ago

That's unfortunate...I started getting crashes as well after a few days. As of version 52.0.2743.116, I have yet to experience any "Aw, Snap!" pages. However, the websites that are known to crash the browser are still an issue, and I've occasionally had tabs hang up while loading content, which couldn't be closed without using the built-in task manager.

ghost commented 8 years ago

In 52.0.2743.116 I have very frequent "forever" loading of chromium service pages (settings, extensions, bookmarks etc) and yellow square instead icon on this tabs. Tried 11.0-stable and 10.3-R, the same. But for Internet pages not yet seen)

paranormal commented 8 years ago

Oh, I did my own porting as well. My first working version were done a week ago but real fixing 'Aw, snap' were done just now. Such a pity that we both did the work. I spend endless time with lldb. I also ported tools/gn/bootstrap and a lot of other stuff were polished.

paranormal commented 8 years ago

I guess now I have to compare everything I've done with this new patch and make new pull request.

paranormal commented 8 years ago

What a mess.

yonas commented 8 years ago

@paranormal What PR are you referring to?

The PR from @LeFroid was submitted back in May, and he's still seeing crashes, so your work might resolve some remaining issues.

Out of curiosity, are you able to browser kickstarter.com without crashing?

paranormal commented 8 years ago

@yonas this PR. By 'The PR from @LeFroid you mean porting 52.0.2743.116? It was done definitely not in May.

No, I don't have crashes. I mean I didn't. I'll build everything again and make pull request soon. But again, I found something with debugger I fixed it, after that all worked, there may be other spots, but I'm determined to finish the whole thing.

yonas commented 8 years ago

@paranormal This isn't a PR :)

No, I don't have crashes. I mean I didn't. I'll build everything again and make pull request soon. But again, I found something with debugger I fixed it, after that all worked, there may be other spots, but I'm determined to finish the whole thing.

Excellent! Your fixes will definitely help improve the stability of Chromium on FreeBSD.

paranormal commented 8 years ago

Oh, you mean 'Aw, snap' PR. There were a few, but as I can see now only 204454 last.

LeFroid commented 8 years ago

@paranormal It's great to hear that you've made such improvements to the browser! It can be a pretty monstrous task to take on alone. Looking forward to your PR; feel free to contact me if you need a hand with anything.

ghost commented 7 years ago

I wanted to let you all know that I'm thinking about pulling my bounty on this. I already set the option for it to disappear if it took too long, and it's well overdue. It should have been withdrawn by now automatically.

I no longer have a consistent source of income. My part of the bounty is $763, so this pay out will be substantially reduced if I pull out.

I hope this is understandable. Feel free to try and resolve this soon, else I will likely try to withdraw in the next few days. I appreciate all of the work you have all put into this - I just wish it could have been fixed a long time ago. Chromium on FreeBSD has been almost unusable for (nearly?) a couple years now. I've since switched almost entirely to Firefox which is notably less performant in several regards.

Thank you!

paranormal commented 7 years ago

The chance I would fix it is low. The whole thing requires a lot of ram and a lot of (computing power || time). I'm not patient person though. I would do it right and clever or non at all was my thought. I thought that I could reduce requirements to reasonable by moving to a new chromium building system. It lowered requirements but not enough.

May be someone with better equipment then I have would fix it finally.

Feel free to withdraw. This is definitely understandable.

ghost commented 7 years ago

Thank you, @paranormal. I've withdrawn my bounty.

I appreciate your help on this.

lapo-luchini commented 5 years ago

This seems to be fixed on 12.0-RELEASE (or 11.2-RELEASE with a sysctl), right?

cpu82 commented 5 years ago

This seems to be fixed on 12.0-RELEASE (or 11.2-RELEASE with a sysctl), right?

Yes, it was addressed by the following commit:

https://svnweb.freebsd.org/base?view=revision&revision=337328