MantisBT - NetSurf
View Issue Details
0002568NetSurfFramebuffer-specificpublic2017-10-25 10:152020-04-18 23:47
Reportermxfm 
Assigned To 
PrioritynormalSeverityblockReproducibilityalways
StatusacknowledgedResolutionopen 
PlatformLinuxOSLinuxOS Version4.13.7-1
Product Version3.7 
Target VersionFixed in Version 
Fixed in CI build #
Reported in CI build #
URL of problem page
Summary0002568: Netsurf-fb: Unable to initialize framebuffer
DescriptionI cannot run netsurf on virtual tty (i am able to run in virtual console).

Running from tty:

Unable to init SDL: unable to open mouse
Unable to initialize framebuffer

Steps To ReproduceThe package was build from sources on main site, then compiled with make TARGET=netsurf install.
Additional InformationLinux localhost 4.13.7-1-ARCH #1 SMP PREEMPT Sat Oct 14 20:13:26 CEST 2017 x86_64 GNU/Linux
TagsNo tags attached.
Attached Files? nsfb_rpi_tty (2,916) 2020-04-18 23:47
https://bugs.netsurf-browser.org/mantis/file_download.php?file_id=656&type=bug

Notes
(0001680)
mxfm   
2017-10-25 10:24   
Error log

(0.000001) utils/log.c:263 nslog_init: NetSurf version '3.7 (15th October 2017)'
(0.000050) utils/log.c:274 nslog_init: NetSurf on <Linux>, node <localhost>, release <4.13.7-1-ARCH>, version <#1 SMP PREEMPT Sat Oct 14 20:13:26 CEST 2017>, machine <x86_64>
(0.000084) utils/messages.c:212 messages_add_from_file: Loading Messages from '/share/netsurf/Messages'
(0.000687) content/handlers/image/image_cache.c:432 image_cache_init: Image cache initialised with a limit of 3145728 hysteresis of 629145
(0.000705) render/html_css_fetcher.c:65 html_css_fetcher_initialise: html_css_fetcher_initialise called for x-ns-css
(0.000779) content/fetchers/curl.c:1444 fetch_curl_register: curl_version libcurl/7.56.0 OpenSSL/1.1.0f zlib/1.2.11 libpsl/0.18.0 (+libicu/59.1) libssh2/1.8.0 nghttp2/1.23.1
(0.001928) utils/useragent.c:69 user_agent_build_string: Built user agent "NetSurf/3.7 (Linux)"
(0.001939) content/fetchers/curl.c:1532 fetch_curl_register: cURL linked against openssl
(0.001946) content/fetchers/curl.c:159 fetch_curl_initialise: Initialise cURL fetcher for http
(0.001953) content/fetchers/curl.c:159 fetch_curl_initialise: Initialise cURL fetcher for https
(0.001958) content/fetchers/data.c:61 fetch_data_initialise: fetch_data_initialise called for data
(0.001974) content/fetchers/resource.c:288 fetch_resource_initialise: redirect url for adblock.css
(0.001983) content/fetchers/resource.c:288 fetch_resource_initialise: redirect url for default.css
(0.001991) content/fetchers/resource.c:288 fetch_resource_initialise: redirect url for internal.css
(0.001999) content/fetchers/resource.c:288 fetch_resource_initialise: redirect url for quirks.css
(0.002010) content/fetchers/resource.c:288 fetch_resource_initialise: redirect url for credits.html
(0.002018) content/fetchers/resource.c:288 fetch_resource_initialise: redirect url for licence.html
(0.002026) content/fetchers/resource.c:288 fetch_resource_initialise: redirect url for welcome.html
(0.002034) content/fetchers/resource.c:288 fetch_resource_initialise: redirect url for maps.html
(0.002047) content/fetchers/resource.c:288 fetch_resource_initialise: redirect url for netsurf.png
(0.002069) content/llcache.c:3366 llcache_initialise: llcache initialising with a limit of 9437184 bytes
(0.002078) frontends/framebuffer/gui.c:469 process_cmdline: argc 1, argv 0x7fff112949b8
Unable to init SDL: Unable to open mouse
(0.013271) frontends/framebuffer/framebuffer.c:609 framebuffer_initialise: Unable to initialise nsfb surface

Unable to initialise framebuffer
(0001748)
Alastair Hughes   
2018-04-16 05:27   
This is probably because the netsurf process has insufficient permissions to access the device. Try running as root. If that fixes the issue, changing /dev/input/mouse to be readable by the netsurf process should be an OK temporary fix.

To be clear I don't think this is a netsurf issue - this needs to be fixed with a (say) udev rule or group membership change.
(0001749)
mxfm   
2018-04-16 06:14   
I just compiled 3.7 version with TARGET=framebuffer and run nsfb with sudo at non-X console. Now I have slighly different message:

Message translations failed to load.
Unable to set video: Couldn't set console screen info.
Unable to initialize framebuffer.

The message about the mouse is gone, but now something is wrong with screen info.
(0001750)
mxfm   
2018-04-16 06:20   
Some additional information which may be usefull.

As a comparison, I opened video with mplayer in non-X console with '-vo fbdev' option. It didn't played with following error:
VO: [fbdev] 640x480 => 640x480 BGRA
FATAL: cannot initialize video driver.t

However, it playes perfectly with '-vo fbdev2'. Fbdev2 as alternative framebuffer backend. I do not now which frontend uses netsurf, but it may use the non-working one.
(0001751)
Alastair Hughes   
2018-04-16 08:20   
Does the sdl backend for mplayer work?

A google suggests that this could be caused by the monitor not supporting the default 800x600 resolution (set in http://source.netsurf-browser.org/libnsfb.git/tree/src/surface/surface.c#n47). Perhaps try changing that to the normal size of the monitor?
(0002183)
Alan   
2020-04-18 23:47   
Like OP, I seem to be having difficulty initializing the nsfb surface on my raspberry pi 3B+.
See uploaded file for output of nsfb -v -b 16
It's the same whether run from a terminal emulator or tty or use sudo.

Issue History
2017-10-25 10:15mxfmNew Issue
2017-10-25 10:24mxfmNote Added: 0001680
2018-04-16 05:27Alastair HughesNote Added: 0001748
2018-04-16 06:14mxfmNote Added: 0001749
2018-04-16 06:20mxfmNote Added: 0001750
2018-04-16 08:20Alastair HughesNote Added: 0001751
2018-04-21 10:30Vincent SandersAssigned To => Vincent Sanders
2018-04-21 10:30Vincent SandersStatusnew => acknowledged
2019-05-06 14:14Vincent SandersAssigned ToVincent Sanders =>
2020-04-18 23:47AlanFile Added: nsfb_rpi_tty
2020-04-18 23:47AlanNote Added: 0002183