[dev-servo] Segmentation fault is caused by 'No appropriate framebuffer config found!'
Title: Samsung Enterprise Portal mySingle Dear all, When I executed servo, I met segmentation fault. It's caused by 'No appropriate framebuffer config found!'. Below is my test result. 0. Test environment - git hash : 1a7e9e5e2c02d9e023c901f14a8b54e9a3c6a8a2 1. Execute servo without "-c" option # ./servo ../src/test/html/about-mozilla.html task '' failed at 'No appropriate framebuffer config found!', /home/deokjin81kim/Share/2013_parallel_browser/temp/servo/src/support/layers/rust-layers/platform/linux/surface.rs:143task '' failed at 'killed by linked failure', /home/deokjin81kim/Share/2013_parallel_browser/temp/servo/src/compiler/rust/src/libstd/rt/kill.rs:627task '' failed at 'killed by linked failure', /home/deokjin81kim/Share/2013_parallel_browser/temp/servo/src/compiler/rust/src/libstd/rt/kill.rs:627task '' failed at 'killed by linked failure', /home/deokjin81kim/Share/2013_parallel_browser/temp/servo/src/compiler/rust/src/libstd/rt/kill.rs:627task '' failed at 'killed by linked failure', /home/deokjin81kim/Share/2013_parallel_browser/temp/servo/src/compiler/rust/src/libstd/rt/kill.rs:627 2. Execute servo with "-c" option # ./servo -c ../src/test/html/about-mozilla.html task '' failed at 'No appropriate framebuffer config found!', /home/deokjin81kim/Share/2013_parallel_browser/temp/servo/src/support/layers/rust-layers/platform/linux/surface.rs:143task '' failed at 'killed by linked failure', /home/deokjin81kim/Share/2013_parallel_browser/temp/servo/src/compiler/rust/src/libstd/rt/kill.rs:627task '' failed at 'killed by linked failure', /home/deokjin81kim/Share/2013_parallel_browser/temp/servo/src/compiler/rust/src/libstd/rt/kill.rs:627task '' failed at 'killed by linked failure', /home/deokjin81kim/Share/2013_parallel_browser/temp/servo/src/compiler/rust/src/libstd/rt/kill.rs:627task '' failed at 'receiving on closed channel', /home/deokjin81kim/Share/2013_parallel_browser/temp/servo/src/compiler/rust/src/libstd/rt/comm.rs:498 3. Result of "lspci" command # lspci 00:00.0 Host bridge: Intel Corporation Core Processor DMI (rev 11)00:03.0 PCI bridge: Intel Corporation Core Processor PCI Express Root Port 1 (rev 11)00:08.0 System peripheral: Intel Corporation Core Processor System Management Registers (rev 11)00:08.1 System peripheral: Intel Corporation Core Processor Semaphore and Scratchpad Registers (rev 11)00:08.2 System peripheral: Intel Corporation Core Processor System Control and Status Registers (rev 11)00:08.3 System peripheral: Intel Corporation Core Processor Miscellaneous Registers (rev 11)00:10.0 System peripheral: Intel Corporation Core Processor QPI Link (rev 11)00:10.1 System peripheral: Intel Corporation Core Processor QPI Routing and Protocol Registers (rev 11)00:1a.0 USB controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 06)00:1b.0 Audio device: Intel Corporation 5 Series/3400 Series Chipset High Definition Audio (rev 06)00:1c.0 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 1 (rev 06)00:1c.5 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 6 (rev 06)00:1d.0 USB controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 06)00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev a6)00:1f.0 ISA bridge: Intel Corporation 5 Series Chipset LPC Interface Controller (rev 06)00:1f.2 SATA controller: Intel Corporation 5 Series/3400 Series Chipset 6 port SATA AHCI Controller (rev 06)00:1f.3 SMBus: Intel Corporation 5 Series/3400 Series Chipset SMBus Controller (rev 06)01:00.0 VGA compatible controller: NVIDIA Corporation GT216 [GeForce GT 220] (rev a2)01:00.1 Audio device: NVIDIA Corporation High Definition Audio Controller (rev a1)06:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 03) Thank you in advance. Best Regards, Deokjin Kim___ dev-servo mailing list dev-servo@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-servo
[dev-servo] Rust and Servo presentations, demos
Hi Folks, (sorry for cross posting), I am a Hungarian contributor to Mozilla. Next weekend I will have a presentation about Mozilla Labs projects and I would like to introduce Rust and Servo. Can you point some presentations, demos that available for everyone? Thank you in advance! Üdvözlettel / Best Regards: Kálmán (KAMI) Szalai ___ dev-servo mailing list dev-servo@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-servo
Re: [dev-servo] TreeNode and the script/style split
On 10/30/2013 11:26 PM, Jack Moffitt wrote: Right now we have this TreeNode abstraction that has been around for a long time and has lost its original purpose (whatever that was). It's only job right now appears to be to break the cyclic dependency between the script and style crates. Does anyone have strong feelings as to whether this is a worthwhile reason to keep TreeNode around? If we get rid of it, I assume that style will have to live in the script crate as it did before. I don't think it should be kept in its current incarnation, at least. For example, |add_child| doesn't do any checks to make sure that the resulting DOM tree is correct, and we already use it to append DocumentType nodes to the root Element. It seems to be that keeping such a function around, in a way that anyone else than the Node mutation algorithms can call it, is a recipe for messing up our invariants. Also, the way it's written right now (|set!(next_sibling_node, set_prev_sibling, get!(child_node, prev_sibling));|, to pick but one line) is pretty unreadable, and I've had trouble adding assertions to ensure the correctness (I don't remember what the issue was exactly; possibly a lack of Eq). So if we want to keep some abstraction outside of script—which might be useful, given that whole-crate compilation makes large crates quite painful—it'll need quite a bit of work, and we should at least consider making it only expose a read-only view. HTH Ms2ger ___ dev-servo mailing list dev-servo@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-servo
Re: [dev-servo] Segmentation fault is caused by 'No appropriate framebuffer config found!'
On 10/31/13 12:27 AM, Deokjin Kim wrote: Dear all, When I executed servo, I met segmentation fault. It's caused by 'No appropriate framebuffer config found!'. We've seen problems with some GPU drivers on Linux not being able to handle binding X pixmaps to RGBA textures. I assumed that in 2013 everyone would support this seemingly basic feature but that does not seem to be the case :( I see three options: 1. EGLStream. Maybe that will work on those GPUs. 2. Investigate if there's some way to hack around it (using RGB pixmaps but somehow storing and reconstructing the alpha channel maybe?) 3. Shared memory with texture upload on the compositor side. #3 is guaranteed to work, but has bad performance implications (though no worse than the browsers of today). For now we can back off to RGB textures on those GPUs. This obviously won't work in the long run, though. Patrick ___ dev-servo mailing list dev-servo@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-servo
Re: [dev-servo] Segmentation fault is caused by 'No appropriate framebuffer config found!'
> 2. Investigate if there's some way to hack around it (using RGB pixmaps > but somehow storing and reconstructing the alpha channel maybe?) This sounds pretty workable to me. We can send alpha as the R channel of a second pixmap/texture and the compositor can extract it within a fragment shader. > 3. Shared memory with texture upload on the compositor side. > > #3 is guaranteed to work, but has bad performance implications (though > no worse than the browsers of today). If we're rendering on the CPU anyway, what's the performance hit of compositor upload? Is the issue that we'd like to upload in parallel with compositor work (and thus avoid jank)? I'm one of the people who can't use RGBA pixmaps, on Linux with NVIDIA binary drivers (which I naively thought were feature-complete). When I switch to RGB pixmaps (patching rust-layers thus: https://gist.github.com/kmcallister/7206061), I can run servo with CPU rendering (./servo -c) but with GPU rendering I get X Error of failed request: BadAlloc (insufficient resources for operation) Major opcode of failed request: 135 (GLX) Minor opcode of failed request: 22 (X_GLXCreatePixmap) Serial number of failed request: 141 Current serial number in output stream: 142 I'm not sure why this is happening but I didn't have much time to dig into it yet. keegan ___ dev-servo mailing list dev-servo@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-servo
Re: [dev-servo] Rust and Servo presentations, demos
Szia! There is a list of collected presentations related to Servo here: https://github.com/mozilla/servo/wiki/Videos-and-presentations and one for Rust: https://github.com/mozilla/rust/wiki/Docs#presentations The best way to demo servo are the following files which you can find in `src/test/html`: acid1.html summit2.html (showing parallel iframes) summit-fail.html (showing isolated failure) Hope this helps and gives you some ideas! jack. On Thu, Oct 31, 2013 at 3:04 AM, KAMI911 KAMI911 wrote: > Hi Folks, (sorry for cross posting), > > I am a Hungarian contributor to Mozilla. Next weekend I will have a > presentation about Mozilla Labs projects and I would like to introduce Rust > and Servo. Can you point some presentations, demos that available for > everyone? > > Thank you in advance! > > Üdvözlettel / Best Regards: > > Kálmán (KAMI) Szalai > ___ > dev-servo mailing list > dev-servo@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-servo ___ dev-servo mailing list dev-servo@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-servo