75ce78429ee220349e3e01aa874e918e1eb1745f
|
2010-04-06 |
* vm_core.h: Introduce UNINITIALIZED_VAR() macro. |
ceb62c31a1351422c208282a755d6eb3e0073a17
|
2010-04-07 |
* misc/ruby-mode.el (ruby-mode-map): binded C-c C-c and C-c C-c C-u to comment-region and uncomment-region. Thanks Michael Klishin! [Feature #872] [ruby-core:20552] |
51ba9a6b14207bd95b55727962b56b3c74855cb2
|
2010-05-21 |
* cont.c (fiber_setcontext): Use swapcontext() instead longjmp(). |
827a17bdbbadc27ddcb602a761e4af1295ba60e4
|
2010-05-28 |
* thread.c (blocking_region_begin): avoid RUBY_VM_CHECK_INTS() |
4fd8930898802ea8c34a280f71b7bcfdb7560ac4
|
2010-09-25 |
configure.in: Always add -mieee for Renesas SH4 |
b2f69c4c1fccbd07200974767a46178a8fccda4b
|
2010-12-14 |
* test/ripper/test_parser_events.rb (TestRipper#test_block_variables): |
b61c256181cf660a4d55acb17d9da8da448e420f
|
2010-12-14 |
* ext/openssl/ossl_x509ext.c (ossl_x509extfactory_set_config): |
cc9b886691bc4d2f9b81edc5583c929fda7ea769
|
2010-12-16 |
* io.c (rb_io_advise): New API. IO#advise() allows to tell the ruby runtime how it expects to use a file handle. This feature can be improved a performance some situations. Note: This feature is mainly developed by Run Paint Run Run. Thank you! [ruby-core:33110] [Ruby 1.9-Feature#4038] |
39058e1d876cccf7f721925b57cd6bf43ff040d5
|
2010-12-16 |
Fix indentation |
a3ba982c75719cbe4e3372ad73d3f4cee9caae59
|
2010-12-19 |
* io.c (Init_IO): Added O_DIRECT. This feature was propsed by Run Paint Run Run. [Feature #4015] [ruby-core:33018] |
237edd7a2f7fc63babff283fae20a5ccd831ff54
|
2010-12-20 |
|
7503f1934669b2a50ffabe5394148fa8ddb7dfa2
|
2010-12-20 |
* error.c (exit_success_p): Check status code more carefully. status code may have garbage in upper bit. |
97da02b2a6acc8e8cd5440413c85df41783ba9e9
|
2010-12-20 |
* thread.c (thread_cleanup_func): Don't touch native threading resource at fork. Sadly this is purely bandaid. We need to implement proper fix later. [Bug #4169] [ruby-core:33767] |
1ff6a1953cafbec8ec93fe07112599f59c7cb873
|
2010-12-20 |
* thread.c (thread_cleanup_func): Moved interrupted_lock destroying code from native_thread_destroy() to thread_cleanup_func() because it's platform independent logic. |
12b8ff1f464e86df401ccc7b532a0e0074f0babb
|
2010-12-20 |
* error.c: Fix build error for win32. This regression was introduced by r30271. |
402402741dccdda8d52e548cc9dc89b806d852f9
|
2010-12-25 |
* ext/pty/pty.c (chfunc): Added rb_thread_atfork_before_exec(). We must reinitialize GVL when new process creation. Otherwise we may meet an insane deadlock. [Bug #4121][ruby-dev:42686] |
47a1cd1291f1f52cc8d36cb533e0d653d128930a
|
2010-12-25 |
* signal.c: change rb_atomic_t definition from uchar to uint. |
e271684d2fc7d0d3b6a86a46e2c34c7593dcb35d
|
2010-12-25 |
* thread.c (rb_thread_atfork): Add small comment why we need reset random seed. |
c9958d6ab46bb5562dbb67fad116b176a0fba9fc
|
2010-12-25 |
* io.c (pipe_open): Added rb_thread_atfork(). We must reinitialize GVL at new process creation. |
6bd4afaab89b7542eac3273fce55e02e61edb828
|
2010-12-25 |
* ext/socket/extconf.rb: Fix build error which was introduced r30372. |
085e40d45b94285415e4a9909a32fc0532a210c3
|
2010-12-25 |
* io.c (advice_arg_check): Change argument check. Now, an unsupported advice makes NotImplementedError. [ruby-dev:42887] [Ruby 1.9-Feature#4204] |
5d276ea14a84de7fd204dfd635ac7b6d17ea9039
|
2010-12-26 |
* process.c (before_exec): add small comment. |
43b4bae567b4580fbfcb143b7812ce180144959c
|
2010-12-26 |
* win32/Makefile.sub: fix 'nmake clean-enc' breakage since r28322. |
205cc6c068ae48f1ec9d7f78c0c228f70855ab97
|
2010-12-26 |
|
0585d81d51fa95cbe6e57b8e03c985890b2ad125
|
2010-12-27 |
|
918a712cf87f0dfec943069b617d1763e7f824a8
|
2010-12-30 |
* Makefile.in: Kill ugly line continuation. |
78f6130528002fc63dcaa9260f0f7e6727e42a29
|
2010-12-30 |
* Makefile.in: Check V=1 argument if run "make clean" or similar. |
962b75384e4b6b388806fa3ff8d4381a2329ccb4
|
2010-12-30 |
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30431 b2dd03c8-39d4-4d8f-98ff-823fe69b080e |
caab5dcee77d8278fdf578334b6d4e7f8595052e
|
2011-01-12 |
|
da235830b561960905d62604fa0dc6b56e640900
|
2011-01-12 |
|
b1f8bbf4f7fca70b3a173932f2f3c9cfed07b075
|
2011-01-12 |
|
6d6fe7fe6b430c39bcb05106994eb67a9486d580
|
2011-01-19 |
* proc.c (proc_call): Add gc guard to avoid segfault. The fix is created by Tomoyuki Chikanaga. [Bug #4238][ruby-dev:42963] |
1a3950e2946026780d973b294d4c49c8d9e346f0
|
2011-01-20 |
|
d41d2f26ceeca3078aa8faff704e571247eb87e8
|
2011-01-20 |
|
c940b3939a66ab3c7d838ad1511f8b31c9791006
|
2011-01-20 |
|
7fd0d4a4d39f99f526cf14f092f330970d71a6a0
|
2011-01-20 |
|
fe505c47c86e6ee6db45096913f81f29bf15c523
|
2011-01-22 |
|
99ef86707ced54a1aa5a0c741cf09205f1a9e5a0
|
2011-01-23 |
|
b9c0b5039c77095b36e35dc3227458b09631dd78
|
2011-01-23 |
|
2ec31553eabe374a1f8c1b8edf0d2bb4c548949f
|
2011-01-24 |
|
cab9751e97e6bfca2f34c8d52a818808ed559ebe
|
2011-01-24 |
|
68823fdea5ea47cf056c95b4e45c48c66f55c157
|
2011-01-24 |
|
21931d6aa2fb5dc0b2d058323cba33bc5772653e
|
2011-01-27 |
|
18c11392aff96003cc6713b447a160c20d66a0a6
|
2011-01-27 |
|
ab720532ef884a69fbf9dc104b8a113b5a6c9a18
|
2011-01-27 |
|
f7fb66bd356454614a4d6a2181f18d8b586418cf
|
2011-01-27 |
|
2529d2c38d985f8c5952f9562b974b3b54de7a72
|
2011-01-27 |
|
8d397b77ead6baeaab1b5da45c83a3a2fb1043e4
|
2011-01-27 |
|
ac0178910ec628875dc81ee41f18b3a1757b18a8
|
2011-01-27 |
|
5a00a61681fa8d400507940600151068e69ca1b9
|
2011-01-27 |
|
6c2b2c285372a8b5e3457058ff85ecf327e4e105
|
2011-01-27 |
|
41bbb319ddf1fad6b79c79107d3a865bc859b971
|
2011-01-27 |
|
1e60af4d6779e739d205ef63f05ebfd3fb2f7223
|
2011-01-27 |
|
58da04b39852dd1ba58db70a1986a5923baf5531
|
2011-01-27 |
|
92c1dfd9d2b3680c156a4657e3f44a956dc834e0
|
2011-01-28 |
|
4afa5fead876c3b732bb7bba3674231704b9df96
|
2011-01-28 |
|
39473b88a9b523511bcada7fe19dabbc96a86e3f
|
2011-01-28 |
|
cb1366b48f788e9a5655961d0ea73b0908f72223
|
2011-01-28 |
|
e5971e8c7e21136c509a3c2b3967352a2e064e51
|
2011-01-28 |
We don't only need to change "struct stat.st_size" test, but also need to change "struct stat.st_blocks" test. |
aea93cbed83381b9ef63c2b7cbcb2d882ea5168f
|
2011-01-28 |
|
29422e5d31cd632f796966c9d4e9b32ca2368540
|
2011-01-28 |
|
65269855223a070eeb185cc223f54b2eac1b0160
|
2011-01-28 |
remove unnecessary local variable. |
bacc7e6a42073d60107e4a385a40807b2ba52e91
|
2011-01-28 |
|
a3d861ef2fb6fa47d7244d26b6de1821d6ee4010
|
2011-01-28 |
|
36f71db31eca74cfc3f978b820c96af895211851
|
2011-01-28 |
|
3a0ec6810909b8da01427bc1f38c02f4e370807e
|
2011-01-28 |
|
cb96213fad6e137f79a70babc31b2830d3d0d81a
|
2011-01-28 |
|
77a7137c4b3e30276af6d4271de9aea6531c621f
|
2011-01-28 |
|
1195ba6644dd68123beeaa1efc228f8e7cfad4b1
|
2011-01-29 |
|
eea774d0295e422a5231124c25aae11c39fb2abd
|
2011-01-29 |
|
7fb70b4e0fe9ecfbc66a06c9dbeee766960a5eb1
|
2011-01-31 |
|
6e2a194fa71f136f5911e8b3dc60ef0aae962ad8
|
2011-02-01 |
|
6909ea443fee4daadfad78df81ab4577c30b5ace
|
2011-02-01 |
* include/ruby/st.h (st_table): Added comment why we need __extension__. |
3722e3a29aedcdd78ad07e3ed643a78b61ef345a
|
2011-02-02 |
|
aa36d4df21113a36c2e368e0abb417480a6eebbd
|
2011-02-03 |
|
e0d1e2453b35f4b8ed4d57fd0205538fec3babb6
|
2011-02-04 |
|
034540dbc1f761221c1977465b13b00b4f558108
|
2011-02-04 |
|
49f8799af4d612ea164f800645222d15cfc6ae02
|
2011-02-05 |
|
e66eec9284c74312de747633cb048b5bd95d8bc5
|
2011-02-05 |
* lib/test/unit/assertions.rb (Test::Unit::Assertions#assert): revert r30796. r30797 and r30798 are an alternative fix. [ruby-dev:43174] |
a9c7af3b6e3cf06977a5346cbe2ab287a652551a
|
2011-02-08 |
* configure.in: revert r30725. Now we have proper runtime fallback. Therefore, no need compile time disabling. (see r30762). |
411e4a6cf2570a0d59cb7a4c52fec22563bcae03
|
2011-02-08 |
* process.c (rb_run_exec_options_err): use MODET2NUM() instead LONG2NUM(). |
0559227e870c5d0119a6818c5e050be673602f0e
|
2011-02-08 |
* io.c (rb_io_s_sysopen): use NUM2MODET() instead NUM2UINT(). |
0042bbc1c1757177be0742cf1dce692dbe58a407
|
2011-02-08 |
* configure.in (AC_MSG_CHECKING): fixed typo. the patch is created by Benoit Daloze. Thanks a lot. [Bug #4384][ruby-core:35148] |
e0258fa04bb96000ae50073cf2fe365fb6ac32b5
|
2011-02-09 |
* array.c: documentation clarification in rotate, rotate!, index, and rindex. [ruby-core:35144] |
cee21ad215f48c3d15f5d5d939fb4ca1c8950f1b
|
2011-02-14 |
* test/ruby/test_system.rb (TestSystem#test_system_at): added test. [ruby-core:35218] (#4393) |
8068d73cc11957c37a6869d4e0325191f7a9a040
|
2011-02-14 |
* test/ruby/test_system.rb (TestSystem#test_system_at): added test. [ruby-core:35218] (#4393) |
c6e6380665c83a54d32c0a7ee2ff80d6705a778b
|
2011-02-14 |
* win32/setup.mak (USE_RUBYGEMS): fixed r30835. It didn't work on mswin32 port. If you changed win32/configure.bat, you should change setup.mak too. |
61a4ee9b6841a18864060f3b4636711e12a71485
|
2011-02-15 |
* configure.in: fix and resubmit r30621. [ruby-dev:43203] |
36a0a1a3f3d6ede4c8d42c3beb2e5c24ea649f3c
|
2011-02-16 |
* eval_jump.c (rb_exec_end_proc): changed at_exit and END proc evaluation order. [Bug #4400] [ruby-core:35237] * eval_jump.c (rb_mark_end_proc): ditto. |
df52785d301a991332d0bff7b37bcee31133a7c0
|
2011-02-19 |
* signal.c (sig_trap): avoid pthread_sigmask(xx, &mask, &mask) usage because FreeBSD don't permit it. If it's used, it behave as pthread_sigmask(xx, NULL, &mask). |
deeda1ca87cfc80df8d7200f92b1e6287a39f80c
|
2011-02-20 |
* test/ruby/test_system.rb (TestSystem#test_system_at): add testcase for bug4396. |
f0f7079d48c2b154341e8bd8464b845ef992739d
|
2011-02-27 |
* test/ruby/test_system.rb (TestSystem#test_system_redirect_win): add test for system(). |
4a57c5e7d961e457826ea5dabb758b249d8faeb0
|
2011-02-28 |
* win32/win32.c (rb_w32_spawn): use shell if a commandline contain double-quote character. * win32/win32.c (is_internal_cmd): similar, use shell if a commandline contain caret character. |
af3e36158fd820634cfed1ad318c87152690d086
|
2011-03-01 |
* test/ruby/test_system.rb (TestSystem#test_system_at): remove tests for [bug#4396]. because we decided to reject this ticket. |
62374161f1627843294f4f3836af085dd70eaa59
|
2011-03-04 |
* configure.in: save warnflags. the patch is created by Eric Wong. [Bug #4465] |
ff077097774f94b7b69b8d0ebcdea2638e906ec0
|
2011-03-04 |
* io.c (io_cntl): change 'cmd' type to int. ioctl and fcntl need to be passed int. * io.c (rb_io_ctl): ditto. |
c0359f81764e30ad041b152aeea1a2c0a95c3ccb
|
2011-03-04 |
* io.c (io_cntl, nogvl_io_cntl): IO.fcntl() and IO.ioctl() release GVL during calling kernel interface. Suggested by Eric Wong. [ruby-core:35417][Bug #4463] |
a474b0e3f72533159f87a6efd52a4bc3028467fe
|
2011-03-05 |
* test/ruby/test_io.rb (TestIO#test_fcntl_lock): small clean up. |
b2a8d109b65d4cf16d1c057b7bca8e25ac674630
|
2011-03-05 |
* io.c (io_cntl): use rb_thread_io_blocking_region() instead rb_thread_blocking_region(). |
97f07f096843beec98c13063a2d561e017a4ce6b
|
2011-03-06 |
* sample/list.rb (MyElem#initialize): initialize @head explicitely. Otherwise -W2 option makes following warning. "warning: instance variable @head not initialized". This issue was founded by Andrew Grimm. Thanks Andrew! [ruby-core:35435][Bug#4471] |
aca674c2e7c0c99c9caf11e7fe46621b16d57bb5
|
2011-03-06 |
* process.c (maxgroups, proc_setmaxgroups): increase max groups limitation up to 65536. |
beed971728f8789d8e2daac0567d109bff21cb2d
|
2011-03-06 |
* process.c (proc_setmaxgroups): added negative value check. This was suggested by Daniel Berger. Thanks Daniel! [ruby-core:35426][Bug#4467] |
b1329e3b63193730837e189b927a97cb1d73f3ba
|
2011-03-06 |
* configure.in: rlim_t use standard RUBY_REPLACE_TYPE mechanism. |
c6bb8beb5294ce1162ea0f088707a9fe167449a7
|
2011-03-06 |
* process.c (proc_getgroups): get rid of maxgroups dependency. ngroups can be calculated dynamically. |
1a8ee910f3f923f50e2b21cd55b8d3ae50eac85a
|
2011-03-07 |
* process.c (proc_getmaxgroups, proc_setmaxgroups): refrect platform maxgroups limitation by default instead hardcoded 65536. |
19a127d0cbb9a94b530add65f118252e94551bb9
|
2011-03-07 |
* process.c (proc_setgroups): replace getgrnam() with getgrnam_r() because getgrnam() isn't thread safe. |
52b40be04b961a38379d559b3a10d8a6252ba43b
|
2011-03-07 |
small cleanup. |
d558bb59c8d9c752babe1249cc1932126feebf7e
|
2011-03-08 |
* process.c (get_sc_ngroups_max): try to use NGROUPS_MAX at first if _SC_NGROUP_MAX is not defined. |
776156243cc7dc25a19bac50d6a06efa62016a4e
|
2011-03-08 |
* process.c (proc_setgroups): cleanup. |
4a8cf2d92d85aa1fad8a388186d8a5025c694d47
|
2011-03-10 |
* process.c (get_sc_ngroups_max): return -1 if platform don't support NGROUPS_MAX. |
bd90dc80f29a09376e04f5f1b6adbe17806a67fa
|
2011-03-10 |
* process.c (proc_getmaxgroups, proc_setmaxgroups): Process#maxgroups and Process#maxgroups= now raise NotImplementedError if the platform don't support supplementary groups concept. |
f35a7770cd9ceeb88411f23b3595c4bf6ec78d79
|
2011-04-03 |
* io.c (io_reopen): IO#close releases GVL if possible. close() may block for certain file types (NFS, SO_LINGER sockets, inotify), so let other threads run. The patch was created by Eric Wong [ruby-core:35555][Bug #4527] |
f4755f214c91c726ba264d3053680da1ac59cbf7
|
2011-04-03 |
* configure.in: disable fdatasync again on Mac OS X. [ruby-core:35493][Bug #4500] |
3ba502d5f01a39b4adfd456ffc29f0f13c106267
|
2011-04-04 |
* io.c (rb_io_syswrite): While local FS writes are usually buffered, the buffers can be full or the file opened with O_SYNC. IO#syswrite can also be used on blocking IOs (pipe/socket) just like IO#write. The patch is written by Eric Wong. [ruby-core:35554] |
78ea7afe97241b7a8a8176f680865430779e7d68
|
2011-04-04 |
* ext/io/nonblock/nonblock.c (io_nonblock_set): Avoid F_SETFL if we're not changing the O_NONBLOCK bit. F_SETFL is an expensive operation since it needs to affect all processes with the same file object. The patch is written by Eric Wong. [ruby-core:35556] |
3b011d1a00dcad0ae960800778070ec565fcef7e
|
2011-04-11 |
* file.c (rb_group_member): kill 256K of stack usage. the patch was written by Eric Wong. [ruby-core:35699] |
616f70fcf6c81ca70b46951ddf605008a2848a92
|
2011-04-11 |
* test/ruby/test_io.rb: Added TestIO#test_cross_thread_close_stdio and TestIO#test_cross_thread_close_fd. The patch was written by Eric Wong. [ruby-core:35669] |
0f771e33e2c3be4bc6316d6f4a930ba67ed0a9a3
|
2011-04-11 |
* io.c: revert r31230. |
8c5961f6f9b0387647e233be8652f23e609d68c2
|
2011-04-14 |
* lib/fileutils.rb (FileUtils#touch): fix corrupted output when FileUtils.touch(:nocreate => true, :verbose => true) case. The patch was written by Hiroyuki Iwatsuki. [ruby-dev:43401] |
f5c7d1074fd5f4836aeae851eab819565cdfc6f2
|
2011-04-14 |
fix ChangeLog description. |
8ff8d6196141b72cc1f7197aad7f99e7579d944e
|
2011-04-24 |
* string.c (rb_to_id): remove unused variable. |
74c5e807f7e5f8cd9a041fe2e12e960d47f9c651
|
2011-04-29 |
* thread.c (rb_mutex_lock, lock_func): Avoid busy loop and performance degression. bm_vm3_thread_mutex.rb performance change from 109.064sec to 16.331sec. |
6998f013ab594d3f2499155b1076e45eedf70e34
|
2011-04-29 |
* thread.c (lock_func): small cleanup. |
7ff7a2b376478fe3377a9c2dfdea43e3dde326ff
|
2011-04-29 |
ChangeLog change. |
e4ba4b79b657f784ab52a339958c1ebb2320e906
|
2011-04-29 |
* vm_method.c (rb_clear_cache_by_class): Revert r29673. It made a segmentation fault regression. [Bug #4289][ruby-core:34554]. |
3c24bc37a00901427add4f96f7f37411a0eb8da5
|
2011-04-29 |
* benchmark/bm_vm4_pipe.rb: Add two new benchmark for GVL performance. They was written by Koichi Sasada. * benchmark/bm_vm4_thread_pass.rb: ditto. |
eaca3529f2bbb9d40e887c29b3696a0cfbdd2ce5
|
2011-04-29 |
set svn:eol-style property |
9d4ae4ab0c5b17e48939457bc9d4cf45ac412d26
|
2011-04-29 |
fix indentation |
b4c5fad4b1b435f081dd552ad29040a9edb1457f
|
2011-04-29 |
* thread_win32.c (native_cond_timedwait): New. r31373 caused win32 build failure. |
ada9870af9da1443fe7be51ee50c98cdbfb53c45
|
2011-04-29 |
* thread_pthread.c (gvl_init): fix hangup if GVL_SIMPLE_LOCK=1. We don't have to call mutex_unlock() before initialize it! |
58e414b85e913e96f949d9c1502114e13cd9f453
|
2011-04-29 |
* include/ruby/win32.h: remove redundunt declaration of rb_w32_time_subtract(). |
1bbab743982f1d7bf289f5d388ddba355143e3a8
|
2011-04-29 |
spell fix |
d4dcad874646a949f704dfa96aa1bbcff610236e
|
2011-04-29 |
fix eol-style |
b48537cd269a9b150c4ebde2efe80a424ea0165e
|
2011-04-29 |
* test/io/wait/test_io_wait.rb: New. for testing ext/io/wait. the patch was written by Eric Wong. [Feature #4531] |
568c934373ce149ac10afcc62d41e5f44eff56ac
|
2011-04-30 |
* benchmark/bm_io_select.rb, benchmark/bm_io_select2.rb: New. based on a patch from Eric Wong at [Feature #4531] |
98c7ca9b65be4bc102463d1c90142094e8d05c42
|
2011-04-30 |
* io.c (copy_stream_body, rb_io_s_copy_stream): move rb_fd_init() from copy_stream_body to rb_io_s_copy_stream. fds of passing rb_fd_term() have to be guaranteed initialized. |
5201602c276115ae4be8442d73c567c95af22f7b
|
2011-04-30 |
* benchmark/bm_io_select3.rb: New. |
4c926e9f15c42ef789e0af5ca2f15dc6188d1b3c
|
2011-04-30 |
* thread.c (do_select): remove useless ifdef. time calculation is not heavy weight. |
2d2544c8e66ce6cc0973611145d442a165a9c663
|
2011-04-30 |
* include/ruby/intern.h (rb_thread_select): mark as deprecated. |
225fa965bc5807a356b94944916af0573ab692a9
|
2011-04-30 |
* thread.c (rb_fd_copy): Change function argument. Now rb_fd_copy() has fully copy semantics. * include/ruby/intern.h: ditto. |
3c68095b8a0d665b9ae94ec3c48fa4f30b3fb86a
|
2011-04-30 |
* thread.c (do_select): Change arugment type to rb_fdset_t. Now do_select() is free from unexpected hangup if HAVE_RB_FD_INIT=1 [Bug #4636] |
04202dc83dde72db03d72227841c6dddbd41a925
|
2011-04-30 |
* win32/win32.c (rb_w32_fdcopy): New. This can copy even though fdset size exceed FD_SETSIZE. * include/ruby/intern.h (rb_fd_copy): use rb_w32_fdcopy() |
e140be695630daf179cd6ef1180a12409d9fc2e9
|
2011-04-30 |
fix commit mistake of r31389. |
4d88169267a8614c36e9fbe389dd3fadba25cdc5
|
2011-04-30 |
* thread.c (rb_thread_select): release GVL while waiting select(). |
49b4510cd1ca220e9ec51ad269c6544ca9610ca3
|
2011-05-01 |
* ext/socket/init.c (rsock_connect): add to care EINTR. based on a patch from Eric Wong at [ruby-core:35621][Bug #4555] |
0a1e7d1568584f22f743347c5e3b64dbf705dd83
|
2011-05-01 |
* lib/fileutils.rb (FileUtils#chmod): accept symbolic mode argument. The patch was written by takkanm. [ruby-core:26029][Feature #2190] |
50522eb35172c4887b5a35919ebe8c52f00bfe71
|
2011-05-03 |
* test/fileutils/test_fileutils.rb (TestFileUtils#test_chmod_symbol_mode): Skip sticky bit test if the platform is FreeBSD. It doesn't allow to change sticky bit if a target is regular file. |
f081eca1d7ca95a15989c2b59230430ff3dfe708
|
2011-05-03 |
* thread.c (rb_fd_copy): fix wrong argument.This issue was pointed out by Eric Wong. [ruby-core:35982] |
9be37ca7d51513658f5f84d98fa5e46026cc5a04
|
2011-05-04 |
* thread.c (rb_wait_for_single_fd): new. * thread.c (select_single): select(2) based backend for rb_wait_for_single_fd(). |
249fe0e74252af65c3e2e47a5e9e27eb839ad7c0
|
2011-05-04 |
* thread.c (rb_wait_for_single_fd): new. poll(2) based backend for rb_wait_for_single_fd(). Now only Linux uses it. |
cd796c609fec41b412a78bd742c723b1d8319c61
|
2011-05-04 |
* ext/io/wait/wait.c (io_wait): use rb_wait_for_single_fd(). The patch was written by Eric Wong. [Ruby 1.9 - Feature #4531] |
82b2e8012048cdc6f6ee7659fdb25ffa53945d02
|
2011-05-04 |
* ext/socket/init.c (wait_connectable): use rb_wait_for_single_fd(). The patch was written by Eric Wong. [Ruby 1.9 - Feature #4531] |
4da4cb0421fbdd5c7a825addcda9c8725e86c844
|
2011-05-04 |
* ext/readline/readline.c (readline_event): use rb_wait_for_single_fd(). The patch was written by Eric Wong. [Ruby 1.9 - Feature #4531] |
9851b0ce2fbc5934ddd00434048be4273f41102d
|
2011-05-04 |
* ext/socket/init.c (wait_connectable): fix error handling code. RB_WAITFD_OUT is turned on even though an error occur. |
d7fa4d837eff72adae21f0504fa9ccacab7f7019
|
2011-05-04 |
* io.c (rb_f_select): remove useless ifdef. |
951b0901302d851bac96341f181c8f0a1ece54d1
|
2011-05-04 |
* thread.c (rb_wait_for_single_fd): Added POLLNVAL check. based on a patch from Eric Wong at [ruby-core:35991]. |
2a989121db8f80aceeadb5d403af79d4b30e1bb8
|
2011-05-04 |
* ext/-test-/wait_for_single_fd: New. for testing rb_wait_for_single_fd() internal function. The patch was written by Eric Wong. [ruby-core:35991] |
c06da4735da0e2285c1e3e52202b7090b3f43b1b
|
2011-05-04 |
* thread.c (rb_wait_for_single_fd): Fix wrong return value. * test/-ext-/wait_for_single_fd/test_wait_for_single_fd.rb (TestWaitForSingleFD#test_wait_for_closed_pipe): test for it. |
be62297f9230c4cf8d73321c5c9e28037b35fc1d
|
2011-05-04 |
* io.c (Init_IO): Added File::CLOEXEC constant. [ruby-core:22893] [Feature #1291] * test/ruby/test_io.rb (TestIO#test_o_cloexec): test for File::CLOEXEC. |
512624b62839f5ffe0faebfceb49411b10ee38bf
|
2011-05-04 |
* benchmark/bm_io_select2.rb: reduce number of using file descriptors. because gdb need some fds. |
674a33edf51e5b5a47f78b2794500ad2e61c69c3
|
2011-05-04 |
* test/date/test_date_base.rb: don't use no message skip(). |
f5b0f04d2ae2fdbf94f0a061a40693d84a863e0e
|
2011-05-04 |
* benchmark/bm_vm4_pipe.rb: Reduced iterations. Too slow benchmark is bad. * benchmark/bm_vm4_thread_pass.rb: ditto. |
b5d612e0df4b77f7918323d25d7b46ccdd2756d9
|
2011-05-05 |
* thread_pthread.c (native_mutex_reinitialize_atfork): removed unused macro. * thread_win32.c (native_mutex_reinitialize_atfork): ditto. |
25d040780fcff44b3b03062d1d2c4540df7b33ef
|
2011-05-05 |
* test/ruby/test_io.rb (TestIO#test_O_CLOEXEC): fix false positive detection. |
066eecf53a762521891c46199c2e8c11a35fb8dd
|
2011-05-06 |
* configure.in: remove nanosleep check. we no longer use it. r20124 removed last usage. |
4a9883e92f856bf7db773e0ddc72f17a8662b75a
|
2011-05-06 |
* thread.c (rb_wait_for_single_fd): use ppoll() instead of poll() if possible. based on a patch from Eric Wong. [ruby-core:36003]. |
a1cfaf4b1f199d078f5168dcbc37a83250666ed4
|
2011-05-06 |
* thread_pthread.h (rb_thread_cond_t): add clockid field. it's no longer an alias of pthread_cond_t. * thread_pthread.c: adapt new rb_thread_cond_t type. * thread.c (mutex_alloc): ditto. * thread_win32.c (native_cond_initialize): ditto. * configure.in: add check for pthread_cond_attr_setclock() and clockid_t type. |
54b50fbb9c5a62a5dbefc40568985b23eb4d1238
|
2011-05-06 |
* thread_pthread.c (get_ts): add monotonic clock capability. * thread_pthread.c (rb_thread_create_timer_thread): use monotonic clock if possible. |
b2ea836ae705cc690d1230476e6eb97e92e7ef52
|
2011-05-06 |
mutex: deadlock check timeout use monotonic time. |
604a1e2e22b1e8a841a6d3f6d0c870eb504306f3
|
2011-05-06 |
fix win32 compile error. |
7ac6b706b418db4311ce64219c6156ec628453de
|
2011-05-06 |
sleep_cond use monotonic time if possible. |
471fb33b1a140973a3e3f6168f16b67bee95b4cd
|
2011-05-07 |
fix mutex deadlock test hang-up. |
94e4d61bdaad74e0f31bb6d69521784303a0cb5e
|
2011-05-07 |
fix win32 native_cond_timedwait() makes SIGSEGV. |
fa319c5774ff479e0961f0710aff206f52231f86
|
2011-05-07 |
fix incorrect native_cond_signal call when deadlock was detected. |
562a1a79297d00b9ac92498173ad1fcba9fc5f51
|
2011-05-07 |
remove debugging code |
ddcd5c2939771129c779bad077bbacc59cd7679a
|
2011-05-07 |
r31460 is wrong fix. fix it again. |
156ccab7964ae35fa2bcdb0e0a9c5f11192aa848
|
2011-05-07 |
* thread.c (rb_fd_init_copy): new internal api. It provide efficient copy constructor semantics. * thread.c (do_select): use rb_fd_init_copy(). |
9468e945c8877af9d33044e5813627282a7700f4
|
2011-05-07 |
* thread.c (rb_fd_init): remove volatile qualifier. |
76734388a22c1ffed89e18d916a4215034898b39
|
2011-05-07 |
* thread.c (rb_fd_zero): remove redundant zero fill. |
70e9201610cf83408f5e408571a48b7eab8cc5fa
|
2011-05-07 |
* test/io/wait/test_io_wait.rb: skip tests if the platform is mswin. |
16846eb90cda0d82a26d9c724d29672ae309fc6d
|
2011-05-07 |
* test/io/wait/test_io_wait.rb: use Socket.pair instaed of pipe. Windows can only treat a socket. |
f23fa4b01140758c8327bf2a8f0cf48a1de75cd5
|
2011-05-07 |
* test/io/wait/test_io_wait.rb: Linux socketpair(2) only support AF_UNIX, but windows socketpair doesn't support it. we can't avoid platform check. sigh! |
a3fd4cf507a137e78366c6d1190ddd584bc48b4a
|
2011-05-08 |
* thread_pthread.c: cleanup signal_thread_list related ifdef. 1) we don't have to use #ifdef FOO-PLATFORM directly 2) About half #ifdef didn't care symbian properly. |
c878761f3b992366d4da92d6120d28070281081a
|
2011-05-08 |
* thread_pthread.c (add_signal_thread_list): use xmalloc instead of malloc. * thread_pthread.c (remove_signal_thread_list): use xfree instead of free. |
1816a4a6a994f6437b6b741fa3a84bfb4c827c04
|
2011-05-08 |
revert r31474. we cann't call xmalloc under FGLOCK. |
19f52b87408263faba97f91404d84d4ef707bab6
|
2011-05-08 |
* thread_pthread.c (native_cond_timedwait): add to care EINTR. * thread_pthread.c (thread_timer): remove EINTR check. |
836a8cf2149f214d86e31f07884530ed10d86653
|
2011-05-12 |
* io.c (select_internal): remove unused variable (interrupt_flag). |
3ad44e0aa18ff335cf110d8da11d92af82e2ad51
|
2011-05-14 |
introduce missing/setproctitle.c |
17807148446025ca1ad49a291edf0ea309a8e9d7
|
2011-05-14 |
* missing/setproctitle.c (compat_init_setproctitle): use ruby_strdup() instead of strdup(). |
4c79752cdfd315b2cb0e933bb4196ca04696b89a
|
2011-05-14 |
* test/ruby/test_rubyoptions.rb (TestRubyOptions#test_set_program_name): add for $0 test. |
d19cda5fa6a0f5a1395c47603e21d8db219c8280
|
2011-05-14 |
* missing/setproctitle.c: add to include "ruby/util.h". |
887063f44b21a9e7b2b1e7525de61d517474659f
|
2011-05-14 |
fix mswin32 build error. |
2b7996e83978097552b4a280ec9f9983401810e5
|
2011-05-15 |
* include/ruby/intern.h: remove rb_fd_copy() to rb_fd_dup() and rb_w32_fdcopy() to rb_w32_fd_dup(). * win32/win32.c: ditto. * thread.c: ditto. |
d734c9dea245305b31a3097387949bcf56351f71
|
2011-05-15 |
* include/ruby/intern.h: resurrect old rb_fd_copy(). * thread.c (rb_fd_copy): ditto. |
9e9543acb5e739b4f584e6a681f22bb7b59e27df
|
2011-05-15 |
* test/ruby/test_signal.rb (TestSignal#test_signal_process_group): skip if the platform doesn't have :pgroup capability. (i.e. skip if mswin32) |
39b1198410c6183c73513eea43cdfbfae65b1c88
|
2011-05-17 |
Fix FreeBSD test failure. |
44606925ff5bdba121f66b65dc0603079bf3b118
|
2011-05-17 |
* LEGAL (configure): add missing/setproctitle.c |
b9f3cd5a0c53304cf2611864a5ef750bdb7694d6
|
2011-05-17 |
fix r31606 |
30414014042210a895b5df3c3eaa86981e0b2e2f
|
2011-05-17 |
* vm_core.h (rb_thread_struct): add volatile to transition_for_lock because it is not protected by lock. |
63d3eec7c4f2aacc8f78b0d10571b0d256e813d7
|
2011-05-17 |
* thread.c (rb_mutex_lock): remove remove_signal_thread_list() call. It's meaningless because lock_interrupt doesn't call add_signal_thread_list(). |
b2d3995f4c8918bfd1ca5e9425242a64b9978291
|
2011-05-17 |
* test/ruby/test_io.rb (TestIO#test_O_CLOEXEC): add null check. |
da3d9e99dd50f0f99741ca2f90b051d59b4f7f93
|
2011-05-18 |
* lib/timeout.rb (Timeout#timeout): don't leak "execution expired" exception. [Bug #4283] [ruby-core:34534]. |
898374126e2c2632bc9bf0308407898af1f4ff82
|
2011-05-19 |
revert O_CLOEXEC patch series completely. because boron chkbuild test result says, An old linux kernel ignore O_CLOEXEC silently instead of return an error. It may lead to bring new security risk. So, we have to be pending it until finish to implement proper fallback logic. |
67cf354b465604d820ea51d4afcc14d681640a19
|
2011-05-21 |
* io.c (rb_io_extract_modeenc): accept combination hash and File::Constants. (eg. File.open('yo', :mode => File::WRONLY)) [Feature #4742][ruby-core:36338] * test/ruby/test_io.rb (TestIO#test_open_mode): new test. |
e48e12ec095836a665ab91969747ead59df9f464
|
2011-05-21 |
* thread.c (Init_Thread): add a code comment why the meaningless line is necessary. |
20f635d6b23332a5f3f4f6b0ffa1e2cf6d6b4089
|
2011-05-22 |
* test/ruby/test_rubyoptions.rb (TestRubyOptions#test_set_program_name): use spawn. it prevent that other tests inherit renamed $0. |
2a126b08a055ceacb6f540bd74e6d727f9d07883
|
2011-05-22 |
test cleanup |
78271e8c72c72f42b4150b9456de2dbb36410b2f
|
2011-05-27 |
* io.c (fill_cbuf): Fix test-all crash. |
724b1c60dcacd476b8a3d5ecf8170b4cd8bfb1b4
|
2011-05-27 |
* string.c (rb_str_bytesize): rb_str_bytesize() should use LONG2NUM(). Patch by Nikolai Weibull. [Bug #4789] [ruby-core:36511] |
412e9ba17447fc3460d8d1b2203cf53efa1b2ee7
|
2011-05-27 |
email addr fix |
e39b50d4b5531b84386862b47c3d3d273e6c32c7
|
2011-05-28 |
* signal.c (Init_signal, default_handler): change default SIGPIPE handler from empty function to SIG_IGN. [ruby-dev:43215] * signal.c (sigpipe): removed. |
ed02c4122a67f209c7c9c4ebdd09647d0ae88e6d
|
2011-05-28 |
* process.c (before_exec, after_exec): change SIGPIPE handler to SIG_DFL before calling execve(). Because r31760 reintroduced an issue that system() may hang up (i.e. [ruby-dev:12261]). * process.c (save_sigpipe, restore_sigpipe): new. |
bde7a62f9150d8a147c4e9b721ced4c2beb9600a
|
2011-05-28 |
* process.c (before_exec, after_exec): change from macro to function. |
e15b3c83b880aa2c2f07378095d1eba0214ca468
|
2011-05-28 |
* test/net/http/utils.rb (TestNetHTTPUtils#teardown): add nil check. |
dcc1f64cb0372de4a05ecc3989f07a3460d6ba6a
|
2011-06-01 |
* thread_pthread.c: remove unused macro. |
859da834551657478bec39e55058e987780fcc54
|
2011-06-01 |
* thread_pthread.c (native_sleep): fix 1000times calculation error. this is a regression since r31457. [Bug #4808] [ruby-dev:43606] |
4010bc1e84e4ddc563926072686c2fcb894f0e0a
|
2011-06-05 |
* thread_pthread.c (thread_timer): add to care a spurious wakeup. When native_cond_timedwait() return 0 by spurious wakeup, we don't have to neither 1) call timer_thread_function and 2) exit the timer thread. |
ecaf7975cdca4cca1d93c822091747dbd3900101
|
2011-06-05 |
* eval.c: remove rb_thread_stop_timer_thread function declaration. Instead, include vm_core.h. * process.c: ditto. |
58aa09cb146cffcc258420d63fbf40b349afdb3a
|
2011-06-07 |
* doc/irb/irb.rd: fix typo. patch by Nobuhiro IMAI. [Bug #4843] [ruby-dev:43639] * doc/irb/irb.rd.ja: ditto. * doc/ChangeLog-YARV: ditto. |
7eed90933c657e7cf5de50ae39ee0672dbb3d58e
|
2011-06-10 |
* ext/tk/tcltklib.c (lib_eventloop_core): replace CHECK_INTS with rb_thread_check_ints(). Because current code can't be compiled. |
1485f3c168d984d02af6530bbe2202b55d24f212
|
2011-06-11 |
* vm.c (thread_memsize): don't ignore size of th->local_storage. |
9d4e471cf974d99ab01fc243b5419c6711888540
|
2011-06-11 |
* vm_core.h (RUBY_VM_SET_TIMER_INTERRUPT, RUBY_VM_SET_INTERRUPT, RUBY_VM_SET_FINALIZER_INTERRUPT): use atomic ops for preventing interrupt_flag bit lost. * thread.c (rb_threadptr_execute_interrupts_rec): ditto. * vm_core.h (typedef struct rb_thread_struct): change type of interrupt_flag to rb_atomic_t. * atomic.h: move atomic ops definition from signal.c. * signal.c: remove atomic ops definition. * common.mk (gc, signal, thread, cont): add to dependency to atomic.h. |
29f7ea1b50209cbdb6be1e3f637ef1c7262c18be
|
2011-06-11 |
add to bug number |
614fcdf66c816b491527c760acb2fbef5c6b8650
|
2011-06-12 |
* thread.c: introduce spurious wakeup safe deadlock check. [Bug #4696][ruby-dev:43554] |
f0041fa0fddd9b5297c1840e7504bb0b04991c87
|
2011-06-12 |
* thread.c: remove th->transition_for_lock. It's thread unsafe. [Bug #4723][ruby-dev:43563] |
e3672626bf0de4d7b65e539caf575a5dfac7a048
|
2011-06-13 |
* thread_win32.c (native_cond_signal): remove unnecessary rb_bug(). It's addional fix for r32021. [Bug #4696] |
bcfc22b10e30771e692f7716a1fec7577373963e
|
2011-06-13 |
* thread_pthread.c: rewrite GVL completely. * thread_win32.c: ditto. * thread_pthread.h: ditto. * vm_core.h: ditto. * thread.c: ditto. |
afd1a64cd6ee73e69744a09242cc079b3f1f5170
|
2011-06-13 |
* thread.c (rb_thread_schedule_rec): call gvl_yield() unconditionally. * thread_pthread.c: remove HAVE_GVL_YIELD macro. * thread_win32.c (gvl_yield): new. this fallback logic was moved from rb_thread_schedule_rec(). |
82e6d95edc047cf39ac3e3c5f388c5624a35d77a
|
2011-06-14 |
* thread_pthread.c (gvl_yield): fix live lock issue on 1-2 cpus system. It's additional fix for r32021. * thread_pthread.c (gvl_init): add switch_wait_cond. * thread_pthread.h (typedef struct rb_global_vm_lock_struct): ditto. |
556cd0de071dcddd85c3d56b35d208250863f5b5
|
2011-06-14 |
add changelog explanation. |
7f6e8625bbb71d4cf0826b56e152509fda00bab1
|
2011-06-14 |
* benchmark/bm_vm4_pass_flood.rb: new benchmark for GVL fairness. * benchmark/bm_vm4_alive_check1.rb: ditto. |
c1bbb616d8be3f9f1231611b2576a6cea89033ae
|
2011-06-14 |
* benchmark/bm_vm4_thread_pass.rb: rename bm_vm4* to bm_vm_thread_*. suggested by ko1. * benchmark/bm_vm4_pipe.rb: ditto. * benchmark/bm_vm4_alive_check1.rb: ditto. * benchmark/bm_vm4_pass_flood.rb: ditto. |
2ebd80d1157fcab65d2d854a8a094aec9a849968
|
2011-06-15 |
* thread.c: remove BLOCKING_REGION_CORE() macro. It's no longer used since r32021. |
8923ba1ec9f7b8ebe6de729d5a54f2e2ccb202ff
|
2011-06-15 |
* gc.c: fix a regression by r31690 on AIX because AIX malloc return NULL if it's passed 0. But some caller don't expect it. patch by Yutaka Kanemoto. (vm_malloc_prepare): return calculated size. (vm_xmalloc): use above result. (vm_xcalloc): ditto. |
513e0ee53b684625f82ad1ef9862b089106fa3ea
|
2011-06-16 |
* test/ruby/test_io.rb (TestIO#test_copy_stream_socket): fix test hanging up issue. Patch by CHIKANAGA Tomoyuki. |
e290d7d98b07b132592227883753ce5a4088a259
|
2011-06-16 |
add a mail reference. |
e80b506ed9798ed9fc8af520cf9243e7de1cdab9
|
2011-06-16 |
fix revision off by one reference. |
3c23284734b60dac99339c300dff6c4bd2c226f4
|
2011-06-16 |
* thread.c (rb_thread_schedule_rec): fix {UN,}LIKELY macro misuse. * gc.c (rb_newobj): ditto. * vm_insnhelper.c (vm_method_search): ditto. |
ef86308a2c892d37a8961e531466c00b475275fe
|
2011-06-18 |
* vm.c, vm_core.h (rb_vm_stack_to_heap): remove const. It makes compilations warnings. |
e623ceb9f9092616be590b1f5e1a71ddbb18c0b3
|
2011-06-18 |
* thread_pthread.c: remove GVL_DEBUG |
2552e428f3f89adbec3a548cf7b943b6b1318c24
|
2011-06-20 |
* thread_pthread.c (thread_timer): rename timeout_10ms to time_quantum. it's no longer 10ms. |
1d110a14a44dce8a34be74821490a0ce303a64dd
|
2011-06-20 |
* process.c (before_exec): use sig_do_nothing instead of SIG_DFL for avoiding a race. * process.c (sig_do_nothing): new function. |
cb138bbaa6fdec9e9e8f6821e23130d6397677cd
|
2011-06-21 |
* test/ruby/test_thread.rb (TestThread#test_priority): enable this test again. Current GVL respect thread priority rather than past. |
97beed076f258ebe0835cbe496a7604e196db288
|
2011-06-21 |
* internal.h: move rb_thread_io_blocking_region() declaration from intern.h to internal.h. It's still experimental API and need more discussion. * include/ruby/intern.h: ditto. |
c9aef84c7a3c075b05a89c8f9737369f7f6c2303
|
2011-06-21 |
add ML ref to ChangeLog |
b9d9ea62b4c8479c95e29ac478d3a39f9008ea5d
|
2011-06-21 |
revert r32183 |
908baefe7da367539092994fdbc718a43772e956
|
2011-06-21 |
* internal.h: move rb_thread_io_blocking_region() declaration from intern.h to internal.h. It's still experimental API and need more discussion. [ruby-dev:43698] * include/ruby/intern.h: ditto. |
dc8f58f6e82c933ff3f8c68be29f6bccc8f31ca1
|
2011-06-22 |
* ext/socket/depend (SOCK_HEADERS): use $(top_srcdir) instaed of $(topdir). sorry! |
230be2a7715c55e1b0ff889bb2c77442ff2f0e8c
|
2011-06-26 |
* vm_dump.c (rb_vm_bugreport): change CrashReporter suggestion messages on Mac. It should be placed after "-- C level backtrace" line. Suggested by Endoh-san. |
ea3da57e1234b47f6c851d1760637fe627e9579d
|
2011-06-27 |
* thread_pthread.c: s/__gvl_acquire/gvl_acquire_common/ and s/__gvl_release/gvl_release_common/. |
d647b5358ed5c7f07b3aa500b40297568a882975
|
2011-06-27 |
* thread_pthread.h (rb_global_vm_lock_struct): add volatile to gvl->waiting. now thread_timer() access it w/o lock. |
f8cc7796801c48be0a31c892ec7e39b79b4f08ed
|
2011-06-27 |
* thread_pthread.c (consume_communication_pipe): change return type to void. caller doesn't use it. |
3639736d5d4ae60dad6e2221d2b95bb73d6b3576
|
2011-06-27 |
* thread_pthread.c (consume_communication_pipe): don't use C99 style variable length array. |
0148d41a13f0ce7ec5a83f93984fe7aaf9c0e2d2
|
2011-06-28 |
* signal.c: Now, USE_TRAP_SIGMASK depend on HAVE_PTHREAD_SIGMASK. The code have already depended on pthread_sigmask since r27464. |
b07b51f7fc03630e073ebd39006e0727e379ff71
|
2011-06-29 |
* thread.c (rb_thread_run): change RDoc. The old example is buggy and may cause deadlock. The patch is suggested by Heesob Park <phasis@gmail.com>. Thank you! [Bug #3606][ruby-core:31454] |
b3ad7b9ea14bd28606e871a6be9a7dba6201cb3d
|
2011-06-29 |
* thread.c (rb_thread_wakeup): change RDoc sample code. The old example is buggy and may not display anything by a race. The patch is suggested by Heesob Parrk <phasis@gmail.com>. Thank you! [Bug #3606][ruby-core:31454] |
3a9117011fdbcfd75e84cf5c0006bf357a20f959
|
2011-06-29 |
* thread.c (rb_thread_stop): change RDoc sample code. The old example is buggy and may cause deadlock. The patch is suggested by Heesob Park <phasis@gmail.com>. Thank you! [Bug #3606][ruby-core:31454] |
ed0876f66d98c3c2a6247a626d1889eba5d7cb2f
|
2011-06-29 |
* thread.c (thread_s_pass): change RDoc description and remove a sample code. The actual implementaion never behave as explained by an example. It's a documentation bug. |
5e15194561c45b4a123d0945b4de33f0bf2f2fe6
|
2011-06-29 |
* thread.c (rb_thread_schedule_rec): move interrupt_flag check to rb_thread_schedule(). And also rename to rb_thead_schedule_limits() and remove sched_depth argument. It's no longer called recursive. * thread.c (rb_thread_schedule): add to check interrupt_flag as above explained. |
c90ff68d3271b9b7e981152f11db6ea5f4f6061d
|
2011-06-29 |
* thread.c (rb_thread_schedule_limits): minor optimization. eliminate machine context saving when running time is enough small. |
6f1ce28d624007f1d7688865a782c3ba4ad376a0
|
2011-06-29 |
* thread.c (rb_threadptr_execute_interrupts_common): remove meaningless native_thread_yield(). It never close a race. |
c05fd75befe5b6021e7926452d6813c3472f540f
|
2011-07-01 |
* thread.c (do_select): fix memory leak. Patch by Eric Wong. Thank you! [Bug #4953] [ruby-core:37702] |
f44446c45d8875d5e5d6e556da8d1ff3d4452cab
|
2011-07-01 |
|
5a73c71dcf4b32c9c30f2cb68bac1d274839488f
|
2011-07-02 |
* thread_pthread.c (get_stack): add to a care of gurad page on Mac OS X. [Bug #1813] [ruby-core:24540] * signal.c (ruby_signal): SIGBUS use alternative stack too. * signal.c (sigbus): On Mac, thread stack overflow makes SIGBUS instead of SIGSEGV. thus, added stackoverflow check. * signal.c (default_handler): get rid of compilation warning. * signal.c (Init_signal): ditto. |
70dd402cd8357097d1090972585fe23bc940ae41
|
2011-07-02 |
* thread_pthread.c (get_stack): pthread_attr_getstack() doesn't return stack start addres, but stack base address. Thus, we need to add stack size for getting stack start address. And, we don't have to decrease guard size twice. * thread_pthread.c (thread_start_func_1): don't use inaccurate stack start guess if native_thread_init_stack() can be used. [Bug #1813] [ruby-core:24540] |
05117a4917152cb4f0dfa216c19314a902d57922
|
2011-07-03 |
add NEWS for O_DIRECT |
1e8adda1fc192247a09c29c5806eb647e427028a
|
2011-07-04 |
comment fix. |
e6d42f34e2cbd2c6a9133d4e972ceda58af43bc0
|
2011-07-04 |
* thread_pthread.c (get_stack): For NetBSD/FreeBSD, use pthread_attr_getstack() if possible. and, remove an assumption of stack growing direction. |
a737fc8ace0d56354f618c6657d7042a7423e851
|
2011-07-06 |
* cont.c (fiber_machine_stack_alloc): remove unnecessary cast. |
302fcb568d817bed348f554f1be28951ad924449
|
2011-07-06 |
* cont.c (fiber_machine_stack_alloc): use MAP_FAILED instead of -1. |
c454ee6c9fdce8fb558fee0198aea307157ccb23
|
2011-07-06 |
* cont.c (fiber_machine_stack_alloc): use MAP_STACK if it's provided. |
032e56fbd66d3dd1aa144a86f4a90b667dcff649
|
2011-07-06 |
* cont.c (fiber_machine_stack_alloc): fix mprotect misuse. A stack guard page should have PROT_NONE. * cont.c (fiber_initialize_machine_stack_context): th->machine_stack_maxsize shouldn't be included guard pages size. [Bug #4983][ruby-dev:44043] |
0242fe816ca736a927d551f64e9ba5d2263fed32
|
2011-07-06 |
* cont.c (fiber_machine_stack_alloc): cleanup pointer arithmetic. "size/sizeof(VALUE)" is ugly and easy confusing. * cont.c (fiber_initialize_machine_stack_context): ditto. |
68a0d412dd36b0caf1551089d8e6c64819854b6f
|
2011-07-07 |
add a comment why FreeBSD can't use MAP_STACK. |
affa47ae4db231c37b9da85f66e2ed50182b86f5
|
2011-07-08 |
* thread_pthread.c (gvl_destroy): fix cond_t leak. |
4ad2d02a49b0ec009599c3a2c8683bd45119792b
|
2011-07-08 |
* cont.c (FIBER_MACHINE_STACK_ALLOCATION_SIZE): Fiber stack size don't need to keep multiple number of sizeof(VALUE). |
874127452910c0e8ef2f92923b00d0d318520f7f
|
2011-07-08 |
* thread.c (thread_unlock_all_locking_mutexes): rename to rb_threadptr_unlock_all_locking_mutexes and remove static. * vm_core.h: add rb_threadptr_unlock_all_locking_mutexes declaration. * thread.c (thread_start_func_2): adjust the above rename. |
554a33d838a12e92d112d1bba6dac322d4d8160e
|
2011-07-08 |
* thread.c (rb_mutex_unlock_all): folded into rb_threadptr_unlock_all_locking_mutexes. * thread.c (rb_threadptr_unlock_all_locking_mutexes) ditto. |
8739bb305daac9fdf134e5cf16d46b89619b484e
|
2011-07-08 |
add test for [ruby-dev:44049]. |
57da3d94aa649614958d5ceef989f3fd758c2bb7
|
2011-07-09 |
comment clarification. Only Leopard or earlier has ENOTSUPP issue if my kernel code reading is correct. |
2acd61551bbc2f0bb00cbe5de74d731edd9f404b
|
2011-07-10 |
* signal.c (sigsegv): use abort() instead of exit() when nested SEGV was happen. Because unnested SEGV use abort(). |
04b182a4f8a2ab719e56b5d311422c46bb3a9ba6
|
2011-07-10 |
add a ticket number. |
a119b9d146fea877acc1e9ba5df0702163ce917a
|
2011-07-10 |
* vm_core.h (typedef struct rb_vm_struct): create a new 'inhibit_thread_createion' field. * thread.c (rb_thread_terminate_all): set inhibit_thread_creation. * thread.c (thread_s_new): don't permit to create new thread if the VM is under destruction. Otherwise evil finalizer code can make SEGV. [Bug #4992][ruby-core:37858] |
b9a13f4962333f08338b9839d1bd9151665ac8aa
|
2011-07-10 |
* thread_pthread.c (mutex_debug): use exit(EXIT_FAILURE) instad of exit(1). * thread_pthread.c (add_signal_thread_list): ditto. * thread.c (rb_thread_call_with_gvl): ditto. * util.c (Bug): ditto. |
74b339e9385181844ee44d155ac59c8544e5016c
|
2011-07-10 |
* thread_pthread.c (rb_thread_create_timer_thread): removed rb_disable_interrupt()/rb_enable_interrupt(). * vm_core.h: ditto. * process.c (static void before_exec): ditto. * process.c (static void after_exec): ditto. [Bug #4765] [ruby-dev:43571] |
abf99e80bf11fefd3a8dfdce879e0b6ee66cf136
|
2011-07-11 |
* process.c: removed signal() macro. It's no longer used. |
89e2951bde9b7f4e04a8f068bfde6756aebf74af
|
2011-07-12 |
* signal.c (sig_trap): don't permit to change a signal handler which the interpreter reserved. * signal.c (reserved_signal_p): ditto. [Bug #2616] [ruby-core:27625] |
c307523565e0a8815bfd0d7deeed8b9ae7796e16
|
2011-07-12 |
* signal.c (install_sighandler): fixed a race. |
7fd8266516393afb6e9fdedd028e01daccc46c75
|
2011-07-12 |
small cleanup |
55b3bfbc4cf890cb2ebd6b7853189edd442bdad9
|
2011-07-12 |
* signal.c (reserved_signal_p): reverted a part of r32523. chikanaga noticed trap(:CHLD) has some realworld usecase. * test/ruby/test_signal.rb (TestSignal#test_reserved_signal): ditto. |
8cf76cae70190cd533d6f9a114281ea01da9cd90
|
2011-07-12 |
* NEWS: add a description of Signal.trap change. |
6270ce85ed36d2844166facb937c2a9f63fb022f
|
2011-07-15 |
* time.c (time_dup): used rb_obj_class() instead of CLASS_OF(). The patch is made by Kazuki Tsujimoto. [Bug #5012] [ruby-dev:44071] |
5975e9e008111d82885946b104fbe3f8fb800160
|
2011-07-22 |
* vm_insnhelper.c (vm_call_cfunc): added volatile for a workaround of cfp consistency error problem on OS X 10.7 (Lion). It's suspected llvm optimization bug. [Bug #5076] [ruby-dev:44185] |
201179fc2ad9c31395addd929989bcce0fd43c07
|
2011-07-22 |
fixed bug ref |
e39294cac530389e983a57c59b7daa8a2a77d2f6
|
2011-07-23 |
* configure.in: changed default optflags to -O0 if the compiler is llvm-gcc. It prevent ruby crash on OS X 10.7 (Lion). |
1e52e560374c5cb5f435327f042ecff43697a2ad
|
2011-07-23 |
revert r32647. r32649 is better one. |
18bc6c31a1a0831ae6dda645a13b2df13d761fe8
|
2011-07-30 |
* vm.c (th_init): preallocate alternative stack. NoMemoryError is better than rb_bug, of course. Patch by Eric Wong. [ruby-core:38572][ruby-core:38594]. |
ac397a9eeeb2b4a0716cea77ff2de1ace1203dd9
|
2011-07-30 |
* vm_core.h (ALT_STACK_SIZE): use MINSIGSTKSZ*2 instead of SIGSTKSZ*2. |
cef42f3058b1b9e135f995801f4fe3e2aefee09f
|
2011-07-30 |
added ML ref |
3abbda4f6ef4e2c314bb288b2a2b5cc0762ee652
|
2011-08-04 |
* error.c (report_bug): use a small message buffer instead of BUFSIZ. It is needed for avoiding nested SIGSEGV on Linux. Note: BUFSIZ is not proper buffer size. It's unrelated with maximum filename length. :-/ [Bug #5139] [ruby-dev:44315] |
b6c6ce116e9bd09e20ac8fb3991439e0a1e45940
|
2011-08-07 |
* configure.in: add -Wunused-variable to default CFLAGS. Patch by Eric Wong. [Feature #5157] [ruby-core:38798] |
9c760d0aad3fac021dcfa7d7c80609cd4178d9c9
|
2011-08-07 |
* ext/openssl/ossl_asn1.c (decode_eoc): remove unused variables. Patch by Eric Wong. [Feature #5157] [ruby-core:38798] * ext/openssl/ossl_asn1.c (ossl_asn1_decode): ditto. * ext/openssl/ossl_pkey.c (ossl_pkey_new_from_data): ditto. |
f2f14f572d6fb92394955953352e6edb688cc986
|
2011-08-07 |
* time.c (rb_strftime_alloc): raise ERANGE if width is too large. Patch by Nobuyoshi Nakada. [Bug #4457] [ruby-dev:43285] |
33c7e324e50ef3053449ddd0719e95e3182098b4
|
2011-08-12 |
* configure.in: Desbribe "no" configure option for site_ruby and vendor_ruby. Patch by Vit Ondruch. [Bug #5187][ruby-core:38921] |
da6eec340eb13d0c50431a0661528a7fe300ffda
|
2011-08-12 |
fix r32943. It did break configure.in completely. |
3596d49edfc61126cc2d3cd8634516d10fbcbe42
|
2011-08-30 |
* configure.in: fix a build failure on GNU Hurd. Patch by Samuel Thibault <sthibault at debian dot org>. Thank you! [Bug #5250] [ruby-core:39185] |
0cebfad20ab9eb694eeb95f083635127cfbf35f9
|
2011-08-30 |
* thread.c (rb_thread_select): rewrite by using rb_thread_fd_select(). old one is EINTR unsafe. Patch by Eric Wong. [Bug #5229] [ruby-core:39102] |
3ffa44622db2386727a8e11bb3aeb0385621f9fa
|
2011-08-30 |
* cont.c (fiber_entry): fix stack allocation failure on Debian GNU/kFreeBSD. Patch by Lucas Nussbaum <lucas at lucas-nussbaum dot net>. [Bug #5241] [ruby-core:39147] |
2dd9d721ed6820a584654c82f4ae1d6331f78a9e
|
2011-08-30 |
* lib/thread.rb (Queue#pop): fix a race against Thread.wakeup. Patch by Masaki Matsushita <glass.saga at gmail dot com> [Bug #5195] [ruby-dev:44400] |
2c9375ba69c5bfba56e8cc1ab4ac7c2ff01d24f3
|
2011-09-12 |
* thread.c (rb_thread_select): fix to ignore an argument modification of rb_thread_fd_select(). based on a patch by Eric Wong. [Bug #5306] [ruby-core:39435] * thread.c (rb_fd_rcopy): New. for reverse fd copy. |
d24e1dac2b66afc3265065209686970481fb5367
|
2011-09-14 |
* thread.c (rb_fd_rcopy): added an argument guard. Patch by NAKAMURA Usaku. [Bug #5306] [ruby-core:39435] |
d4db53a0e00f06e44b583156359258aa213fda52
|
2011-09-19 |
* test/-ext-/old_thread_select/test_old_thread_select.rb: select() with timeout may return early in old Linux kernels with 250 Hz tickrate and no dynticks, so skip everything older than 2.6.32 (which has long term support). And, Make the timing assertions consistently use assert_operator with timing difference in error message Patch by Eric Wong. [Bug #5335] [ruby-core:39618] |
6823334c214d9b83ea71de67ab6c5ce1c4fbdfab
|
2011-09-26 |
* configure.in: remove a code for human68k. it's no longer supported since r19677. |
20ae79b0c26e2b9ee9441728353f27c571507a4d
|
2011-09-26 |
* include/ruby/defines.h: remove NextStep, OpenStep, Rhapsody support. Last activity of their OSs are 7 years ago. * configure.in: ditto. * dir.c: ditto. * ext/tk/extconf.rb: ditto. |
36a1e76053e0f80d9c8239c134a0bd3574eb087d
|
2011-09-26 |
* configure.in: remove DJGPP support. It's not longer supported since ruby 1.9.0. |
2cc5eeaf6c377a7b55e2bbaf6661929c17139aa6
|
2011-09-27 |
* thread.c (do_select): remove cygwin specific hack. It's layer violation and too large hack. * thread.c (cmp_tv, subtract_tv): removed. |
1bdf1a5c6f53fa834c10704bd9b60f6c0c375328
|
2011-09-27 |
* thread_pthread.c: make native_fd_select(). * thread.c (do_select): remove #ifdef _WIN32. Instead, use native_fd_select() always. |
123645aab61c07fb3c64e3f2ea771cb74f53ff64
|
2011-10-13 |
* atomic.h(ATOMIC_SET): add cast to void to prevent misuse. [ruby-dev:44596] [Bug #5439] |
871c6923dc32630e93f3483d9db1e547ac62a478
|
2011-11-09 |
* thread_pthread.c (gvl_yield): don't prevent concurrent sched_yield(). [Bug #5130] [ruby-core:38647] |
0d746627af624e1fca683b726ee2de86127fa16c
|
2011-11-11 |
* io.c (pipe_open): Remove fflush(stdin). it's no effect. Pointed out by Ikegami Daisuke <ikegami.da@gmail.com>. Thank you. |
9d16ad639f49513b720e3afa6809eb98c0a6d609
|
2011-11-12 |
* io.c (+ioctl_narg_len) new helper function. * io.c (rb_io_ctl): don't use ioctl specific length check if caller is fcntl. |
eec252e2e520ed1297df6ca8deb089f29e384e2c
|
2011-11-12 |
* io.c (+setup_narg): factor out length calculation logic. * io.c (rb_io_ctl): ditto. |
f13d10a0afeec1c6e66b4717fd9f12faeda515ff
|
2011-11-12 |
* io.c (setup_narg): fix off by one bug. |
fc7bb927a24ffe60c89f70a00bcc9bbab73ecff6
|
2011-11-12 |
* io.c (struct io_cntl_arg): remove io_p member. * io.c (nogvl_fcntl, do_fcntl, rb_fcntl): separated from ioctl functions. * io.c (nogvl_io_cntl): remove fcntl depended logic. * io.c (io_cntl): ditto. * io.c (rb_io_ctl): ditto. * io.c (rb_io_ioctl): ditto. |
7e2f0491ce16d7f15660b0b01be9f23526aa07b9
|
2011-11-12 |
* io.c (ioctl_req_t): Type of req argument of ioctl() depend on platform. Moreover almost all linux ioctl can't be represented by 32bit integer (i.e. MSB is 1). We need wrap ioctl argument type. [Bug #5429] [ruby-dev:44589] * io.c (struct ioctl_arg): ditto. * io.c (rb_ioctl): ditto. * test/ruby/test_io.rb (test_ioctl_linux): add a testcase for ioctl |
b3027d5929945a7d08b89af3bb514c9b687b41d0
|
2011-11-12 |
* io.c (rb_ioctl): don't expose our sanity check value to ruby script. It may change string value meaning if the value is string. (e.g. MacOS X has F_GETPATH ioctl) * io.c (rb_fcntl): ditto. |
791f5449c170467ebe7f43d06047ec3d61d141eb
|
2011-11-12 |
* io.c (ioctl_narg_len): Linux doesn't have IOCPARM_LEN macro, but has _IOC_SIZE. support it. |
f2708ce30f0bf7c7a0ace010a7f8461de1e41f8b
|
2011-11-12 |
* test/ruby/test_io.rb (test_fcntl_lock_freebsd): add a testcase of fcntl lock for freebsd. |
632652a2442d364d38b72cc3bf7ebc4cc2fb9b12
|
2011-11-12 |
* test/ruby/test_io.rb (test_fcntl_dupfd): add another fcntl test. |
33817fbc29943b5b26254626d8721a0ce391b1cf
|
2011-11-12 |
* io.c (fcntl_narg_len): introduce narg calculation for fcntl instead of hard coded 256. * io.c (setup_narg): ditto. |
5c29d116c2d1dac5c6953bb60a3bda35df51d713
|
2011-11-12 |
* bootstraptest/runner.rb: don't suppress SIGINT. [Feature #5612] [ruby-dev:44856] |
3aaf92b5a119885aba0b1c41946b498426880399
|
2011-11-12 |
* test/ruby/test_io.rb (test_fcntl_dupfd): skip if Fcntl::DUPFD is not defined. Pointed out by CHIKANAGA Tomoyuki. Thanks. |
d3fc4ae7cb4ace087eef327bd19fa5fe957c745a
|
2011-11-12 |
* test/webrick/test_cgi.rb (class TestWEBrickCGI): respect RbConfig::CONFIG["LIBPATHENV"]. [Bug #5135] [ruby-core:38653] * test/webrick/test_filehandler.rb (class WEBrick): ditto. |
74a13c76349b3b463514f60beb9f02c2ba301ad6
|
2011-11-14 |
* numeric.c (check_uint): fix off-by-one bug of NUM2UINT. * bignum.c (rb_big2ulong): fix off-by-one bug of NUM2ULONG. |
11137bed53cc5a3431e2db80e27d31629cca4f0e
|
2011-11-14 |
* test/-ext-/num2int/test_num2int.rb (class TestNum2int): add FIXNUM tests. |
d3437b7c1a496143c2bff2698082af143f5e1dc0
|
2011-11-14 |
* bignum.c (rb_big2ull): fix off-by-twice bug of NUM2ULL. * test/-ext-/num2int/test_num2int.rb (class TestNum2int): fix a testcase too. |
b2a2ba119104b0ff2b6c20611d76de924596ca5b
|
2011-11-14 |
* include/ruby/ruby.h: add NUM2SHORT(), NUM2USHORT() macros. * numeric.c: ditto. |
9debadd9489f76f7f211bf11027dbea907c19252
|
2011-11-14 |
* include/ruby/ruby.h: add #ifdef comment. |
302220a8a53cb09713d2cfb05ac2decfc098030b
|
2011-11-14 |
* numeric.c (rb_fix2ushort): fix typo. use num rb_num2ushort() instead of num2uint(). |
ed681d3a82591db3f4dd6e77c568f98b7d1d6216
|
2011-11-14 |
* bignum.c (rb_big2ull): fix 32bit platform breakage. we must not assume sizeof(VALUE) == sizeof(LONG_LONG). * test/-ext-/num2int/test_num2int.rb (class TestNum2int): fix false assumption on 32bit platform. |
61fe9d5c4132ece0762cc2e6ab05ac49951ae82e
|
2011-11-14 |
added a description of NUM2SHORT() to NEWS |
d020fb15254c13e458bb9603479edbb7b3fb347f
|
2011-11-15 |
* test/ruby/test_io.rb (TestIO#test_fcntl_dupfd): fix OpenBSD test failure. [ruby-dev:44872] |
9cdd62bd19f7872bab25912ed0485c098ea141d2
|
2011-11-15 |
* include/ruby/ruby.h: get rid of gcc specific rb_long2int(), NUM2LONG(), NUM2INT(), NUM2SHORT(), NUM2LL(), INT2NUM(), UINT2NUM(), LONG2NUM(), ULONG2NUM() and NUM2CHR() implementation. Because 1) They don't make any better code at all. 2) Inline function have a better debugger supoort. 3) If they become to make better code in the future, they might make cross compiler ABI compatibility issue. |
fd5a7ee75cb372aaf15c8a3c95517ce228b94f04
|
2011-11-15 |
* include/ruby/ruby.h(NUM2LONG, NUM2INT, NUM2SHORT, NUM2LL, INT2NUM, UINT2NUM, LONG2NUM, ULONG2NUM, NUM2CHR): wrap by macros. |
d7166624bf70c2fe9f0b067065b9fd490de16d20
|
2011-11-24 |
Merge branch 'fsync-nogvl' into trunk |
5817762f2bce7b4875075f61861d58e0410e2dad
|
2011-11-24 |
* configure.in: add -Wall always. |
746aa6f74b55b1783242b4f074200105dd7d90bc
|
2011-11-24 |
* configure.in: remove [read count field in FILE] check. ruby 1.9 or later doesn't use stdio at all. |
450c2094be9ef5ddf0f5f91f1744e03dac93af31
|
2011-11-24 |
* configure.in: remove [read buffer ptr field in FILE structures] check. ruby 1.9 or later doesn't use stdio at all. |
b418bc9be47ac63da559cb4bbdf705d83d99cde2
|
2011-11-24 |
* lib/mkmf.rb: get rid of warnings of mkmf.rb if -Wmissing-declarations and/or -Wold-style-definition warnings if specified. Patch by Nikolai Weibull. Thank you! [Bug #5459] [ruby-core:40200] |
d0e615e25f839d32507bcccb593d5fc3c28db28c
|
2011-11-24 |
* configure.in: add -D_FORTIFY_SOURCE=2. It provide some compile time and runtime check for security. |
b2eae7891b8a808f7f737833fbaf84b0d467377c
|
2011-11-24 |
* configure.in: add -fstack-protector. It help to protect us from stack smashing attack. |
98975ba9dc6781083275e26aac4fbe29d689a7f6
|
2011-11-24 |
* configure.in: turn on PIE if --enable-shared is not specified. |
0996ae361a62db5094eb3d8cc59c7d002170c285
|
2011-11-25 |
* Makefile.in (EXTLDFLAGS): export it. * configure.in: add --no-undefined if --enable-shared is specified. Gentoo enabled this option long time. Also, export EXTLDFALGS. |
aa23f6b9fdecbf3be3e21b0f6b40e2b22f125090
|
2011-11-25 |
* io.c (ioctl_narg_len, linux_iocparm_len): reinstantiate linux specific narg length calculation. * test/ruby/test_io.rb (test_ioctl_linux2): add new test for old and unstructured ioctl. |
0e28532a52fd7f60da1ad47453a43edfde1e588f
|
2011-11-27 |
* configure.in: workaround to avoid MacOS X build error. Maybe autoconf 2.61 is slightly buggy. [ruby-core:41316] |
ed78271c49bb405b202322ee39a4db919e2fdb3d
|
2011-11-27 |
* configure.in: revert r33832 and r33833. [ruby-core:41313] [Bug #5674] |
a4d38daecef8729cd1b61de6bc02cfbfd68f18fe
|
2011-11-27 |
* configure.in: add -fstack-protector into XLDFLAGS as well as XCFLAGS if stack-protector is used. |
8cee31214df54281a93c8fe135a5fd36fd7e288a
|
2011-11-27 |
* io.c (rb_write_error2): get rid of warning on linux. fwrite of glibc is tagged __attribute__ ((__warn_unused_result__)) if _FORTIFY_SOURCE != 0. * vm_dump.c (rb_vm_bugreport): ditto. |
543820885ee691d70e0d5c36246bdfdf8a1eddd3
|
2011-11-27 |
* configure.in: added -fno-strict-overflow. it suppress annoying -Wstrict-overflow warning. |
0d0bd1642acc24c104e7fbdce193deb165feecf8
|
2011-11-30 |
* configure.in: add sys/prctl.h test. * thread_pthread.c (thread_timer): call prctl(PR_SET_NAME) to change thread name. It may help to debug. |
b60a01db6a18e8e196f5277b0f9bf8684377471e
|
2012-01-03 |
* tool/merger.rb (#version_up): version.h date should be Japanese locale date. |
c38dec6d3b1c775b93289c4f3086a87787d4c959
|
2012-01-03 |
* tool/merger.rb: allow r0123 style revision number. |
e3b07320500d117df3b56250bcf51bd30eeaa3cb
|
2012-01-07 |
* gc.c: get rid of implicit narrowing conversion. |
899bf4981a17846ac205383e47fa0cf8428dacd0
|
2012-05-18 |
* ext/extmk.rb: Show a message when extconf.rb raised an exception. * ext/openssl/extconf.rb: Use exception raising instead of message and/or abort. We want to display error message to console _and_ logging into mkmf.log. |
4e9a880916bd99057a2af4ed022fdcb87de4d645
|
2012-05-18 |
* ext/openssl/extconf.rb: Clarify a message when hit Apple OpenSSL issue. |
933b5ced230b8b02c03133c55d65b23cbce22cb3
|
2012-05-18 |
* ext/ripper/extconf.rb: Use an exception instead of bare Logging.message. |
522627d5cc3b435b2f510057b24c75ad1dd26d7d
|
2012-05-18 |
* ext/readline/extconf.rb: Use an exception instead of bare exit. |
6074032ae6afea7dd2cd12b6333ae01bab2c3159
|
2012-05-18 |
* ext/fiddle/extconf.rb: Use an exception instaed of bare abort. |
2e4645ca166e3c3fab5f85159fd0b06e868a45fa
|
2012-05-18 |
* ext/psych/extconf.rb: Use an exception instaed of bare abort. |
69305da74d9d6f3c0da668b9a95d872eee27e527
|
2012-05-18 |
* ext/zlib/extconf.rb: Use an exception instaed of bare puts. |
5c56769118deac7f79030a87bb272bd82aeba2e4
|
2012-05-18 |
* cont.c: bump up fiber machine stack size when running on 64bit arch. [Bug #6344] [ruby-dev:45554] |
1a2ef6bae3c0db71adbbe9e871ca87a87b4d647c
|
2012-05-18 |
* thread_pthread.c (rb_thread_create_timer_thread): Added error check when failing fcntl(). [Bug #6147] [ruby-dev:45364] |
469cc485423c8abc268ff7cdd8c52e5cb7675f26
|
2012-05-18 |
decrease fiber stack size. 1MB is too large for windows. [Bug #6344] [ruby-dev:45554] |
54872dd7b3d33110812fe5ac8187baed5d4a164f
|
2012-05-18 |
* ext/openssl/extconf.rb: Use Logging::message instead of message. * ext/zlib/extconf.rb: ditto. |
2fe6bd9a36353bd756b49195d543c74e7f05f765
|
2012-06-19 |
* array.c (ary_reverse): use ansi style declaration. |
7339e678f4a862071373d3bf9e17107b4302a3ad
|
2012-06-19 |
* include/ruby/missing.h: include math.h before checking INFINITY and NAN. Otherwise, strange macro redefinition will occur. |
9021777282b038d1d83e758dcfca05cebc42d2b9
|
2012-06-19 |
* dir.c (dir_initialize): get rid of "unused return: argc = rb_scan_args()" warning. |
a57cbd7b27b3d254c71cb3b175e44e95550ef28d
|
2012-06-19 |
* random.c (rb_random_int32): get rid of "warning: constant 0x100000000 is so big it is long" warning. |
6d69c3b0ce9dfdcf32383015a3514fe1a4624e44
|
2012-06-19 |
* ruby.c (rb_f_sub): use ansi style declaration. * ruby.c (rb_f_gsub): ditto. * ruby.c (rb_f_chomp): ditto. |
51c44ab1ec742018525391a37386fe8f8bc813bb
|
2012-06-19 |
* time.c (init_leap_second_info): fix non-ANSI function declaration. |
1ebe152edecb98f9f920dfc8cdc757883b8043ef
|
2012-06-24 |
* configure.in (for stack end address): remove human68k specific check. It is no longer supported. |
3e1d8aab1731e671b8daf266bbdb99196ff95421
|
2012-07-09 |
* dln.c: Simplify and make consistent an ifdef for Mac OS X. * ext/socket/rubysocket.h: ditto. * ext/tk/stubs.c: ditto. * io.c: ditto. * process.c: ditto. * signal.c: ditto. * vm_dump.c: ditto. |
428a5a9cd95b92b0a5570cb1154191c23453ebd4
|
2012-07-09 |
* include/ruby/ruby.h: Removed RUBY_GLOBAL_SETUP complely. It is no meaning definition since r24894. * main.c: ditto. * nacl/pepper_main.c: ditto. |
0501be6f83945e11c975c5e482dd945ef373d3da
|
2012-07-18 |
* include/ruby/intern.h (rb_num_zerodiv): Added NORETURN. Patched by Xi Wang. [Bug #6736] |
7d4e7fe8341d6343cbd9650c6b41cf33c00e3a50
|
2012-07-18 |
* bignum.c: Added #include <strings.h> for ffs(). Patch by Perry Smith. Thank you. [Bug #6748] |
f207f7793da422b0a5fec771c5413fb9bd5b2bc0
|
2012-08-09 |
* test/openssl/test_config.rb (OpenSSL#test_constants): skip this test if platform is Mac OS X or Windows. [Bug #6830] |
10c14095de5dd4114d8cf536c5bd4cea63370a97
|
2012-09-09 |
* thread.c (rb_mutex_lock): stop multiple threads use pthread_cond_timedwait() concurrently. [Bug #6278] [ruby-core:44275] |
3df2fc2da8ee34ad0b923e42b3fcdc8daf391370
|
2012-09-09 |
* io.c (io_bufread): removed unnecessary rb_thread_wait_fd(). Patch by Eric Wong. [Bug #6629] [ruby-core:45789] * io.c (rb_io_sysread): ditto. * io.c (copy_stream_fallback_body): ditto. |
4b58f39dedfb3491aba7e39e5c2dba0876437cc4
|
2012-09-09 |
* io.c (nogvl_close, maygvl_close, nogvl_fclose, maygvl_fclose): new functions. * io.c (fptr_finalize): release GVL if possible. Patched by Eric Wong. [Feature #4570] [ruby-core:35711] |
fde6de9fc7417e5bafc724f85d8d8b0b050430f1
|
2012-09-09 |
* test/ruby/test_io.rb (test_advise_pipe): new test to check io.advise() against anonymous io object don't make crash. made by Eric Wong. [Bug #6081] [ruby-core:42880] |
149176225ac37574530f52e61e2f1dc1b8905e24
|
2012-09-09 |
* lib/sync.rb (Sync_m): Removed RCS_ID. |
5dbbee86b616424ee9800488a381b02f9e7c65b3
|
2012-09-09 |
* include/ruby/intern.h (rb_thread_blocking_region): Added a comment of recommended alternative way. |
2248a8ce643509577dd29988f5ea1e662f4aaa65
|
2012-09-09 |
* lib/sync.rb (Sync_m#sync_lock): Fixed wakeup/raise unsafe code. Patched by Masaki Matsushita. [Bug #5355] [ruby-dev:44521] |
7198053a49d39a5c80551fc9147b9c0ab21e75a2
|
2012-09-09 |
* lib/thread.rb (Queue#pop): Fixed double registration issue when mutex.sleep is interrupted. [Bug #5258] [ruby-dev:44448] * lib/thread.rb (SizedQueue#push): ditto. |
4c10b36467ba7cbb59128dabd437ef3931c7d0e4
|
2012-09-09 |
* io.c (rb_io_close): notify fd close before releasing gvl. * io.c (fptr_finalize): modify fptr->mode before releasing gvl. remove unnecessary rb_thread_fd_close(). [Feature #4570] [ruby-core:35711] |
946f7fc7888f61da879c660b43e2c574aaf713eb
|
2012-09-09 |
* io.c (nogvl_close, maygvl_close, nogvl_fclose, maygvl_fclose): suppress integer <-> pointer cast warnings. [Feature #4570] [ruby-core:35711] |
84c77c15205d57a3d50d8b29bb6d2af2ff44de77
|
2012-09-09 |
* ext/socket/basicsocket.c (rsock_bsock_send): avoid unnecessary select() calls before doing I/O Patch by Eric Wong. [Feature #4538] [ruby-core:35586] * ext/socket/init.c (rsock_s_recvfrom): ditto. * ext/socket/init.c (rsock_s_accept): ditto. * ext/socket/udpsocket.c (udp_send): ditto. * io.c (io_fflush): ditto. * io.c (io_binwrite): ditto. * io.c (rb_io_syswrite): ditto. |
187d2bc1d6e6f3f18a443614406598ed6fc0ef0f
|
2012-09-20 |
* thread_pthread.c (native_cond_initialize): clean up #ifdef condition. |
d9dfe2e514631be9ae243de8f3b6f52e35ac82e0
|
2012-09-20 |
* thread_pthread.c (native_cond_initialize): destroy condattr after using it. Patch by Stanislav Sedov. Thank you. [Bug #7041] [ruby-core:47619] |
9da62b63d9377299db5240e007ccf4a1644e4233
|
2012-11-05 |
* thread_pthread.c (native_thread_init, native_thread_destroy): removed HAVE_PTHREAD_CONDATTR_INIT check because this silly #ifdef makes use-uninitialized-var issue and (2) native_cond_initialize() already have a right platform and caller don't need any additional care. [Bug #6825] |
4e73323a6007d0a554b52440f316e3c4c71eae26
|
2012-11-05 |
* thread_pthread.c (rb_reserved_fd_p): fix typo in macro check that prevented the ifdef ever being true. [Bug #7281] [ruby-core:48940] |
58282ed667d720816366c9e45c3560904196d078
|
2012-11-19 |
* signal.c (sig_signame): implements Signal.signame method [Feature #5613] * test/ruby/test_signal.rb (test_signame): adds test for above * NEWS: add an item about above |
6c56dae4b23c5c50e351758538141ca26b9aba40
|
2012-11-19 |
* prelude.rb: Moved Mutex#synchronize to * thread.c (rb_mutex_synchronize_m): here. [Bug #4266] |
75df3aae0f8fdb09ed377102952e78e3dc282516
|
2012-11-19 |
* signal.c (rb_disable_interrupt, rb_enable_interrupt): removed USE_TRAP_MASK. * signal.c (trap_arg, trap_ensure): removed. * signal.c (trap, sig_trap): removed pointless signal disabling. We don't need it bacause we no longer run trap hander on signal hander context. |
562cb0ae5997006441221710d531ac166546319d
|
2012-11-19 |
* signal.c (install_sighandler): added comments why we need rb_disable_interrupt(). |
6d9f7672dd0560478c0031953a3cc8bd5cd05dd9
|
2012-11-19 |
* signal.c (rb_get_next_signal): removed pointless signal disabling. pthread_sigmask() only changes current thread mask. |
7643e4604bc5a661d10c7940b948ae6c66694f09
|
2012-11-19 |
* thread.c (rb_threadptr_execute_interrupts) removed. * thread.c (rb_threadptr_execute_interrupts_common) renamed to rb_threadptr_execute_interrupts. I.e. unified rb_threadptr_execute_interrupts and rb_threadptr_execute_interrupts_common. * thread.c (rb_thread_schedule, rb_thread_execute_interrupts) s/_common//. |
0a2da327f46ec0e129de52f668d00f04f2529b7e
|
2012-11-19 |
* thread.c (rb_thread_blocking_region_end): replaced GET_THREAD() with ruby_thread_from_native(). We don't have GVL here. |
212150c2e148278b1a300bd823f0a3d4753cd37d
|
2012-11-19 |
* thread.c, vm_core.h: big rename th to cur_th when works only th is current thread. |
4b25e0ceca487725f4579d21271546e2bd0d3563
|
2012-11-19 |
* thread.c (rb_threadptr_async_errinfo_active_p): added a small comment. |
57ee8128514f9e904325436099088703ee5938e5
|
2012-11-19 |
* thread.c (rb_thread_s_check_interrupt): removed redundant GET_THREAD(). |
b74e1b21dbb15d67945e36153368bb4aa78dcd68
|
2012-11-20 |
revert r37730 |
c8a3b2ba8bb18752c4d0aee6483f516e827f4bc9
|
2012-11-20 |
* io.c (Init_IO): removed all rb_file_const() into file.c. * file.c (Init_File): replace with rb_file_const() with rb_define_const() because RDoc don't care rb_file_const. [Bug #5530] |
4d3f768b41b0c7f2e8ef166b9c363e63e92e59ed
|
2012-11-20 |
* test/ruby/test_signal.rb (TestSignal#test_signame): fix windows test failure. Process.kill on windows can't send a signal to another process. |
134d33b0613093d338870a53328f156bcbf50f06
|
2012-11-20 |
fix typo |
b317bf06a4d8200b43d46685e251e993241e0765
|
2012-11-20 |
* file.c (Init_File): null device definition uses rb_define_const instead of rb_file_const. |
82e7d00344a185ea46a72ed1352d25d99056add8
|
2012-11-22 |
* vm.c: Don't define vm_collect_usage_operand() and static void vm_collect_usage_insn() when disabling VM_COLLECT_USAGE_DETAILS. (refix r37796) |
4d7e8b7305c392646f68a785df8f4019ec1e69c9
|
2012-11-22 |
* Makefile.in: run preprocessor when making probe.h * probes.d: define probe insn and insn__operand only when VM_COLLECT_USAGE_DETAILS is 1. [Bug #7370] |
86541e02c18e6ccdd0c0c632da06120a04a9ef11
|
2012-11-22 |
* tool/gen_dummy_probes.rb: don't change #include, #if and #endif lines. [Bug #7370] |
84a57715e1b20e4d06f90139687d8131705ffc18
|
2012-11-22 |
* Makefile.in (.dmyh.h): removed $(VPATH). GNU make don't recognize suffix rule with VPATH. |
82b33551a4ead2fa13120751242c493e2084cada
|
2012-11-24 |
* thread.c (thread_create_core): don't use th->thread_id before initialized. |
5611df706e5685fbe03412588d23ee31f13c671d
|
2012-11-24 |
* process.c (proc_getsid): adds new method for getting session id. Contributed from fumiyas (Fumiyasu SATOH). Thank you! [Feature #6757] [ruby-dev:45977] * configure.in: adds getsid check. * test/ruby/test_process.rb (TestProcess#test_setsid): new test for the above. * NEWS: news for the above. |
769781a0990a9d44f45f235086d8474a80fcc27d
|
2012-11-26 |
* test/ruby/test_process.rb (test_setsid): added a few wait for preventing that Process.getsid(io.pid) makes Errno::ESRCH. (refix r37844) |
6f3ad9bd3d1c0fd53539d55743b445d67360e911
|
2012-11-26 |
* bignum.c (big_div_struct): added volatile to 'stop' member. Otherwise, "if (bds->stop)" check in bigdivrem1 don't read memory and ignore interrupt. * bignum.c (bigdivrem, rb_big_stop): ditto. |
cb0a4c0f6231639dab11d50b21614cbea019e5d4
|
2012-11-26 |
* bignum.c (bigdivrem): restart calculation when bigdivrem1 was interrupted by signal. Otherwise, ruby script may see a garbage value. |
f150ed1532e727c409cc018a98e1362a8c71242c
|
2012-11-26 |
* vm_core.h (rb_thread_struct): added 'in_trap' member for marking running trap handler. * signal.c (signal_exec): turn on in_trap when running trap. * thread.c (Init_Thread, thread_create_core): initialize in_trap when creating new threads. * thread.c (thread_join_m): raise ThreadError when running trap handler.Bug [#6416][ruby-core:44956] * test/ruby/test_thread.rb (test_thread_join_in_trap): new test for the above. |
6746eecaf132cd2b4f4fed85e9bb66c4f655eb2e
|
2012-11-26 |
* string.c (rb_str_enumerate_chars, rb_str_enumerate_codepoints) (rb_str_enumerate_lines): suppress "may be used uninitialized in this function" warning. |
7087153156a32373960b8edbe938f3095be55389
|
2012-11-26 |
split trap interrupt and async interrupt |
458796d4f1dfef954f570c9b8355088b88d8f895
|
2012-11-26 |
* signal.c (signal_exec): suppress "warning: variable 'signum' might be clobbered by 'longjmp' or 'vfork'" warning. |
521af835583fba7793650c2a9203c43f31800642
|
2012-11-26 |
* signal.c (signal_exec): add volatile to make sure setjmp safe. |
6190bb4d8ad7a07ddb1da8fc687b20612743a34a
|
2012-11-26 |
* ruby_atomic.h (ATOMIC_CAS): new macro for compare-and-exchange. |
58543f00b6386b5631ffc6d8f029be149d632457
|
2012-11-26 |
* thread.c (thread_join_m): use th->interrupt_mask instead of th->in_trap. |
66e2e6ee697a322bb7521d7ecaff6be3fb69f4dd
|
2012-11-26 |
* vm_core.h (RUBY_VM_SET_TIMER_INTERRUPT, RUBY_VM_SET_INTERRUPT) (RUBY_VM_SET_FINALIZER_INTERRUPT, RUBY_VM_SET_TRAP_INTERRUPT) (RUBY_VM_INTERRUPTED): use enum symbol instead of immediate value. * thread.c (thread_join_m, rb_threadptr_execute_interrupts): ditto. * signal.c (signal_exec): ditto. |
39d38ff82f3a6158d2adc5883b86691a424ed1c0
|
2012-11-26 |
* thread.c (rb_thread_terminate_all): use native_sleep() instead of rb_thread_schedule(). Otherwise, it consume 100% cpu meaninglessly. [Bug #5368] [ruby-dev:44546] * thread.c (thread_start_func_2): last sub-thread wakes up main thread. |
23d5c282b4df78b5f6b8684c0d9f5aece7dd3f70
|
2012-11-26 |
* NEWS: update for Thread#join incompatible change. |
5b238e8dc7fd55622c4e0a382b9783648ba412f5
|
2012-11-26 |
* thread.c (rb_mutex_trylock, rb_mutex_unlock, mutex_sleep): raises ThreadError if called from trap handler as Thread#join. * NEWS: news fot the above. |
253938067a37d7ba9751ec1afbbd6033f886cab4
|
2012-11-26 |
* thread.c (rb_thread_terminate_all): add RUBY_VM_CHECK_INTS_BLOCKING(). Otherwise the loop in this function behave as busy loop because native_sleep() return immediately when RUBY_VM_INTERRUPTED() is true. |
a916278900dcd0db090db11d50e082e941968b9f
|
2012-11-26 |
* thread.c (rb_thread_terminate_all): broadcast eTerminateSignal again when Ctrl-C was pressed. [Feature #1952] [ruby-dev:39107] |
8079f8a6f25bd1e6ef9fa0bff569a850c31c6fb3
|
2012-11-27 |
* thread.c (thread_join): raises ThreadError if target thread is a current thread. * test/ruby/test_thread.rb (test_thread_join_current): test for the above. * NEWS: news for the above. |
b1a18cf49bc475e6c563f55b23fa36594d70f4bc
|
2012-11-27 |
* thread.c (thread_join): raises ThreadError if target therad is a main thread. * test/ruby/test_thread.rb (test_thread_join_main_thread): test for the above. * NEWS: news for the above. |
863e08732624822bac9fe546dc13ef2b6d23e542
|
2012-11-27 |
* thread.c (rb_thread_terminate_all): suppress a warning. |
9ace5c122e9ad5203e98590adfc3896464b67ec1
|
2012-11-27 |
* eval.c (ruby_cleanup): set thread status to THREAD_KILLED for preventing thr.raise. * test/ruby/test_thread.rb (test_main_thread_status_at_exit): test for the above. |
694c77633c80a106a1e526870ad5076bfac30640
|
2012-11-28 |
* thread.c (thread_join): A trap handler check was moved from thread_join_m because Thread#value should be raised an exception too. * thread.c (thread_join_m): remove trap handler check. * test/ruby/test_thread.rb (test_thread_join_in_trap): add test for thread#value. * NEWS: documentation fix for the above. |
8111b32d685278de68e9eefe273524cf1266cff0
|
2012-11-28 |
* thread.c (thread_s_new): uses main_thread->status instead of th->inhibit_thread_creation for preventing thread creation. * vm_core.h (rb_vm_struct): remove inhibit_thread_creation field. * thread.c (rb_thread_terminate_all): ditto. |
835d24f637e7616787e369ae4bf7edd0f8302a3d
|
2012-11-28 |
* thread.c (rb_mutex_lock): moved trap context check from rb_mutex_trylock because try_lock have no change to make a deadlock. * thread.c (rb_mutex_trylock): ditto. * NEWS: news for the above. |
e6ef313a498e5bff7a54944722abff33ef966166
|
2012-11-28 |
* io.c (FMODE_SYNCWRITE): removed unused macro. |
b8a1e36201d3965b3f7b87fe1fa1cf55e00ce045
|
2012-11-28 |
* thread.c (struct rb_mutex_struct): add allow_trap field. * internal.h (rb_mutex_allow_trap): added. * thread.c (rb_mutex_lock, rb_mutex_unlock): check mutex->allow_trap. * thread.c (mutex_sleep): remove trap check because it uses rb_mutex_lock and rb_mutex_unlock internally. * thread.c (rb_mutex_allow_trap): new helper function for the above. |
9cbf473287b6e0fca089c30db1cd276b3c2d477c
|
2012-11-28 |
* vm_core.h (enum rb_thread_status): remove THREAD_TO_KILL * vm_core.h (struct rb_thread_struct): add to_kill field * thread.c (terminate_i): convert THREAD_TO_KILL to to_kill. * thread.c (rb_threadptr_to_kill): ditto. * thread.c (rb_thread_kill): ditto. * thread.c (rb_thread_wakeup_alive): ditto. * thread.c (thread_list_i): ditto. * thread.c (static const char): ditto. * thread.c (thread_status_name): ditto. * thread.c (rb_thread_status): ditto. * thread.c (rb_thread_inspect): ditto. * vm_backtrace.c (thread_backtrace_to_ary): ditto. |
1d207fcff0e50ecdffb35b77bd10d2a3873cc8c3
|
2012-11-28 |
* thread.c (thread_start_func_2): remove unused code. security level is checked before rb_eSecurityError raises. |
fdda95ed8c17ea179c1778d3ad475fcbaff9030a
|
2012-11-28 |
* thread.c (thread_start_func_2): remove unused code. errinfo = th->errinfo; and errinfo = rb_errinfo(); are the same. |
5e606aee2ff1b54c174cb716762c3e4f59007699
|
2012-11-28 |
* thread.c (thread_start_func_2): remove unused code. this function never be used for main thread. |
b76b6b5c98133da0e3d23318ab1dcc86c3f0074f
|
2012-11-28 |
* thread.c (thread_start_func_2): small cleanups. |
989c529c8999a03faf8c17c5b3068e73e632be6d
|
2012-11-29 |
* thread.c (thread_start_func_2): remove unused code. When th->safe_level == 4, th->errinfo never be thrown. So, to create new exception makes no sense. |
c058d821f84287dd8812b6cac3edf6cd6f1bc364
|
2012-11-29 |
Revert r37956: thread.c (thread_start_func_2): small cleanups. |
2e72d1c3236c8ec1c0cb8f35c1dd6b64fde02fce
|
2012-11-30 |
revert r35486 (add rb_thread_t#yeiling field). because it doesn't help to close a race. |
15b25acd2541ae37f4f874b50128d34d8b079457
|
2012-11-30 |
* vm_core.h (rb_vm_struct): add thread_destruct_lock field. * thread.c (Init_Thread): ditto. * thread.c (rb_vm_gvl_destroy): ditto. |
6ca32179e6d04cc6b22c4c2bbb55d3cc34127b3b
|
2012-11-30 |
* lib/thread.rb (ConditionVariable#broadcast): protect from async interrupt by using Thread.async_interrupt_timing. * lib/thread.rb (ConditionVariable#signal): ditto. * lib/thread.rb (ConditionVariable#wait): ditto. |
279cd29b1b544cba09f5839d4abce81ab322d2c6
|
2012-11-30 |
* thread.c (rb_threadptr_interrupt_mask): add argument check. * thread.c (async_interrupt_timing_arg_check_i): helper function for the above. * test/ruby/test_thread.rb (test_async_interrupt_timing_invalid_argument): test for the above. |
a113ab64b23c430a944e639d0535529707540790
|
2012-11-30 |
* thread.c (rb_threadptr_interrupt_mask, async_interrupt_timing_func): merge into them into rb_thread_s_async_interrupt_timing. * thread.c (rb_thread_s_async_interrupt_timing): ditto. |
3357d88ada8ad44ecf267f5f2a1fb1df4e5cb8f4
|
2012-11-30 |
* lib/thread.rb (SizedQueue#pop): rewrite by using ConditionVariable. * lib/thread.rb (SizedQueue#push): ditto. * lib/thread.rb (SizedQueue#max): ditto. * lib/thread.rb (Queue#pop): ditto. * lib/thread.rb (Queue#push): ditto. |
028ca79f986448221361bf2e9c16ec9c3e3b734b
|
2012-11-30 |
* lib/thread.rb (ConditionVariable#broadcast): s/RuntimeError/StandardError/ * lib/thread.rb (ConditionVariable#signal): ditto. |
c62ec3ae1aa5ac3b3f7f2756763a41c5703c06ca
|
2012-11-30 |
* lib/sync.rb (Sync_m#sync_synchronize): add Thread.async_interrupt_timing for protecting from async interrupt. * lib/sync.rb (Sync_m#sync_lock): ditto. |
1f1db611b9860291454f38459f2aed33e0877d84
|
2012-12-01 |
* lib/thread.rb (ConditionVariable): use hash instead of array for @waiters. * test/thread/test_queue.rb (test_sized_queue_and_wakeup): remove a test because @waiters no longer have a chance to duplicated. Now it's a hash. |
afbbcd133ce38bf6749d8a431d08cf1c4bf732c7
|
2012-12-01 |
* test/ruby/test_thread.rb (test_cv_wait_deadlock): enable cv deadlock test. |
89ff44e22e737b1138954e482602c5f2ef9d08f1
|
2012-12-01 |
* test/ruby/test_thread.rb: move ConditionVariable related test into test/thread/test_cv.rb. * test/thread/test_cv.rb: new file. * test/thread/test_cv.rb (test_condvar_empty_signal): new tests. * test/thread/test_cv.rb (test_condvar_empty_broadcast): ditto. |
2ba9cdcee6b0b97999c74c6fb19cdae08edd0e25
|
2012-12-01 |
* gc.h (SET_MACHINE_STACK_END): add volatile for preventing harmful optimization. |
bbfbf662cceb6e7d8dc769ca365c563b9c073592
|
2012-12-04 |
* thread.c (rb_mutex_owned_p): new method that return current thread have the target mutex or not. [Feature #7505] [ruby-dev:46697] * test/ruby/test_thread.rb (test_mutex_owned, test_mutex_owned2): test for the above. * NEWS: new for the above. |
3765f668c616c1ef2b8d4feb9195fb2c62e96c3d
|
2012-12-04 |
supress warning |
70d603a41274c873183abcfb83dabfcaa3caf95c
|
2012-12-04 |
supress warning |
a400c94d7272d29f09b16c059bb9ca3b34bd398f
|
2012-12-05 |
* lib/timeout.rb (Timeout#timeout): set async_interrupt_timeing(:on_blocking) by default. [Bug #7503] [ruby-core:50524] |
def63c3466939161f2459f6489815b444bbde8a3
|
2012-12-05 |
* io.c (io_binwrite): check interrupt before io issue. * test/ruby/test_thread.rb (test_async_interrupt_and_io): test for the above. |
fe6b2e20e9f17ed2c2900aa72994e075ffdc7124
|
2012-12-05 |
* thread.c (rb_uninterruptible): helper function for providing temporary async_interrupt_timing(Object => :defer) |
3bbffbc7dd024179777192950ac07b9ef6ca2968
|
2012-12-07 |
Revert r38216 and r38221. Release manager mark this feature as "next minor". |
cb92817e7cb41f31abf371dc162996554ab50f6a
|
2012-12-14 |
* signal.c (rb_f_kill): remove rb_thread_polling() because this has no good effect and makes meaningless 100ms delay. 1) when sending signal to another process, waiting has just silly. 2) when sending signal to current process, 100ms is often not enough time to wait. It depend on kernel behavior. And, rb_thread_polling() doesn't make sense anyway. When rb_thread_alone() is true, it doesn't wait at all and Process.kill() users don't expect threading changes Process.kill() behavior. [Bug #7560] |
a24f2d99155e20833f26d9bbc1d97bb0ae31a9c4
|
2012-12-14 |
* file.c (rb_file_flock): use rb_thread_wait_for() instead of rb_thread_polling(). When getting EAGAIN, we need to wait a while even if no multi threading. * thread.c (sleep_for_polling, rb_thread_polling) removed. |
2d5fc17f140dfc99221e1eb2ccc5751df12ece5b
|
2012-12-14 |
* include/ruby/intern.h: remove rb_thread_polling() declaration. |
3074406bbeaefbc7f90fe5dfd705d0d5249befc5
|
2012-12-14 |
* test/ruby/test_thread.rb (TestThread::Thread::new.): remove th.abort_on_exception change. Test template shouldn't change global flag. It prevent to test a normal case. |
4bcfc171823f85111be7374e95318901b8298f9a
|
2012-12-14 |
* test/ruby/test_thread.rb (test_uninitialized, test_backtrace, test_thread_timer_and_interrupt, test_thread_join_in_trap, test_thread_join_current, test_thread_join_main_thread, test_main_thread_status_at_exit, test_thread_status_in_trap, test_thread_status_raise_after_kill, test_mutex_owned, test_mutex_owned2): move these tests from TestThreadGroup class to TestThread becuase they are not thread group tests. |
47fa79203d04ac0de21539a5843197bbb299abab
|
2012-12-15 |
* thread.c (rb_thread_wait_fd_rw): remove silly rb_thread_alone() check. |
70df4dec03fe9e557c55162ed6fc2201c3960c48
|
2012-12-15 |
* io.c (rb_io_wait_writable): don't call rb_thread_fd_writable() when EINTR. EINTR mean signal interrupt was happen. We don't need any wait. |
96350867e1a003ecc40e987ea4bf55c069e519fd
|
2012-12-15 |
* io.c (rb_io_wait_writable): add to call rb_thread_wait_fd() likes rb_io_wait_readable. |
2a4d86f385c4d4fd3f4195e8dbb0aa61ae4f8eea
|
2012-12-15 |
* io.c (internal_write_func2): new helper function for rb_write_internal2(). * io.c (rb_write_internal2): new function. it uses rb_thread_call_without_gvl2() instaed of rb_thread_io_blocking_region(). * io.c (rb_binwrite_string): uses rb_write_internal2 instead of rb_write_internal. [Bug #7134] |
9bd33790b7f992520f003954df743dd6e8502622
|
2012-12-15 |
* io.c (io_flush_buffer): uses io_flush_buffer_async2 instead of io_flush_buffer_async. * io.c (io_flush_buffer_async2): new helper function for io_flush_buffer. It uses rb_thread_call_without_gvl2() instead of rb_thread_io_blocking_region. * io.c (io_flush_buffer_sync2): new helper function for io_flush_buffer_async2. |
e78d4e69fe15b84358ce8fb30edf5c6610a6bad9
|
2012-12-15 |
* thread.c (rb_mutex_owned_p): remove static. * io.c (io_flush_buffer): don't hold mutex if already have. Now recursive lock may occur when following scenario. fptr_finalize -> finish_writeconv_sync -> finish_writeconv -> io_fflush. |
7fbaa0bedf29d6c44a3e038ec6dd9d153e4c7479
|
2012-12-15 |
* io.c (finish_writeconv): uses rb_write_internal2 if fptr->write_lock have. |
771f692792227e77dd9e9df74a2fda7bb6f33622
|
2012-12-15 |
fix typo |
aff9dff46d79181d143697d7b9e76735788e45cc
|
2012-12-15 |
* signal.c (rb_sigaltstack_size): new. calculate stack size for sigsegv handler. enlarge value when x86 or x86_64 on Linux. Linux has very small MINSIGSTKSZ size (2048 bytes) and our sigsegv routine need 5KiB at least. [Bug #7141] * internal.h: add declaration of rb_sigaltstack_size(). * vm_core.h: remove ALT_STACK_SIZE definition. |
0e19d2b434776e580ebafeafa553bc335d5e5e38
|
2012-12-15 |
* signal.c (default_handler): remove rb_register_sigaltstack() call. sigaltstack was already registered when creating threads. |
44b4b9060d7f02b10768c09bf8f59fa96aeda1b9
|
2012-12-15 |
* signal.c (rb_sigaltstack_size): cast sysconf() return value explicitly. Fix compile error on Mac OS X. |
6d8ad6c489f41dfb5553d0933793eb5c84e0cc29
|
2012-12-17 |
* io.c (io_flush_buffer_sync2): avoid to return 0. because rb_thread_call_without_gvl2 uses 0 internally. * io.c (io_flush_buffer_async2): adapt the above. |
005db82d368d9e030b3b370ceba8b46e739b2b2b
|
2012-12-18 |
* thread.c (rb_thread_wait_fd_rw): fix infinite loop bug. rb_wait_for_single_fd() never return positive number. |
06dcf7840fd6a9f7f6ad48ff9ce9d0bbe180c1eb
|
2012-12-18 |
* io.c (rb_io_wait_writable): don't use rb_thread_wait_fd() because it is for waiting until io readable. |
b8422636967a53f598968fbbc49326dd4ab027c6
|
2012-12-19 |
style fix. |
585afbbc6a833e91cd2e51b8faeece2248c0cc16
|
2012-12-21 |
* vm_dump.c (rb_vm_bugreport): revert r38533. * addr2line.c (fill_lines): add ELF sanity check. [Bug #7597] [ruby-dev:46786] |
398581564d155cab50beeb28fbb61fcbb5f4da16
|
2012-12-22 |
* io.c (rb_io_wait_writable): use rb_thread_check_ints() instead of rb_thread_fd_writable(). * io.c (rb_io_wait_readable): ditto. |
495f72ed3885970c40689186d0031c0f457f7e49
|
2012-12-26 |
* configure.in: enable -fPIE when checking -pie for fixing OpenBSD build error. Patch by George Koehler. Thank you! [Bug #7606] [ruby-core:51082] |
03f7f9ea40d6da40d847d6a422c66ff229bd2aa9
|
2013-01-04 |
* gc.c (vm_xrealloc): add a few comment why we avoid realloc(ptr,0). |
753f68cf20e1492cf980106027dd1f0969d546f2
|
2013-01-04 |
* io.c (rb_cloexec_fcntl_dupfd): improve #ifdef condition. * io.c (rb_maygvl_fd_fix_cloexec): ditto. |
e32ce1868f62070663a13813b132a2bb0cf5f147
|
2013-01-15 |
* thread_pthread.c (gvl_init): Reset gvl.wait_yield explicitly when fork()ing. Patch by Apollon Oikonomopoulos. Thanks! [Bug #7693][ruby-core:51424] |
0dddb4b32895e46c31bbad363bafc5a5bfcd7c45
|
2013-01-25 |
* test/ruby/test_io.rb (test_ioctl_linux): skip if a platform is not x86 because linux ioctl request number depend on cpu arch. At least, alpha, mips, sparc and ppc have a different number. [Bug #7718] [ruby-core:51544] |
b10e6b69a5e0a66a8406587fa03321131b5e6612
|
2013-01-31 |
* test/ruby/test_signal.rb (test_trap_puts): Fix typo. "sync" should be "STDOUT.sync". |
88903e23dd4ec7e58fe3ffb0070ec7fdcd0d6b8f
|
2013-02-06 |
* test/ruby/test_process.rb (test_setsid): skip when platform is OpenBSD. Contributed from George Koehler. [Bug #7789] [ruby-core:51889] |
6cd1e11d01036df2856aff996984d276a602a7cf
|
2013-02-06 |
* test/ruby/test_process.rb (test_setsid): ensure to call Process.wait(). Reported by George Koehler. Thanks. |
08c11c23cb809b49d443486ea677f3cb7f1db857
|
2013-02-10 |
* gc.h (SET_MACHINE_STACK_END): use __volatile__ instead of volatile. |
0531a076603eb9fd031d7c28574238866dfe8082
|
2013-02-10 |
* vm_exec.h (DISPATCH_ARCH_DEPEND_WAY): use __asm__ __vilatile__ instead of asm volatile. |
dd7a64d1000f39622e63fa11254879a1841decd2
|
2013-02-10 |
fix typo. |
5d1d6543102de8841b232063d07b1df313c92f00
|
2013-02-10 |
fix date time mistake in ChangeLog. |
e4b775882d8eb458342a827c9decc68db63c10eb
|
2013-02-14 |
* test/ruby/test_process.rb (test_setsid): Added a workaround for MacOS X. Patch by nagachika. [Bug #7826] [ruby-core:52126] |
7c465090fd976fe6892a8ec64b036fa0696e3723
|
2013-02-21 |
* file.c (rb_group_member): get rid of NGROUPS dependency. [Bug #7886] [ruby-core:52537] |
ba37db04533cec102212605488989c5d02bea67f
|
2013-02-21 |
* file.c (eaccess): use access() when not using setuid nor setgid. This is minor optimization. |
1cda6e3968b7245b302b20898ac02db3a6289309
|
2013-02-21 |
* file.c (access_internal): removed. * file.c (rb_file_readable_real): use access() instead of access_internal(). * file.c (rb_file_writable_real): ditto. * file.c (rb_file_executable_real): ditto. |
e93a68abfa10a7eba1fd769b6cbc55da7796f8e8
|
2013-02-21 |
* file.c (RB_MAX_GROUPS): moved to * internal.h (RB_MAX_GROUPS): here. |
8a9dc061f5737543eaca17ceafa6ebe4886cb26e
|
2013-02-21 |
* file.c (rb_group_member): added an error check. SUS says, getgroups(small_value) may return EINVAL. |
7355c6d9c99d7636c9acbd262149f72d1f900d9f
|
2013-02-21 |
* signal.c (sigsegv): avoid to use async signal unsafe functions when nested sigsegv is happen. [Bug #5014] [ruby-dev:44082] |
bc5a5989c044768e7a70c251d7a3f91a8f1ca0e8
|
2013-02-24 |
* signal.c (sigsegv): suppress unused result warning. Because write(2) is marked __warn_unused_result__ on Linux glibc. |
2474a1ac007ab4c7f8b9ad202a4ff61a1cb52005
|
2013-02-24 |
remove duplicated entry. |
ffbd120efdbcc65937413102086f28b4090e9ce5
|
2013-02-25 |
* error.c: clarify a document of SignalException. Process.kill() doesn't have any guarantee when signal will be delivered. [Bug #7951] [ruby-core:52864] |
5cebbe8f9b61edac849d8131e32d4d20105d1164
|
2013-03-10 |
* thread_pthread.c (set_nonblock): new helper function for set O_NONBLOCK. * thread_pthread.c (rb_thread_create_timer_thread): set O_NONBLOCK to timer_thread_pipe[0] too. |
3887a34c9040ae6f29eea592073d4dcc283cea4e
|
2013-03-10 |
* thread_pthread.c (USE_SLEEPY_TIMER_THREAD): use more accurate ifdef condtions. |
27f25728e69274fd226007bd6765d3819b0449c7
|
2013-03-10 |
* thread_pthread.c (timer_thread_sleep): use poll() instead of select(). select doesn't work if timer_thread_pipe[0] is greater than FD_SETSIZE. * thread_pthread.c (USE_SLEEPY_TIMER_THREAD): add a dependency against poll. |
368fdf9cc164caef3ea08cdd9226542de943479f
|
2013-03-10 |
* thread_pthread.c (consume_communication_pipe): retry when read returned CCP_READ_BUFF_SIZE. |
383a2579c3027e579f64e08597bae1097619baf4
|
2013-03-10 |
* thread_pthread.c (rb_thread_create_timer_thread): factor out creating communication pipe logic into separate function. * thread_pthread.c (setup_communication_pipe): new helper function. * thread_pthread.c (set_nonblock): moves a definition before setup_communication_pipe. |
0eeb116923171e73876d286e9573cb21cae057ae
|
2013-03-10 |
* thread_pthread.c (ubf_select): add to small comments why we need to call rb_thread_wakeup_timer_thread(). |
9c021064a28639fbb9ccb6a9877fc504f377624c
|
2013-03-10 |
* thread_pthread.c (rb_thread_wakeup_timer_thread_fd): add fd argument and remove hardcoded dependency of timer_thread_pipe[1]. * thread_pthread.c (consume_communication_pipe): add fd argument. * thread_pthread.c (close_communication_pipe): ditto. |
bcf12936810465caa1e6b019652ae42bf9fc22f0
|
2013-03-10 |
* thread_pthread.c (ARRAY_SIZE): new. * thread_pthread.c (gvl_acquire_common): use low priority notification for avoiding timer thread interval confusion. If we use timer_thread_pipe[1], every gvl_yield() request one more gvl_yield(). It lead to thread starvation. [Bug #7999] [ruby-core:53095] * thread_pthread.c (rb_reserved_fd_p): adds timer_thread_pipe_low to reserved fds. |
235546ba049fe1e13517d075ec3ba9721af8cb54
|
2013-03-10 |
* io.c (rb_update_max_fd): use ATOMIC_CAS because this function is used from timer thread too. |
19e0d7c18ef614d65a279eaf427dea8786f659ac
|
2013-03-10 |
* test/thread/test_queue.rb (TestQueue#test_thr_kill): reduce iterations from 2000 to 250. When running on uniprocessor systems, every th.kill needs TIME_QUANTUM_USEC time (i.e. 100msec on posix systems). Because, "r.read 1" is 3 steps operations that 1) release GVL 2) read 3) acquire gvl and (1) invoke context switch to main thread. and then, main thread's th.kill resume (1), but not (2). Thus read interrupt need TIME_QUANTUM_USEC. Then maximum iteration is 30sec/100msec = 300. |
117b51a3fa02de5aa82d5de80d36af8aff559640
|
2013-03-10 |
* probes.d: added argument name |
c38469f453d8857f56ab18ad7cf2c2507558bcd8
|
2013-03-10 |
* probes.d (symbol-create): change argument name `string' to `str'. `string' is a keyword for systemtap. |
d71a8880b4d6765294468e94834aeabdf72af6bf
|
2013-03-10 |
* tool/gen_ruby_tapset.rb: add tapset generator. |
de6d82f90703bde85bfd419aeb343ef0fd94044b
|
2013-03-10 |
* process.c (setup_communication_pipe): remove unused function. it was unintentionally added r39683. |
cbd15bdb95e6d9825a2ef8f08d2d6ed62d4ec9e1
|
2013-03-10 |
* NEWS (Mutex#owned?): no longer experimental. |
0b1ff939455a96bb2e715d029c0d412af8de593a
|
2013-03-10 |
* tool/change_maker.rb (#diff2index): check Encoding::BINARY. BASERUBY may still be 1.8.x. |
1c47bd88c13a19ce0b0a184d6e552f4d26433ac4
|
2013-03-10 |
* lib/thread.rb (Queue#push): return self. * lib/thread.rb (Queue#clear): ditto. * lib/thread.rb (SizedQueue#push): ditto. * test/thread/test_queue.rb: add tests for the above. |
f407b14167082c16a48a87fcb1272326d7640547
|
2013-03-10 |
ChangeLog reformatting and append ticket number. |
e1807e59951d4280895dd3f2c2fc4a774ad3fe6a
|
2013-03-15 |
* thread_pthread.c (numberof): renamed from ARRAY_SIZE() because other all files use numberof(). |
2e544471ae719757a0fec2a686bdeb7a97540c90
|
2013-03-16 |
* configure.in (_FORTIFY_SOURCE): added a few comments. |
798ff850e41752834bd27081c2e85f874b2cc4aa
|
2013-03-16 |
* configure.in: check struct timeval exist or not. * include/ruby/missing.h (struct timeval): check HAVE_STRUCT_TIMEVAL properly. and don't include sys/time.h if struct timeval exist. |
03a6ce80d04dd386a8514faf4abc86b3ea290a68
|
2013-03-16 |
* include/ruby/missing.h (struct timespec): include <sys/time.h> |
c824d47ebc829560d022df74d355f69c601ea102
|
2013-03-16 |
* include/ruby/missing.h (__syscall): moved to... * io.c: here. because __syscall() is only used from io.c. |
92b367e0696785540143707af4093108d6d98c79
|
2013-03-16 |
* thread.c: disabled _FORTIFY_SOURCE for avoid to hit glibc bug. [Bug #8080] [ruby-core:53349] * test/ruby/test_io.rb (TestIO#test_io_select_with_many_files): test for the above. |
28d3acb045cc1f5dec7fbaf9f71ac1ee1256e7d8
|
2013-03-16 |
* include/ruby/missing.h: removed __linux__. it's unnecessary. |
326dd6e0ccb98141ef8578d429d113e8f714b4c6
|
2013-03-16 |
* ext/date/date_core.c: include sys/time.h for avoiding implicit declaration of gettimeofday(). |
b945ad289f14c1b1ba65bdd9a4e1106f3cee134c
|
2013-03-19 |
* io.c (linux_iocparm_len): enable only exist _IOC_SIZE(). Because musl libc doesn't have it. [Bug #8051] [ruby-core:53229] |
4ea96ece8400f1c6caa8a2429f6d93f15434238f
|
2013-03-19 |
* internal.h: added a declaration of ruby_kill(). * thread.c (ruby_kill): helper function of kill(). |
c9073822c2837bc51d47f1b90e2dae0701c08281
|
2013-03-19 |
* thread.c (ruby_kill): release GVL while waiting signal delivered. |
8c52515eaa82330581e06751631f07e8ebed180e
|
2013-03-19 |
* thread.c (ruby_kill): added a few comments. |
62565929b35484fd9d4d6adf7cea8f71a12f71b6
|
2013-03-19 |
* test/ruby/test_signal.rb (test_hup_me): added a few comments. |
b95336b2fe56585ab585ca7c17fbad4c145e9e2b
|
2013-03-24 |
* addr2line.c (putce): suppress unused return value warning. |
6edde68b5d4c66a33325191311b97081720433cd
|
2013-04-24 |
* io.c (rb_fd_fix_cloexec): use rb_update_max_fd(). |
9b89888ddafcfd8f13f3f7535ce1744e005bac3b
|
2013-05-03 |
* include/ruby/defines.h (RUBY_ATTR_ALLOC_SIZE): New for attribute((alloc_size(params))). |
2f6cab0f59a07194a6a6d1a9cba68062613b1e6d
|
2013-05-12 |
* bignum.c: remove redundant decl for big_lshift() big_rshift(). |
fa5db01644420b903549f69e99767995a62cbc65
|
2013-05-12 |
* configure.in: sorts AC_CHECK_FUNCS()s as alphabetical order. |
7776ca930b0b72a95d453481d942c4069d088dc6
|
2013-05-12 |
* configure.in: add getenv() declaration check. * dln_find.c: add HAVE_DECL_GETENV test. |
a79cccb5c6797437a319a8834a8b68243d63fe86
|
2013-05-12 |
* configure.in: move clock_gettime() check into regular place. |
f15d3ff927daa77e86abf726eec1baedcffbb48d
|
2013-05-12 |
* configure.in: adds comments for setjmp check. |
2d0c7e37bf51191f20f06362763f3e8661641217
|
2013-05-12 |
* configure.in: remove AC_CHECK_FUNC(close). It is not used from anywhere. |
e79f7907987d9dc2445892b7b571a621208d29bf
|
2013-05-12 |
* configure.in: removes AC_CHECK_FUNC(fseeko, fseeko64, ftello, ftello64). They are not used from anywhere. |
05628d3b6d49bd301f16acdb882442c81d97475d
|
2013-05-12 |
* configure.in: removes AC_CHECK_FUNC(ftruncate64). * configure.in: adds RUBY_REPLACE_TYPE(off_t) for creating NUM2OFFT. * file.c (rb_file_truncate): use correct type. chsize() take a long. * include/ruby/ruby.h (NUM2OFFT): use a definition created by a configure script by default. |
59a3943a6786a9357ea8221f197ca839247cf42f
|
2013-05-12 |
* configure.in: abort if gettimeofday doesn't exist. |
c0a30fcbf93178fafe5b7a12fd5f3ad186b3535a
|
2013-05-12 |
* signal.c (rb_f_kill): fixes typo. s/HAS_KILLPG/HAVE_KILLPG/. |
3f6b5aa2f80515f30f4db46a07da85dbfdcadbed
|
2013-05-12 |
* configure.in: removes AC_CHECK_FUNCS(pause) because it's unused. |
82330e919b3897a49e11a031f7a080718231a5f1
|
2013-05-12 |
* configure.in: removes AC_CHECK_FUNCS(setitimer) because it's unsed. |
93d061a8fd774022f654f4d8fd72963647381920
|
2013-05-12 |
* process.c: move '#define SPAWNV 1' to win32/Makefile.sub. * win32/Makefile.sub: see above. |
96ffcf557bb93f891ab9f75053a0b9edda62d064
|
2013-05-12 |
* file.c (rb_file_s_truncate): use correct type. chsize takes a long. |
6591e26eb24ddf89e93941f1207511bb85ef54ae
|
2013-05-12 |
* configure.in: removes 'ac_cv_func_fseeko=yes' form MinGW specific definitions. |
f3c9bb063e37cdedd888f9d755c7303793e56962
|
2013-05-12 |
* include/ruby/intern.h (rb_uint2big, rb_int2big, rb_uint2inum) (rb_int2inum, rb_ll2inum, rb_ull2inum): removed because ruby.h has a declaration for these. |
2b881310f8b14066f696275ae3811a0bc87dc30b
|
2013-05-12 |
* include/ruby/intern.h (rb_iv_set, rb_iv_get): removed. Bcause ruby.h has a declaration for that. |
523bd6737ea97bce1f92d2e171a09cc564b50125
|
2013-06-02 |
* configure.in: removes AC_CHECK_FUNCS(readdir_r). readdir_r() is only used from dir.c and it doesn't need readdir_r(). * configure.in (SIZEOF_STRUCT_DIRENT_TOO_SMALL): remvoed. It is only used for readdir_r. * dir.c: removes NAME_MAX_FOR_STRUCT_DIRENT. It is not right way to detect maximum length of path len. POSIX require to use fpathconf(). IOW, it might have lead to make a vulnerability using stack smashing. Moreover, readdir() works enough for our usage. * dir.c (READDIR): removes an implementation which uses readdir_r() and parenthesize in a macro body correctly. * dir.c (dir_read): removes IF_HAVE_READDIR_R(DEFINE_STRUCT_DIRENT entry), it is used only for readdir_r(). * dir.c (dir_each): ditto. * dir.c (glob_helper): ditto. |
90425153fbd26f9e5bdaa0a2df805b2a37350e9b
|
2013-09-10 |
* thread.c (rb_mutex_unlock): Mutex#unlock no longer raise an exception even if uses on trap. [Bug #8891] |
1a0eb89cffa4f34ca56e561dbfb51a3c9d5bdcdf
|
2013-09-28 |
* test/dl/test_base.rb: {libc, libm} detection now handle GNU/Hurd correctly. Patch by Gabriele Giacone (1o5g4r8o@gmail.com). * test/fiddle/helper.rb: ditto. |
f450dede0e71b0db8ec0ba2f31f6907a778e3fbb
|
2013-09-28 |
Added ticket number |
1fa5d76ae08d000b8ba9b728b78e5a9d3d308129
|
2013-10-08 |
* cont.c: disable FIBER_USE_NATIVE on GNU/Hurd because it doesn't support a combination getcontext() and threads. Patch by Gabriele Giacone (1o5g4r8o@gmail.com). [Bug #8990][ruby-core:57685] |
30edf111c5f409e161ec4ff9c4f4d659f2deaf54
|
2013-10-24 |
* thread.c (rb_thread_terminate_all): add a comment why infinite sleep is safe. |
61430a167b3f562ffbaeb3bbbf68d33b907881d0
|
2013-10-24 |
* thread.c (rb_thread_terminate_all): add a comment why we need state check and call terminate_i again. |
02b501323e3cfd2ce12ac11af8c1169ad3f51523
|
2013-10-31 |
* thread.c (rb_mutex_struct): reduce rb_mutex_t size by 8 bytes on 64bit platform. Patch by Eric Wong. [Feature #9068][ruby-core:58114] |
476af221b70d4698acadff0e4f379f637579237b
|
2014-06-23 |
* nacl/nacl-config.rb: Use File.exist? instead of executable? for irt_core. Recent nacl_sdk has non-executable irt_core. Patch by Shinichiro Hamaji. [Fixes GH-529] https://github.com/ruby/ruby/pull/529 |
00eb72039495a0ae2cdae55f1d660a2ab0f26cb9
|
2014-07-11 |
* lib/net/smtp.rb (Net::SMTP#data): enable buffering while 'data' send for optimizing Net::SMTP#send_message. [ruby-dev:48329] [misc #9981] patch by Masahiro Tomita. |
0fa75e813ecf0f5f3dd01f89aa76d0e25ab4fcd4
|
2014-10-21 |
* ext/etc/etc.c (etc_nprocessors_affin): optimize memory usege a bit. Typical rubyist never use 8k cpus machine. |
dfe56d36624b9da86121a40469d487099d9818e9
|
2014-10-21 |
* ext/etc/etc.c (etc_nprocessors_affin): minor spell fix. |
2f438d60106789a8628617ab41bc1c750ecae62b
|
2014-10-21 |
* ext/etc/etc.c (etc_nprocessors_affin): maximum "n" should be 16384. |
8ecd3b7114d6c0b81c0165dd0defa8f3df261d0b
|
2015-06-14 |
* thread.c (thread_start_func_2): don't interrupt when last thread exit unless main thread is already exited. Otherwise main thread could be wrongly interrupted when it uses rb_thread_call_without_gvl(). Patch by Takehiro Kubo. [Bug #11237][ruby-dev:49044][GH-898] * test/-ext-/gvl/test_last_thread.rb: new test for the above fix. * ext/-test-/gvl/call_without_gvl/call_without_gvl.c: new ext for the above test. * ext/-test-/gvl/call_without_gvl/extconf.rb: ditto. |
bb79c011bf39cab7bcf82656548b04c80db7347f
|
2015-09-15 |
* test/ruby/test_thread.rb (TestThread#test_mutex_synchronize): insert waste loop for invoking preemptive thread context switch. |
06ca0b67f48839cc682e194512d69324d2965ddc
|
2015-09-16 |
* dir.c (glob_helper): check pathtype once again by lstat(2) if dp->d_type is DT_UNKNOWN. XFS may return DT_UNKNOWN. |
ae05ae33c1194c6ad40730096b5d110e4de50222
|
2015-09-17 |
* test/ruby/test_dir.rb (TestDir#test_fileno): s/?x/"x"/. Don't use tricky code, please. |
8c84716b24185c97d918080e5850a3694301e268
|
2015-10-08 |
* benchmark/bm_require.rb: new benchmark for require. * benchmark/bm_require_thread.rb: new benchmark for conflicting require vs thread. like [Bug #11559] * prepare_require.rb: new file for preparing above tests. * prepare_require.rb: ditto. |
68c35d8bb94d2b714ef7e7f9426c4b22b1cf01a9
|
2015-10-08 |
* benchmark/prepare_require.rb: skip file creation if it already exist. Suggested by ko1. |
bc8687acd62584bf2ba9a951289f3f25a4de7229
|
2015-10-17 |
* ruby.c (open_load_file): reset O_NONBLOCK after open. Even if S_ISREG() is true, the file may be file on FUSE filesystem or something. We can't assume O_NONBLOCK is safe. Moreover, we should wait if the path is point to FIFO. That's FIFO semantics. GVL should be transparent from ruby script. Thus, just reopen without O_NONBLOCK for filling the requirements. [Bug #11060][Bug #11559] * ruby.c (loadopen_func): new for the above. * file.c (ruby_is_fd_loadable): new. for checks loadable file type of not. * file.c (rb_file_load_ok): use ruby_is_fd_loadble() * internal.h: add ruby_is_fd_loadble() * common.mk: now, ruby.o depend on thread.h. * test/ruby/test_require.rb (TestRequire#test_loading_fifo_threading_success): new test. This test successful case that loading from FIFO. * test/ruby/test_require.rb (TestRequire#test_loading_fifo_threading_raise): rename from test_loading_fifo_threading. You souldn't rescue an exception if you test raise or not. Moreover, this case should be caught IOError because load(FIFO) should be blocked until given any input. |
50024f9da6280c9fe48a4886364bae62d4eef92e
|
2015-10-17 |
* io.c (fptr_finalize): don't release gvl if fptr is not writable. writable fd may block on close(2) when it's on NFS. But readonly fd doesn't. [Bug #11559] result: make benchmark OPTS="-p bm_require_t -e ruby-trunk -e ruby-2.2.2" build-ruby: 0.171 ruby 2.3.0dev(r52151): 0.659 ruby 2.2.0p95 (r50295): 0.834 |
ff132bc0f46cf505ee70e17e9948b5288e704d28
|
2015-10-18 |
Revert r52154 |
698f6648c5e560c77c2a3c4c3a142ac47eef0a59
|
2015-10-18 |
* ruby.c (open_load_file): use rb_thread_wait_fd() instead of reopen. |
21704f2269093ff8b80f32e07a1cb6ad4d8f6896
|
2015-10-18 |
* file.c (ruby_is_fd_loadable): this should be fail if st_mode is not regular file nor FIFO. |
a0a77c5b33858ca8d567e9bceee3d7882db58a19
|
2015-10-18 |
re-commit r52152 |
6803c4e2a8e48e8f2f855015e4933a9947913b92
|
2015-10-18 |
* include/ruby/defines.h (DOSISH): add comments. |
4ad2057f27e1b03870d2ebcab7f7dbfca4b368ef
|
2015-10-18 |
* ChangeLog: Good-bye OS/2. * common.mk: ditto. * configure.in: ditto. * dln_find.c: ditto. * ext/Setup.emx: ditto. * ext/extmk.rb: ditto. * ext/socket/extconf.rb: ditto. * ext/zlib/extconf.rb: ditto. * file.c: ditto. * include/ruby/defines.h: ditto. * io.c: ditto. * lib/mkmf.rb: ditto. * missing/os2.c: ditto. * process.c: ditto. * ruby.c: ditto. * NEWS: announce OS/2 is no longer supported. |
a857b11dedf7a94d622d1ae73d3e7fb2a4043ff0
|
2015-10-18 |
* file.c (rb_file_identical_p): simplify ifdefs |
395dd7867e62fde1aada773adad00cd07397c5de
|
2015-10-18 |
fix compile error |
a923a6f04c779e85787cfee6207ed8b0ae0e4070
|
2015-10-18 |
* ruby.c (open_load_file): add a comment. |
e91baf5634c419247a176f60e399a9446ff2ccf7
|
2015-10-18 |
* dln.c: simplify #ifdef. _WIN32 and __CYGWIN__ are exclusive. see include/ruby/defines.h * gc.c: ditto. * ext/sdbm/_sdbm.c: ditto. |
3a48e126073a0bba09372412f15e7792e6409129
|
2015-10-18 |
* numeric.c: Good-by Borland-C. * include/ruby/backward/rubyio.h: ditto. * include/ruby/backward/st.h: ditto. * include/ruby/backward/util.h: ditto. * include/ruby/backward/rubysig.h: ditto. * include/ruby/backward/classext.h: ditto. * dln.c: ditto. * gc.c: ditto. * win32/resource.rb: ditto. * win32/dir.h: ditto. * ext/tk/tcltklib.c: ditto. * NEWS: announce that Borland-C is no longer supported. |
3a49d35352dc1adb234ce3a2e409be71bd339836
|
2015-10-18 |
* lib/mkmf.rb: Good-by Borland-C (cont). |
348d7b096d973a28389f741fc6b1cc711b78e3ac
|
2015-10-18 |
* dln.c: remove defined(__WATCOMC__). |
75356fc879452863682ba4fe7a370cff32399707
|
2015-10-18 |
* common.mk: add comments how to use "make benchmark" |
727ae6f813967ecbe381f8b11314cee90bec002b
|
2015-10-18 |
* common.mk: add a comment how to use "make test-all" |
0bdf13a10424d28f109292329892aef71a30a18c
|
2015-10-18 |
* include/ruby/backward/util.h: Good-by Borland-C. |
a4c6ad1d1978f1b6007fbe5b0cc5b1abaee67d1a
|
2015-10-18 |
* random.c (fill_random_bytes_syscall): use ATOMIC_SET() for updating try_syscall. |
47f0a8f9d04cf1434a22dbfce04b05f1f546468f
|
2015-10-18 |
* random.c (fill_random_bytes_syscall): don't use GRND_NONBLOCK. It is meaningless. If SYS_getrandom(GRND_NONBLOCK) return EAGAIN, we eventually call fill_random_bytes_urandom() and it block such as SYS_getrandom() without GRND_NONBLOCK. |
6c060b2b581288f67417eabdcf20acc6f154001e
|
2015-10-18 |
* random.c (fill_random_bytes_urandom): add a comment why using O_NONBLOCK and O_NOCTTY. |
0751bc3fad795d49fe844afe9b7c2a67d43b149f
|
2015-10-18 |
Revert r52180 |
dea685c783b2b98ca8e848add4f174f15162c65f
|
2015-11-30 |
* missing/explicit_bzero.c: new file. define explicit_bzero. * common.mk: add a rule for explicit.o. * configure.in: detect explicit_bzero and memset_s. * include/ruby/missing.h: add explicit_bzero. * random.c (init_randomseed): use explicit_bzero() instead of memset(). memset could be eliminated by compiler optimization. |
f7bd7d6f1f499726cc4aca99714e1a0050dbd92b
|
2015-11-30 |
* random.c: random_raw_seed don't use GRND_NONBLOCK. GRND_NONBLOCK mean the result might not have an enough cryptic strength and easy predictable. That's no good for SecureRandom. |
86caaefc1ff89e8d0c97572661f70f55052bc0ce
|
2015-11-30 |
* include/ruby/util.h: remove a warning suppression C4723 (potential divide by zero) for VisualC++. It's meaningless. Before r26197, there is ruby_div0() in this place and it actually made divide by zero. But now it's just garbage. |
07083767e9cf500b31670fe0d5dd55a162f0c520
|
2015-11-30 |
* ext/openssl/ossl_rand.c (ossl_rand_bytes): RAND_bytes could be return -1 as an error. Therefore, added error handling. * ext/openssl/ossl_pkey_dsa.c (dsa_generate): ditto. |
7104a473ea77fa34ffbf831b64b94d0e58cb68f0
|
2015-11-30 |
* lib/securerandom.rb (SecureRandom::gen_random): use /dev/urandom for initialize OpenSSL's rand. |
12e059b18cfe86817e5dc16860ab90d7128f1f66
|
2015-11-30 |
* random.c (init_randomseed): remove "initial" argument. It never be used from outside of this function. |
0c4e7767edf623e0b070256f7bdc75b0f404ba71
|
2015-11-30 |
* configure.in: sort AC_CHECK_HEADERS() by alphabetical order. |
052535be3e082d9c2d6b7650ff9430479036bab5
|
2015-11-30 |
* random.c (init_hashseed, init_siphash): extract initialize functions. |
99c05fb38e8dc6d96a59c074de7b9aa39b1df31e
|
2015-11-30 |
* random.c (Init_RandomSeed): move all Random::DEFAULT construction bits to Init_RandomSeed2. Random::DEFAULT and Ruby internal hashes are no longer shared their seed. * random.c (Init_RandomSeed2): ditto. And, kill evil rb_obj_reveal() stuff. * random.c (init_hashseed): add MT argument. * random.c: (init_siphash): ditto. * test/ruby/test_rand.rb (TestRand#test_default_seed): new test for Random::DEFAULT::seed. |
86af9bba63814b20e2cc7f59791b2d975268da78
|
2015-11-30 |
* random.c (InitVM_Random): move Random::DEFAULT initialization bits to Init_Random_default. * random.c (Init_Random_default): renamed from Init_Rndom2. * random.c (Init_RandomSeedCore): renamed from Init_Random. |
a014e9e8c68e61517a7459d1dec4ca9df2e6b8de
|
2015-11-30 |
* test/ruby/test_rand.rb (TestRand#test_default_seed): add srand case. |
487748fac8b43936bca1209c22fcd995a739aa93
|
2015-11-30 |
* thread_pthread.c (register_ubf_list): renamed from add_signal_thread_list. * thread_pthread.c (unregister_ubf_list): renamed from remove_signal_thread_list. * thread_pthread.c (ubf_wakeup_all_threads): renamed from ping_signal_thread_list. * thread_pthread.c (ubf_wakeup_thread): renamed from ubf_select_each. * thread_pthread.c (ubf_threads_empty): renamed from check_signal_thread_list(). * thread_pthread.c (ubf_list_lock): renamed from signal_thread_list_lock. |
ed0858a8c5b193f91423c7043a0f34083db5724d
|
2015-12-01 |
fix r52806 |
586c174922fc3be5181a59585ec27a75f6b29a1c
|
2015-12-01 |
* missing/explicit_bzero.c: add a few comment. * missing/explicit_bzero.c: add disabling optimization on gcc. |
48de9684b95e9aad03473fa1a00b640bbf428d12
|
2015-12-01 |
* missing/explicit_bzero.c: add ruby_explicit_bzero_hook_unused for preventing optimization. Inspired from OpenBSD. |
68bac3cca4d8975d9f8ac2e4772471a30c604b12
|
2015-12-18 |
* vm.c (vm_exec): call RUBY_DTRACE_CMETHOD_RETURN_HOOK instead of RUBY_DTRACE_METHOD_RETURN_HOOK. |
ca8f454f09a07bffc70ca90a792b203205538215
|
2017-05-02 |
nogvl_wait_for_single_fd must wait as its name |
c70f12c288cec94d3a7079ee3ffac3ee606d29ff
|
2017-10-21 |
kill "variable set but not used" warning |
4911d45648d03a519a3c93ca04649705a10fe149
|
2017-10-21 |
kill variable set but not used warning |
af14720f749ea0274cadd4fa0329b86567ae0057
|
2017-10-21 |
kill "value computed is not used" warning |
e3b4cd38dfe6df2545bf7a3dee01f9b4a78e94d0
|
2017-10-21 |
kill "discards ‘const’ qualifier" warning |
1493972e8234cd5d57881d2353d153aa7cd67e72
|
2017-10-21 |
kill "discards ‘const’ qualifier" warning |
3666ceb729998a6149d335151517f56aef2eba74
|
2017-10-21 |
test_cp_preserve_permissions should care about umask |
3e5a25210e27ffda6e8c1e4b8c5494b1fcbb8e3e
|
2017-10-21 |
test_pathname.rb#test_open should care about umask |
4d7a6d04b2c71aabb9d6e619f4405887806a5be8
|
2019-12-01 |
Avoid unnecessary tzset() call |
7f2cd2ae6fea76ff3a2b95b69e6e2f749e8a249f
|
2019-12-03 |
fix typo |