Bug 478976 (OOPP)

Electrolysis + plugins tracking

RESOLVED WORKSFORME

Status

Core Graveyard
Tracking
RESOLVED WORKSFORME
9 years ago
a year ago

People

(Reporter: jst, Assigned: bsmedberg)

Tracking

(Depends on: 13 bugs, Blocks: 1 bug, {meta})

519568, 519572, 534020, 535016, 535441, 540094, 545870, 548823, 558462, 560993, 561781, 574168, 631720, 441197, 512171, 516509, 516515, 516524, 516718, 516721, 516725, 516759, 517078, 517207, 517404, 517923, 517962, 518506, 518924, 519541, 519570, 519574, 519583, 519601, 521118, 521450, 521940, 522414, 522796, 523094, 524984, 525483, 526393, 526401, 529005, 530007, 530083, 530894, 531142, 531821, 531859, 531860, 532700, 534027, 534791, 534796, 535077, 535120, 535207, 535295, 535327, 535615, 535687, 535829, 536188, 536303, 536369, 536437, 536528, 537310, 537344, 538586, 538902, 538910, 538914, 538918, 538990, LorentzBeta1, 539061, 539063, 539138, 539280, 539290, 539330, 539658, 539835, 539897, 539964, 540004, 540137, 540197, 540459, 540604, 540793, 540910, 540935, 541401, 542023, 542053, 542066, 542248, 542263, 542616, 542656, 542701, 542759, 542784, 542792, 542821, 542831, 542866, 542887, 542897, 542906, 542915, 543103, 543183, 543201, 543448, 543479, 543753, 543764, 543770, 543773, 543778, 543788, 543802, 543809, 543819, 543831, 543901, 544028, 544058, 544074, 544088, 544153, 544167, 544211, 544236, 544361, 544393, 544518, 544559, 544619, 544630, 544694, 544882, 544893, 544910, 544936, 545080, 545149, 545186, 545191, 545239, 545312, 545336, 545338, 545544, 545585, 545640, 545712, 545819, 545892, LorentzAlpha, 545976, 546035, 546043, 546057, 546059, 546072, 546073, 546373, 546492, 546497, 546502, 546651, 546666, 546707, 546745, 546766, 546777, 546797, 547136, 547142, 547247, 547276, 547316, 547358, 547359, 547894, 548344, 548434, 548689, 548810, 548811, 549888, 550026, 550034, 550305, 550322, 550784, 551242, 551387, 551392, 551508, 551627, 551875, 552051, 552062, 552111, 552114, 552126, 552163, 552305, 553371, 553592, 553606, 554046, 554262, LorentzBeta2, 555289, 555309, 555463, 555500, 555505, 555699, 555889, 556026, 556643, 557279, 557533, 558070, 558260, 558397, 558485, 558503, 558532, 558629, 558684, 558986, 559384, 559436, 559494, 559760, 560213, 560246, 560584, 561019, 561075, 561117, 561308, 561477, 561495, 561551, 561690, 561817, 561818, 561871, 562826, 563377, 563685, 564260, 564861, 565282, 565286, 565639, 566062, 570576, 572417, 574354, 574991, 579850, 588263, 588749, 602502, 686673
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

(Reporter)

Description

9 years ago
This is a tracking bug for making Mozilla run plugins out of process. The rough outline of how we're attempting to do this is as follows.

We're going to ease in to this problem slowly, as it's a very tricky thing to do right across platforms. Chrome does this today, but only in a shipping version on Windows. We'll be sharing as much code as we can with Chrome, and we may selectively run plugins out of process to begin with, and only on select platforms, i.e. only flash on Windows to begin with, or whatever plugin we pick. Ideally we'll be able to share most of the remoting code with Chrome rather than re-inventing that wheel. Once this work is off the ground we'll be looking at running the plugin process(es) in lower rights mode too, and that'll require significant API changes for plugins to work right when run in lower rights mode, not to mention us needing OS APIs to start processes in lower rights mode, on all platforms.

More details and followup bugs to follow...
Can we start with a list of items/bugs that describe what we would like to accomplish with out of process plugins?

Comment 2

9 years ago
Konqueror has been doing that for a while, AFAIK, and two usually quoted benefits they get from it is running 32-bit plugins on 64-bit browser builds and not crashing the browser when the plugin crashes.

Updated

9 years ago
Keywords: meta
Summary: Out of process tracking bug. → Tracking bug for out-of-process plugins
There's a thing called "nspluginwrapper" that does out-of-process plugins -- it's primarily aimed at being able to execute 32-bit plugins on a 64-bit browser under Linux, it's not especially reliable, and I have no idea how it works, but it might be worth cribbing for ideas?

