[#50466] [ruby-trunk - Bug #7492][Open] Segmentation fault at DL::TestDL#test_call_double on x64 Windows 8 — "phasis68 (Heesob Park)" <phasis@...>

23 messages 2012/12/02

[#50558] [ruby-trunk - Feature #7511][Open] short-circuiting logical implication operator — "rits (First Last)" <redmine@...>

12 messages 2012/12/04

[#50575] [ruby-trunk - Feature #7517][Open] Fixnum::MIN,MAX — "matz (Yukihiro Matsumoto)" <matz@...>

20 messages 2012/12/05

[#50755] Becoming a committer — Charlie Somerville <charlie@...>

Hi ruby-core,

21 messages 2012/12/11
[#50759] Re: Becoming a committer — Yukihiro Matsumoto <matz@...> 2012/12/11

Hi,

[#50784] Re: Becoming a committer — Charles Oliver Nutter <headius@...> 2012/12/11

It's really this easy? If so, I'll send over my public key today :)

[#50795] Re: Becoming a committer — Yukihiro Matsumoto <matz@...> 2012/12/11

Hi,

[#50806] [ruby-trunk - Feature #7548][Open] Load and Require Callbacks — "trans (Thomas Sawyer)" <transfire@...>

12 messages 2012/12/12

[#50810] [ruby-trunk - Feature #7549][Open] A Ruby Design Process — "brixen (Brian Ford)" <brixen@...>

34 messages 2012/12/12

[#50867] [ruby-trunk - Bug #7556][Assigned] test error on refinement — "usa (Usaku NAKAMURA)" <usa@...>

14 messages 2012/12/13

[#50900] [ruby-trunk - Bug #7564][Open] r38175 introduces incompatibility — "tenderlovemaking (Aaron Patterson)" <aaron@...>

14 messages 2012/12/14

[#50951] [ruby-trunk - Bug #7584][Open] Ruby hangs when shutting down an ssl connection in gc finalization — "bpot (Bob Potter)" <bobby.potter@...>

12 messages 2012/12/17

[#51076] [ruby-trunk - Feature #7604][Open] Make === comparison operator ability to delegate comparison to an argument — "prijutme4ty (Ilya Vorontsov)" <prijutme4ty@...>

12 messages 2012/12/22

[#51170] [ruby-trunk - Bug #7629][Open] Segmentation fault — "atd (Antonio Tapiador)" <atapiador@...>

13 messages 2012/12/28

[ruby-core:51062] [ruby-trunk - Bug #7474][Feedback] I am getting undefined symbol: rb_enable_interrupt when running event machine

From: "kosaki (Motohiro KOSAKI)" <kosaki.motohiro@...>
Date: 2012-12-21 16:14:43 UTC
List: ruby-core #51062
Issue #7474 has been updated by kosaki (Motohiro KOSAKI).

Status changed from Assigned to Feedback

> It's been static since r32510.
> I'm not sure if it is a part of public API.

vm_core.h is definitely internal api place.
Moreover rb_disable_interrupt() is wrong api and we may be removed later. 
There are two problems:

1)

rb_disable_interrupt()
..
rb_enable_interrupt()

is expand to 

    sigfillset(&mask);
    pthread_sigmask(SIG_SETMASK, &mask, NULL);

   ...

    sigemptyset(&mask);
    pthread_sigmask(SIG_SETMASK, &mask, NULL);


See? rb_enable_interrupt() ignore old sigmask and set signal mask to empty.


2) thread unsafe

pthread_sigmask() only change current thread sigmask. then other thread still be able to
be interrupted by signal. then, this api only work single thread context. MRI only use this
api when process creation time.


So, I have a question. Why do event machine need rb_disable_interrupt()? If I understand correctly,
event machine don't have single thread guarantee.

----------------------------------------
Bug #7474: I am getting undefined symbol: rb_enable_interrupt when running event machine
https://bugs.ruby-lang.org/issues/7474#change-34989

Author: sam.saffron (Sam Saffron)
Status: Feedback
Priority: Normal
Assignee: kosaki (Motohiro KOSAKI)
Category: core
Target version: 2.0.0
ruby -v: 2.0


I would like to cross report 

https://github.com/eventmachine/eventmachine/issues/389

Clearly this breakage could be "on purpose" not sure who should be fixing it. 


-- 
http://bugs.ruby-lang.org/

In This Thread