* [ruby-core:59466] [ruby-trunk - Bug #9343][Open] [PATCH] SizedQueue#max= wakes up waiters properly
@ 2014-01-02 7:25 normalperson (Eric Wong)
2014-01-06 6:31 ` [ruby-core:59573] [ruby-trunk - Bug #9343] " ko1 (Koichi Sasada)
` (6 more replies)
0 siblings, 7 replies; 11+ messages in thread
From: normalperson (Eric Wong) @ 2014-01-02 7:25 UTC (permalink / raw
To: ruby-core
Issue #9343 has been reported by normalperson (Eric Wong).
----------------------------------------
Bug #9343: [PATCH] SizedQueue#max= wakes up waiters properly
https://bugs.ruby-lang.org/issues/9343
Author: normalperson (Eric Wong)
Status: Open
Priority: Normal
Assignee:
Category: ext
Target version: current: 2.2.0
ruby -v: ruby 2.2.0dev (2014-01-02 trunk 44484) [x86_64-linux]
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN, 2.1: UNKNOWN
We were accessing the wrong array and trying to wake up
elements stored in the queue :x
$ git pull git://80x24.org/ruby.git szqmaxset-wakeup
The following changes since commit d1cc0ebb38a23feb37bb16ff2df3137c3cead069:
mkrunnable.rb: fix DLL path on Windows (2014-01-02 02:41:06 +0000)
are available in the git repository at:
git://80x24.org/ruby.git szqmaxset-wakeup
for you to fetch changes up to 9932853dec14a4f62606098d452da80a54bf9ecc:
SizedQueue#max= wakes up waiters properly (2014-01-02 07:22:02 +0000)
----------------------------------------------------------------
Eric Wong (1):
SizedQueue#max= wakes up waiters properly
ext/thread/thread.c | 2 +-
test/thread/test_queue.rb | 7 +++++++
2 files changed, 8 insertions(+), 1 deletion(-)
--
http://bugs.ruby-lang.org/
^ permalink raw reply [flat|nested] 11+ messages in thread
* [ruby-core:59573] [ruby-trunk - Bug #9343] [PATCH] SizedQueue#max= wakes up waiters properly
2014-01-02 7:25 [ruby-core:59466] [ruby-trunk - Bug #9343][Open] [PATCH] SizedQueue#max= wakes up waiters properly normalperson (Eric Wong)
@ 2014-01-06 6:31 ` ko1 (Koichi Sasada)
2014-02-05 15:10 ` [ruby-core:60510] " ko1
` (5 subsequent siblings)
6 siblings, 0 replies; 11+ messages in thread
From: ko1 (Koichi Sasada) @ 2014-01-06 6:31 UTC (permalink / raw
To: ruby-core
Issue #9343 has been updated by ko1 (Koichi Sasada).
Assignee set to ko1 (Koichi Sasada)
----------------------------------------
Bug #9343: [PATCH] SizedQueue#max= wakes up waiters properly
https://bugs.ruby-lang.org/issues/9343#change-44108
Author: normalperson (Eric Wong)
Status: Open
Priority: Normal
Assignee: ko1 (Koichi Sasada)
Category: ext
Target version: current: 2.2.0
ruby -v: ruby 2.2.0dev (2014-01-02 trunk 44484) [x86_64-linux]
Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN, 2.1: UNKNOWN
We were accessing the wrong array and trying to wake up
elements stored in the queue :x
$ git pull git://80x24.org/ruby.git szqmaxset-wakeup
The following changes since commit d1cc0ebb38a23feb37bb16ff2df3137c3cead069:
mkrunnable.rb: fix DLL path on Windows (2014-01-02 02:41:06 +0000)
are available in the git repository at:
git://80x24.org/ruby.git szqmaxset-wakeup
for you to fetch changes up to 9932853dec14a4f62606098d452da80a54bf9ecc:
SizedQueue#max= wakes up waiters properly (2014-01-02 07:22:02 +0000)
----------------------------------------------------------------
Eric Wong (1):
SizedQueue#max= wakes up waiters properly
ext/thread/thread.c | 2 +-
test/thread/test_queue.rb | 7 +++++++
2 files changed, 8 insertions(+), 1 deletion(-)
--
http://bugs.ruby-lang.org/
^ permalink raw reply [flat|nested] 11+ messages in thread
* [ruby-core:60510] [ruby-trunk - Bug #9343] [PATCH] SizedQueue#max= wakes up waiters properly
2014-01-02 7:25 [ruby-core:59466] [ruby-trunk - Bug #9343][Open] [PATCH] SizedQueue#max= wakes up waiters properly normalperson (Eric Wong)
2014-01-06 6:31 ` [ruby-core:59573] [ruby-trunk - Bug #9343] " ko1 (Koichi Sasada)
@ 2014-02-05 15:10 ` ko1
2014-02-05 17:46 ` [ruby-core:60512] " Eric Wong
2014-02-05 17:53 ` [ruby-core:60513] " normalperson
` (4 subsequent siblings)
6 siblings, 1 reply; 11+ messages in thread
From: ko1 @ 2014-02-05 15:10 UTC (permalink / raw
To: ruby-core
Issue #9343 has been updated by Koichi Sasada.
sorry for long absent.
I reviewed this patch and I have a question.
Only `diff' threads should wake-up?
Index: thread.c
===================================================================
--- thread.c (revision 44833)
+++ thread.c (working copy)
@@ -437,7 +437,7 @@
diff = max - GET_SZQUEUE_ULONGMAX(self);
}
RSTRUCT_SET(self, SZQUEUE_MAX, vmax);
- while (diff > 0 && !NIL_P(t = rb_ary_shift(GET_QUEUE_QUE(self)))) {
+ while (diff-- > 0 && !NIL_P(t = rb_ary_shift(GET_SZQUEUE_WAITERS(self)))) {
rb_thread_wakeup_alive(t);
}
return vmax;
----------------------------------------
Bug #9343: [PATCH] SizedQueue#max= wakes up waiters properly
https://bugs.ruby-lang.org/issues/9343#change-44975
* Author: Eric Wong
* Status: Open
* Priority: Normal
* Assignee: Koichi Sasada
* Category: ext
* Target version: current: 2.2.0
* ruby -v: ruby 2.2.0dev (2014-01-02 trunk 44484) [x86_64-linux]
* Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN, 2.1: UNKNOWN
----------------------------------------
We were accessing the wrong array and trying to wake up
elements stored in the queue :x
$ git pull git://80x24.org/ruby.git szqmaxset-wakeup
The following changes since commit d1cc0ebb38a23feb37bb16ff2df3137c3cead069:
mkrunnable.rb: fix DLL path on Windows (2014-01-02 02:41:06 +0000)
are available in the git repository at:
git://80x24.org/ruby.git szqmaxset-wakeup
for you to fetch changes up to 9932853dec14a4f62606098d452da80a54bf9ecc:
SizedQueue#max= wakes up waiters properly (2014-01-02 07:22:02 +0000)
----------------------------------------------------------------
Eric Wong (1):
SizedQueue#max= wakes up waiters properly
ext/thread/thread.c | 2 +-
test/thread/test_queue.rb | 7 +++++++
2 files changed, 8 insertions(+), 1 deletion(-)
---Files--------------------------------
0001-SizedQueue-max-wakes-up-waiters-properly.patch (1.44 KB)
--
http://bugs.ruby-lang.org/
^ permalink raw reply [flat|nested] 11+ messages in thread
* [ruby-core:60512] Re: [ruby-trunk - Bug #9343] [PATCH] SizedQueue#max= wakes up waiters properly
2014-02-05 15:10 ` [ruby-core:60510] " ko1
@ 2014-02-05 17:46 ` Eric Wong
0 siblings, 0 replies; 11+ messages in thread
From: Eric Wong @ 2014-02-05 17:46 UTC (permalink / raw
To: Ruby developers
ko1@atdot.net wrote:
> sorry for long absent.
No worries, I forgot about this, too :x
> I reviewed this patch and I have a question.
> Only `diff' threads should wake-up?
Yes, your patch looks correct. Old thread.rb had "diff.times do"
^ permalink raw reply [flat|nested] 11+ messages in thread
* [ruby-core:60513] [ruby-trunk - Bug #9343] [PATCH] SizedQueue#max= wakes up waiters properly
2014-01-02 7:25 [ruby-core:59466] [ruby-trunk - Bug #9343][Open] [PATCH] SizedQueue#max= wakes up waiters properly normalperson (Eric Wong)
2014-01-06 6:31 ` [ruby-core:59573] [ruby-trunk - Bug #9343] " ko1 (Koichi Sasada)
2014-02-05 15:10 ` [ruby-core:60510] " ko1
@ 2014-02-05 17:53 ` normalperson
2014-02-05 23:01 ` [ruby-core:60517] " SASADA Koichi
2014-02-05 23:03 ` [ruby-core:60518] " ko1
` (3 subsequent siblings)
6 siblings, 1 reply; 11+ messages in thread
From: normalperson @ 2014-02-05 17:53 UTC (permalink / raw
To: ruby-core
Issue #9343 has been updated by Eric Wong.
ko1@atdot.net wrote:
> sorry for long absent.
No worries, I forgot about this, too :x
> I reviewed this patch and I have a question.
> Only `diff' threads should wake-up?
Yes, your patch looks correct. Old thread.rb had "diff.times do"
----------------------------------------
Bug #9343: [PATCH] SizedQueue#max= wakes up waiters properly
https://bugs.ruby-lang.org/issues/9343#change-44976
* Author: Eric Wong
* Status: Open
* Priority: Normal
* Assignee: Koichi Sasada
* Category: ext
* Target version: current: 2.2.0
* ruby -v: ruby 2.2.0dev (2014-01-02 trunk 44484) [x86_64-linux]
* Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN, 2.1: UNKNOWN
----------------------------------------
We were accessing the wrong array and trying to wake up
elements stored in the queue :x
$ git pull git://80x24.org/ruby.git szqmaxset-wakeup
The following changes since commit d1cc0ebb38a23feb37bb16ff2df3137c3cead069:
mkrunnable.rb: fix DLL path on Windows (2014-01-02 02:41:06 +0000)
are available in the git repository at:
git://80x24.org/ruby.git szqmaxset-wakeup
for you to fetch changes up to 9932853dec14a4f62606098d452da80a54bf9ecc:
SizedQueue#max= wakes up waiters properly (2014-01-02 07:22:02 +0000)
----------------------------------------------------------------
Eric Wong (1):
SizedQueue#max= wakes up waiters properly
ext/thread/thread.c | 2 +-
test/thread/test_queue.rb | 7 +++++++
2 files changed, 8 insertions(+), 1 deletion(-)
---Files--------------------------------
0001-SizedQueue-max-wakes-up-waiters-properly.patch (1.44 KB)
--
http://bugs.ruby-lang.org/
^ permalink raw reply [flat|nested] 11+ messages in thread
* [ruby-core:60517] Re: [ruby-trunk - Bug #9343] [PATCH] SizedQueue#max= wakes up waiters properly
2014-02-05 17:53 ` [ruby-core:60513] " normalperson
@ 2014-02-05 23:01 ` SASADA Koichi
2014-02-05 23:39 ` [ruby-core:60519] " Eric Wong
0 siblings, 1 reply; 11+ messages in thread
From: SASADA Koichi @ 2014-02-05 23:01 UTC (permalink / raw
To: ruby-core
(2014/02/06 2:53), normalperson@yhbt.net wrote:
> Yes, your patch looks correct. Old thread.rb had "diff.times do"
All right.
Could you commit it?
--
// SASADA Koichi at atdot dot net
^ permalink raw reply [flat|nested] 11+ messages in thread
* [ruby-core:60518] [ruby-trunk - Bug #9343] [PATCH] SizedQueue#max= wakes up waiters properly
2014-01-02 7:25 [ruby-core:59466] [ruby-trunk - Bug #9343][Open] [PATCH] SizedQueue#max= wakes up waiters properly normalperson (Eric Wong)
` (2 preceding siblings ...)
2014-02-05 17:53 ` [ruby-core:60513] " normalperson
@ 2014-02-05 23:03 ` ko1
2014-02-05 23:44 ` [ruby-core:60520] " normalperson
` (2 subsequent siblings)
6 siblings, 0 replies; 11+ messages in thread
From: ko1 @ 2014-02-05 23:03 UTC (permalink / raw
To: ruby-core
Issue #9343 has been updated by Koichi Sasada.
ruby -v changed from ruby 2.2.0dev (2014-01-02 trunk 44484) [x86_64-linux] to -
(2014/02/06 2:53), normalperson@yhbt.net wrote:
> Yes, your patch looks correct. Old thread.rb had "diff.times do"
All right.
Could you commit it?
--
// SASADA Koichi at atdot dot net
----------------------------------------
Bug #9343: [PATCH] SizedQueue#max= wakes up waiters properly
https://bugs.ruby-lang.org/issues/9343#change-44978
* Author: Eric Wong
* Status: Open
* Priority: Normal
* Assignee: Koichi Sasada
* Category: ext
* Target version: current: 2.2.0
* ruby -v: -
* Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN, 2.1: UNKNOWN
----------------------------------------
We were accessing the wrong array and trying to wake up
elements stored in the queue :x
$ git pull git://80x24.org/ruby.git szqmaxset-wakeup
The following changes since commit d1cc0ebb38a23feb37bb16ff2df3137c3cead069:
mkrunnable.rb: fix DLL path on Windows (2014-01-02 02:41:06 +0000)
are available in the git repository at:
git://80x24.org/ruby.git szqmaxset-wakeup
for you to fetch changes up to 9932853dec14a4f62606098d452da80a54bf9ecc:
SizedQueue#max= wakes up waiters properly (2014-01-02 07:22:02 +0000)
----------------------------------------------------------------
Eric Wong (1):
SizedQueue#max= wakes up waiters properly
ext/thread/thread.c | 2 +-
test/thread/test_queue.rb | 7 +++++++
2 files changed, 8 insertions(+), 1 deletion(-)
---Files--------------------------------
0001-SizedQueue-max-wakes-up-waiters-properly.patch (1.44 KB)
--
http://bugs.ruby-lang.org/
^ permalink raw reply [flat|nested] 11+ messages in thread
* [ruby-core:60519] Re: [ruby-trunk - Bug #9343] [PATCH] SizedQueue#max= wakes up waiters properly
2014-02-05 23:01 ` [ruby-core:60517] " SASADA Koichi
@ 2014-02-05 23:39 ` Eric Wong
0 siblings, 0 replies; 11+ messages in thread
From: Eric Wong @ 2014-02-05 23:39 UTC (permalink / raw
To: Ruby developers
SASADA Koichi <ko1@atdot.net> wrote:
> Could you commit it?
Done, r44852. This needs a backport to 2.1
^ permalink raw reply [flat|nested] 11+ messages in thread
* [ruby-core:60520] [ruby-trunk - Bug #9343] [PATCH] SizedQueue#max= wakes up waiters properly
2014-01-02 7:25 [ruby-core:59466] [ruby-trunk - Bug #9343][Open] [PATCH] SizedQueue#max= wakes up waiters properly normalperson (Eric Wong)
` (3 preceding siblings ...)
2014-02-05 23:03 ` [ruby-core:60518] " ko1
@ 2014-02-05 23:44 ` normalperson
2014-02-06 0:32 ` [ruby-core:60521] " drbrain
2014-02-21 15:17 ` [ruby-core:60949] " naruse
6 siblings, 0 replies; 11+ messages in thread
From: normalperson @ 2014-02-05 23:44 UTC (permalink / raw
To: ruby-core
Issue #9343 has been updated by Eric Wong.
SASADA Koichi <ko1@atdot.net> wrote:
> Could you commit it?
Done, r44852. This needs a backport to 2.1
----------------------------------------
Bug #9343: [PATCH] SizedQueue#max= wakes up waiters properly
https://bugs.ruby-lang.org/issues/9343#change-44980
* Author: Eric Wong
* Status: Closed
* Priority: Normal
* Assignee: Koichi Sasada
* Category: ext
* Target version: current: 2.2.0
* ruby -v: -
* Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN, 2.1: UNKNOWN
----------------------------------------
We were accessing the wrong array and trying to wake up
elements stored in the queue :x
$ git pull git://80x24.org/ruby.git szqmaxset-wakeup
The following changes since commit d1cc0ebb38a23feb37bb16ff2df3137c3cead069:
mkrunnable.rb: fix DLL path on Windows (2014-01-02 02:41:06 +0000)
are available in the git repository at:
git://80x24.org/ruby.git szqmaxset-wakeup
for you to fetch changes up to 9932853dec14a4f62606098d452da80a54bf9ecc:
SizedQueue#max= wakes up waiters properly (2014-01-02 07:22:02 +0000)
----------------------------------------------------------------
Eric Wong (1):
SizedQueue#max= wakes up waiters properly
ext/thread/thread.c | 2 +-
test/thread/test_queue.rb | 7 +++++++
2 files changed, 8 insertions(+), 1 deletion(-)
---Files--------------------------------
0001-SizedQueue-max-wakes-up-waiters-properly.patch (1.44 KB)
--
http://bugs.ruby-lang.org/
^ permalink raw reply [flat|nested] 11+ messages in thread
* [ruby-core:60521] [ruby-trunk - Bug #9343] [PATCH] SizedQueue#max= wakes up waiters properly
2014-01-02 7:25 [ruby-core:59466] [ruby-trunk - Bug #9343][Open] [PATCH] SizedQueue#max= wakes up waiters properly normalperson (Eric Wong)
` (4 preceding siblings ...)
2014-02-05 23:44 ` [ruby-core:60520] " normalperson
@ 2014-02-06 0:32 ` drbrain
2014-02-21 15:17 ` [ruby-core:60949] " naruse
6 siblings, 0 replies; 11+ messages in thread
From: drbrain @ 2014-02-06 0:32 UTC (permalink / raw
To: ruby-core
Issue #9343 has been updated by Eric Hodel.
Backport changed from 1.9.3: UNKNOWN, 2.0.0: UNKNOWN, 2.1: UNKNOWN to 1.9.3: DONTNEED, 2.0.0: DONTNEED, 2.1: REQUIRED
Update backport status
----------------------------------------
Bug #9343: [PATCH] SizedQueue#max= wakes up waiters properly
https://bugs.ruby-lang.org/issues/9343#change-44981
* Author: Eric Wong
* Status: Closed
* Priority: Normal
* Assignee: Koichi Sasada
* Category: ext
* Target version: current: 2.2.0
* ruby -v: -
* Backport: 1.9.3: DONTNEED, 2.0.0: DONTNEED, 2.1: REQUIRED
----------------------------------------
We were accessing the wrong array and trying to wake up
elements stored in the queue :x
$ git pull git://80x24.org/ruby.git szqmaxset-wakeup
The following changes since commit d1cc0ebb38a23feb37bb16ff2df3137c3cead069:
mkrunnable.rb: fix DLL path on Windows (2014-01-02 02:41:06 +0000)
are available in the git repository at:
git://80x24.org/ruby.git szqmaxset-wakeup
for you to fetch changes up to 9932853dec14a4f62606098d452da80a54bf9ecc:
SizedQueue#max= wakes up waiters properly (2014-01-02 07:22:02 +0000)
----------------------------------------------------------------
Eric Wong (1):
SizedQueue#max= wakes up waiters properly
ext/thread/thread.c | 2 +-
test/thread/test_queue.rb | 7 +++++++
2 files changed, 8 insertions(+), 1 deletion(-)
---Files--------------------------------
0001-SizedQueue-max-wakes-up-waiters-properly.patch (1.44 KB)
--
http://bugs.ruby-lang.org/
^ permalink raw reply [flat|nested] 11+ messages in thread
* [ruby-core:60949] [ruby-trunk - Bug #9343] [PATCH] SizedQueue#max= wakes up waiters properly
2014-01-02 7:25 [ruby-core:59466] [ruby-trunk - Bug #9343][Open] [PATCH] SizedQueue#max= wakes up waiters properly normalperson (Eric Wong)
` (5 preceding siblings ...)
2014-02-06 0:32 ` [ruby-core:60521] " drbrain
@ 2014-02-21 15:17 ` naruse
6 siblings, 0 replies; 11+ messages in thread
From: naruse @ 2014-02-21 15:17 UTC (permalink / raw
To: ruby-core
Issue #9343 has been updated by Yui NARUSE.
Backport changed from 1.9.3: DONTNEED, 2.0.0: DONTNEED, 2.1: REQUIRED to 1.9.3: DONTNEED, 2.0.0: DONTNEED, 2.1: DONE
----------------------------------------
Bug #9343: [PATCH] SizedQueue#max= wakes up waiters properly
https://bugs.ruby-lang.org/issues/9343#change-45349
* Author: Eric Wong
* Status: Closed
* Priority: Normal
* Assignee: Koichi Sasada
* Category: ext
* Target version: current: 2.2.0
* ruby -v: -
* Backport: 1.9.3: DONTNEED, 2.0.0: DONTNEED, 2.1: DONE
----------------------------------------
We were accessing the wrong array and trying to wake up
elements stored in the queue :x
$ git pull git://80x24.org/ruby.git szqmaxset-wakeup
The following changes since commit d1cc0ebb38a23feb37bb16ff2df3137c3cead069:
mkrunnable.rb: fix DLL path on Windows (2014-01-02 02:41:06 +0000)
are available in the git repository at:
git://80x24.org/ruby.git szqmaxset-wakeup
for you to fetch changes up to 9932853dec14a4f62606098d452da80a54bf9ecc:
SizedQueue#max= wakes up waiters properly (2014-01-02 07:22:02 +0000)
----------------------------------------------------------------
Eric Wong (1):
SizedQueue#max= wakes up waiters properly
ext/thread/thread.c | 2 +-
test/thread/test_queue.rb | 7 +++++++
2 files changed, 8 insertions(+), 1 deletion(-)
---Files--------------------------------
0001-SizedQueue-max-wakes-up-waiters-properly.patch (1.44 KB)
--
http://bugs.ruby-lang.org/
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2014-02-21 15:25 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-01-02 7:25 [ruby-core:59466] [ruby-trunk - Bug #9343][Open] [PATCH] SizedQueue#max= wakes up waiters properly normalperson (Eric Wong)
2014-01-06 6:31 ` [ruby-core:59573] [ruby-trunk - Bug #9343] " ko1 (Koichi Sasada)
2014-02-05 15:10 ` [ruby-core:60510] " ko1
2014-02-05 17:46 ` [ruby-core:60512] " Eric Wong
2014-02-05 17:53 ` [ruby-core:60513] " normalperson
2014-02-05 23:01 ` [ruby-core:60517] " SASADA Koichi
2014-02-05 23:39 ` [ruby-core:60519] " Eric Wong
2014-02-05 23:03 ` [ruby-core:60518] " ko1
2014-02-05 23:44 ` [ruby-core:60520] " normalperson
2014-02-06 0:32 ` [ruby-core:60521] " drbrain
2014-02-21 15:17 ` [ruby-core:60949] " naruse
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).