http://gwenole.beauchesne.info//en/projects/nspluginwrapper

Comment 4

8 years ago
do we want to add things like bug 348170 for possible test cases to check the implementation against?  remove from dependency if not.
Blocks: 348170
(Assignee)

Updated

8 years ago
Assignee: nobody → benjamin
No longer blocks: 348170
Depends on: 516515, 516509
OS: Linux → All
QA Contact: chofmann → ipc
Hardware: x86 → All
Summary: Tracking bug for out-of-process plugins → Electrolysis + plugins tracking
(Assignee)

Updated

8 years ago
Blocks: 516518
(Assignee)

Updated

8 years ago
Depends on: 512694
(Assignee)

Updated

8 years ago
Depends on: 516524
(Assignee)

Updated

8 years ago
No longer depends on: 512694
(Assignee)

Updated

8 years ago
Depends on: 516718
(Assignee)

Updated

8 years ago
Depends on: 516721
(Assignee)

Updated

8 years ago
Depends on: 516725
(Assignee)

Updated

8 years ago
Depends on: 516759
(Assignee)

Updated

8 years ago
Depends on: 517207
(Assignee)

Updated

8 years ago
Depends on: 517923
(Assignee)

Updated

8 years ago
Depends on: 517962
Blocks: 518465
(Assignee)

Updated

8 years ago
Depends on: 518506
Depends on: 518924
Depends on: 519541
(Assignee)

Updated

8 years ago
Depends on: 519568
(Assignee)

Updated

8 years ago
Depends on: 519570
(Assignee)

Updated

8 years ago
Depends on: 519572
(Assignee)

Updated

8 years ago
Depends on: 517078
(Assignee)

Updated

8 years ago
Depends on: 519574
(Assignee)

Updated

8 years ago
Depends on: 519583
Depends on: 519601

Comment 5

8 years ago
I maintain nspluginwrapper in Fedora. Nspluginwrapper runs NPAPI plugins as separated processes and calls NPAPI functions by custom RPC interface (based on network sockets). Main drawback of the approach is that address space of browser/plugin is separated so nspluginwrapper does not support plug-in scripting, getting NPNVDOMWindow/NPNVDOMElement (by plugin) and some other.
(Assignee)

Updated

8 years ago
Depends on: 521450
Depends on: 521940
(Assignee)

Updated

8 years ago
Depends on: 522796
(Assignee)

Updated

8 years ago
Depends on: 523094
Depends on: 521118
(Assignee)

Updated

8 years ago
Depends on: 525483
Depends on: 525849
(Assignee)

Updated

8 years ago
Depends on: 524984
(Assignee)

Updated

8 years ago
Depends on: 522414
Depends on: 526393
Depends on: 526401
(Assignee)

Updated

8 years ago
Depends on: 530083
(Assignee)

Updated

8 years ago
Depends on: 530007
(Assignee)

Updated

8 years ago
Depends on: 530894
(Assignee)

Updated

8 years ago
Depends on: 529005
(Assignee)

Updated

8 years ago
Depends on: 531142
(Assignee)

Updated

8 years ago
Depends on: 531821

Updated

8 years ago
Blocks: 531859

Updated

8 years ago
Depends on: 531860

Updated

8 years ago
No longer blocks: 531859
Depends on: 531859
(Assignee)

Updated

8 years ago
Depends on: 534020

Updated

8 years ago
Depends on: 534027
(Assignee)

Updated

8 years ago
Depends on: 532700
(Assignee)

Updated

8 years ago
Depends on: 534791
Depends on: 535106
(Assignee)

Updated

8 years ago
No longer depends on: 535106
(Assignee)

Updated

8 years ago
Depends on: 535207
(Assignee)

Updated

8 years ago
Depends on: 535295
(Assignee)

Updated

8 years ago
Depends on: 535327
(Assignee)

Updated

8 years ago
Depends on: 535615
(Assignee)

Updated

8 years ago
Depends on: 535829
(Assignee)

Updated

8 years ago
Depends on: 536188
Depends on: 535687
(Assignee)

Updated

8 years ago
Depends on: 536369
(Assignee)

Updated

8 years ago
Depends on: 536437
(Assignee)

Updated

8 years ago
Depends on: 536303

Updated

8 years ago
Depends on: 537310
(Assignee)

Updated

8 years ago
Depends on: 535016
(Assignee)

