jhawthorn (John Hawthorn)
- Login: jhawthorn
- Registered on: 12/22/2016
- Last sign in: 10/21/2025
Issues
| open | closed | Total | |
|---|---|---|---|
| Assigned issues | 25 | 57 | 82 |
| Reported issues | 4 | 23 | 27 |
Projects
| Project | Roles | Registered on |
|---|---|---|
| Ruby | Committer | 11/25/2021 |
Activity
10/27/2025
-
05:33 PM Ruby Bug #21649 (Open): Ractors can access non-shareable object through singleton classes
- If we send a non-shareable object into a Ractor, it needs to be copied.
```
❯ ruby -W0 -e 'Ractor.new(p(Object.new)) { |o| p(o) }.join'
#<Object:0x00000001240f8cf8>
#<Object:0x00000001240f8870>
```
However we're able to instead...
10/21/2025
-
08:14 PM Ruby Misc #21606: DevMeeting-2025-10-23
- * [Misc #21646] Propose Luke Gruber as a Ruby committer (jhawthorn)
* Luke has been fixing bugs in Ractors and elsewhere. Would be helpful if he could merge his own PRs.
10/20/2025
-
10:51 PM Ruby Misc #21646 (Closed): Propose Luke Gruber as a Ruby committer
- I'd like to propose adding Luke Gruber (@luke-gru) as a Ruby committer.
He's been contributing to CRuby [since 2019](https://github.com/ruby/ruby/commit/ec8e5f5aa64e2a54cf1e303f2b012c98e8d521ba) fixing a variety of bugs and being acti...
10/16/2025
-
01:21 AM Ruby Revision 45c01686 (git): Use explicit memory orders in concurrent_set
- The atomic load/store operations here should mostly be using
release/acquire semantics. This may lead to better performance than what
we had under the default seq_cst.
On x86 this may make the atomic store of hash faster, as it can avoi... -
12:13 AM Ruby Revision 9e4a7569 (git): Use BUILTIN_TYPE in gc_mark_check_t_none
10/10/2025
-
06:09 PM Ruby Revision 0a6cd03b (git): Add ASSERT_vm_locking_with_barrier
- Previously we just had a comment stating that the code required a
barrier. Turns out it's not too difficult to properly assert that.
Co-authored-by: Luke Gruber <luke.gru@gmail.com> -
05:18 PM Ruby Revision 17a5a5e2 (git): Take a full VM barrier in gc_rest
- This isn't (yet?) safe to do because it concurrently modifies GC
structures and dfree functions are not necessarily safe to do without
stopping all Ractors.
If it was safe to do this we should also do it for
gc_enter_event_continue. I d...
10/05/2025
-
12:37 AM Ruby Revision 7a4c7eac (git): Add missing write barriers to ibf_load
- Found by wbcheck
-
12:37 AM Ruby Revision b202a1fe (git): Use write barriers when loading catch table
- Found by wbcheck
10/03/2025
-
05:30 PM Ruby Revision 8eaa9eb3 (git): Clear fields on heap RStruct before allocating
- Now that we no longer explicitly set the first three elements, we need
to ensure the object is in a state safe for GC before we call
struct_heap_alloc, which may GC.