Updated

8 years ago
Depends on: 538586

Updated

8 years ago
Depends on: 538902
Depends on: 538914

Updated

8 years ago
Depends on: 538918

Updated

8 years ago
Depends on: 538990
(Assignee)

Updated

8 years ago
Depends on: 539055
(Assignee)

Updated

8 years ago
Depends on: 538910

Updated

8 years ago
Depends on: 539061
(Assignee)

Updated

8 years ago
Depends on: 539063

Updated

8 years ago
Depends on: 539280
(Assignee)

Updated

8 years ago
Depends on: 539290

Updated

8 years ago
Depends on: 539330
(Assignee)

Updated

8 years ago
Alias: OOPP

Updated

8 years ago
Depends on: 539658

Updated

8 years ago
Depends on: 539835
Depends on: 539897
No longer depends on: 525849
(Assignee)

Updated

8 years ago
Depends on: 540004
(Assignee)

Updated

8 years ago
Depends on: 535077

Updated

8 years ago
Depends on: 540094
Depends on: 540197
(Assignee)

Updated

8 years ago
Depends on: 540459

Updated

8 years ago
Depends on: 540793
Depends on: 540935
(Assignee)

Updated

8 years ago
Depends on: 541401
Depends on: 540604

Updated

8 years ago
Depends on: 441197
(Assignee)

Updated

8 years ago
Depends on: 542023
(Assignee)

Updated

8 years ago
Depends on: 542066
(Assignee)

Updated

8 years ago
Depends on: 542248
(Assignee)

Updated

8 years ago
Depends on: 542263
(Assignee)

Updated

8 years ago
Depends on: 540910
Depends on: 542616

Updated

8 years ago
Depends on: 542759
(Assignee)

Updated

8 years ago
Depends on: 542792
Depends on: 536528

Updated

8 years ago
Depends on: 542821
Depends on: 542887

Updated

8 years ago
Depends on: 542897

Updated

8 years ago
Depends on: 542906
Depends on: 542915
(Assignee)

Updated

8 years ago
Depends on: 535120

Updated

8 years ago
Depends on: 543103

Updated

8 years ago
Depends on: 543201

Updated

8 years ago
Depends on: 543376

Updated

8 years ago
Depends on: 534796
Depends on: 543448
(Assignee)

Updated

8 years ago
Depends on: 537344

Updated

8 years ago
Depends on: 543479
Depends on: 542866

Updated

8 years ago
Depends on: 543770

Updated

8 years ago
Depends on: 543773

Updated

8 years ago
Depends on: 543778

Updated

8 years ago
Depends on: 543788

Updated

8 years ago
Depends on: 543764

Updated

8 years ago
Depends on: 543802
(Assignee)

Updated

8 years ago
Depends on: 543831
Depends on: 543901

Updated

8 years ago
Depends on: 543809
(Assignee)

Updated

8 years ago
Depends on: 543183
(Assignee)

Updated

8 years ago
Depends on: 544028

Updated

8 years ago
Depends on: 544058
Depends on: 544074
Depends on: 544088
(Assignee)

Updated

8 years ago
Depends on: 542784

Updated

8 years ago
Depends on: 544153

Updated

8 years ago
Depends on: 544167
Depends on: 544236
(Assignee)

Updated

8 years ago
Depends on: 535441

Updated

8 years ago
Depends on: 544361

Updated

8 years ago
Depends on: 544393

Updated

8 years ago
Depends on: 544211
Depends on: 542831

Updated

8 years ago
Depends on: 544559
Depends on: 543819

Updated

8 years ago
Depends on: 544619

Updated

8 years ago
Depends on: 544630

Updated

8 years ago
Depends on: 544694

Updated

8 years ago
Depends on: 544893

Updated

8 years ago
Depends on: 544910

Updated

8 years ago
Depends on: 545080

Updated

8 years ago
Depends on: 545149

Updated

8 years ago
Depends on: 545186
(Assignee)

Updated

8 years ago
Depends on: 545191
(Assignee)

Updated

8 years ago
Depends on: 545239

Updated

8 years ago
Depends on: 545336

Updated

8 years ago
Depends on: 545338
Depends on: 545219
(Assignee)

Updated

8 years ago
Depends on: 545312
Depends on: 539964
Depends on: 544882
Depends on: 545640
(Assignee)

Updated

8 years ago
Depends on: 545544
(Assignee)

Updated

8 years ago
Depends on: 545712

Updated

8 years ago
Blocks: 545716

Updated

8 years ago
Depends on: 545819
(Assignee)

Updated

8 years ago
Depends on: 545870

Updated

8 years ago
Depends on: 542656

Updated

8 years ago
Depends on: 545892

Updated

8 years ago
Depends on: 545976

Updated

8 years ago
Depends on: 546035
(Assignee)

Updated

8 years ago
Depends on: 545585

Updated

8 years ago
Depends on: 546043

Updated

8 years ago
Depends on: 546057

Updated

8 years ago
Depends on: 546059

Updated

8 years ago
Depends on: 546072

Updated

8 years ago
Depends on: 546073

Updated

8 years ago
Depends on: 546373

Updated

8 years ago
Depends on: 546492

Updated

8 years ago
Depends on: 546497
(Assignee)

Updated

8 years ago
Depends on: 546502
(Assignee)

Updated

8 years ago
Depends on: 546651

Updated

8 years ago
Depends on: 546666

Updated

8 years ago
Depends on: 546707
(Assignee)

Updated

8 years ago
Depends on: 545893
Depends on: 546797

Updated

8 years ago
Depends on: 546745

Updated

8 years ago
Depends on: 546766
(Assignee)

Updated

8 years ago
Depends on: 544936

Updated

8 years ago
Depends on: 547077

Updated

8 years ago
Depends on: 547136

Updated

8 years ago
Depends on: 547142

Updated

8 years ago
Depends on: 547153

Updated

8 years ago
Depends on: 547247

Updated

8 years ago
Depends on: 547276
(Assignee)

Updated

8 years ago
No longer depends on: 547077
(Assignee)

Updated

8 years ago
Depends on: 547316

Updated

8 years ago
Depends on: 547353

Updated

8 years ago
Depends on: 547359
(Assignee)

Updated

8 years ago
Depends on: 547894
Depends on: 539138

Updated

8 years ago
Depends on: 548344
Depends on: 548434

Updated

8 years ago
No longer depends on: 547353

Updated

8 years ago
Depends on: 546777

Updated

8 years ago
No longer depends on: 545219
Depends on: 548689
(Assignee)

Updated

8 years ago
Depends on: 548810
(Assignee)

Updated

8 years ago
Depends on: 548811
Depends on: 540137

Updated

8 years ago
Depends on: 548823
Depends on: 550026
(Assignee)

Updated

8 years ago
Depends on: 550305

Updated

8 years ago
Depends on: 550322

Updated

8 years ago
Depends on: 547358

Updated

8 years ago
Depends on: 550784
(Assignee)

Updated

8 years ago
Depends on: 551242

Updated

8 years ago
Depends on: 551387
(Assignee)

Updated

8 years ago
Depends on: 551392
(Assignee)

Updated

8 years ago
Depends on: 551482
Depends on: 517404
No longer depends on: 551482
Depends on: 551875

Updated

8 years ago
Depends on: 552114

Updated

8 years ago
Depends on: 552111

Updated

8 years ago
Depends on: 552051

Updated

8 years ago
Depends on: 552126

Comment 6

8 years ago
In the process, of making plugins/addons and tabs as different process, I think it would also be interesting to ensure this processes have appropriated security level, if possible.
It's already stated in https://wiki.mozilla.org/Content_Processes#Goals

For Windows, it would use BIBA model introduces by Internet Explorer on Vista (bug 266533)

On Macosx, it would be the 10.5 sandboxing tools (bug 387248)

On Linux, it could be a good idea to provide some AppArmor/Selinux policies or something else to get good security (maybe related bug 319913 & bug 506693)

Else, it's a really promising evolution.
(Assignee)

Updated

8 years ago
Depends on: 552163

Updated

8 years ago
Depends on: 552305

Updated

8 years ago
Depends on: 552062
Depends on: 542053
Depends on: 549888
Depends on: 552866
(Assignee)

Updated

8 years ago
Depends on: 551508
(Assignee)

Updated

8 years ago
Depends on: 550034
No longer depends on: 552866
Depends on: 543753

Updated

8 years ago
Depends on: 553592

Updated

8 years ago
Depends on: 553606
(Assignee)

Updated

8 years ago
Depends on: 553371
Depends on: 553934
No longer depends on: 553934
(Assignee)

Updated

8 years ago
Depends on: 554046

Updated

7 years ago
Depends on: 554262

Updated

7 years ago
Depends on: 554759
(Assignee)

Updated

7 years ago
Depends on: 555309

Updated

7 years ago
Depends on: 555463

Updated

7 years ago
Depends on: 551627

Updated

7 years ago
Depends on: 555500
Depends on: 555505
No longer depends on: 555505
Depends on: 555505

Updated

7 years ago
Depends on: 555699
(Assignee)

Updated

7 years ago
Depends on: 555289
(Assignee)

Updated

7 years ago
Depends on: 556026

Updated

7 years ago
Depends on: 555889
(Assignee)

Updated

7 years ago
Depends on: 556643

Updated

7 years ago
Depends on: 557533
(Assignee)

Updated

7 years ago
Depends on: 544518

Updated

7 years ago
Depends on: 542701

Updated

7 years ago
Depends on: 558070
(Assignee)

Updated

7 years ago
No longer depends on: 558146

Updated

7 years ago
Depends on: 558146

Updated

7 years ago
Depends on: 558434
Depends on: 558260
Depends on: 558462
Depends on: 558485

Updated

7 years ago
Depends on: 558532

Updated

7 years ago
Depends on: 558397

Updated

7 years ago
Depends on: 558503

Updated

7 years ago
Depends on: 558629

Updated

7 years ago
No longer depends on: 558434

Updated

7 years ago
Depends on: 558684

Updated

7 years ago
Depends on: 559384

Updated

7 years ago
Depends on: 559436

Updated

7 years ago
Depends on: 559494

Updated

7 years ago
Depends on: 559760
(Assignee)

Updated

7 years ago
Depends on: 560213

Comment 7

7 years ago
Some 'spare time' reading (if we are re-writing everything and want 'the Kitchen Sink'):

Socket45
http://entropymine.com/jason/socket45/

NDISwrapper
http://en.wikipedia.org/wiki/NDISwrapper

GCC_Plugins
http://gcc.gnu.org/wiki/GCC_Plugins


Obviously we would change / limit the functionality to suit our needs.

The above could assist with things like Firebug, Video / Audio / Flash Capture, ntop for Windows, Snort, and other Web Interface Programs, including this nightmare 'Audio on more than one Tab' https://bugzilla.mozilla.org/show_bug.cgi?id=334987 .

Thanks,
Rob
Depends on: 560246
Depends on: 559425
(Assignee)

Updated

7 years ago
No longer depends on: 559425
(Assignee)

Updated

7 years ago
Depends on: 560993

Updated

7 years ago
Depends on: 558986

Updated

7 years ago
Depends on: 561019
Depends on: 560584
(Assignee)

Updated

7 years ago
Depends on: 561117
Depends on: 561308

Updated

7 years ago
Depends on: 561477
Depends on: 561551

Updated

7 years ago
Depends on: 561495
Depends on: 561690

Updated

7 years ago
Depends on: 561781

Updated

7 years ago
Depends on: 561818

Updated

7 years ago
Depends on: 561817
(Assignee)

Updated

7 years ago
Depends on: 561871

Updated

7 years ago
Depends on: 562826
Depends on: 563377

Updated

7 years ago
Depends on: 563685
(Assignee)

Updated

7 years ago
Depends on: 564260
(Assignee)

Updated

7 years ago
Depends on: 564861

Updated

7 years ago
No longer depends on: 543376

Updated

7 years ago
Depends on: 565286

Updated

7 years ago
Depends on: 565292

Updated

7 years ago
Depends on: 565282

Updated

7 years ago
Depends on: 561075
No longer depends on: 565292

Updated

7 years ago
Depends on: 565639

Updated

7 years ago
Depends on: 557279

Updated

7 years ago
Depends on: 566062

Updated

7 years ago
Depends on: 512171

Updated

7 years ago
Depends on: 570576
No longer depends on: 547153

Updated

7 years ago
Depends on: 572417

Updated

7 years ago
Depends on: 574354

Updated

7 years ago
Depends on: 574991

Updated

7 years ago
Depends on: 574168
(Assignee)

Comment 8

7 years ago
This bug has served it's tracking purpose and we're no longer using it.
Status: NEW → RESOLVED
Last Resolved: 7 years ago
Resolution: --- → WORKSFORME

Updated

7 years ago
Depends on: 579850

Updated

7 years ago
Depends on: 588263

Updated

7 years ago
Depends on: 588749

Updated

7 years ago
Depends on: 596094

Updated

7 years ago
No longer depends on: 596094

Updated

7 years ago
Depends on: 602502
Depends on: 631720

Updated

6 years ago
Depends on: 686673

Updated

5 years ago
Depends on: 812922
No longer depends on: 812922

Updated

2 years ago
QA Contact: chofmann
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.