From: Kumar Aditya Date: Fri, 18 Apr 2025 16:13:49 +0000 (+0530) Subject: gh-126366: fix thread safety of dict key iterator (#132693) X-Git-Tag: v3.14.0b1~410 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4c3d187d9f143eee930a88a38b90f4842911b8be;p=thirdparty%2FPython%2Fcpython.git gh-126366: fix thread safety of dict key iterator (#132693) --- diff --git a/Objects/dictobject.c b/Objects/dictobject.c index 792a34cc569f..ff6dbb8bed30 100644 --- a/Objects/dictobject.c +++ b/Objects/dictobject.c @@ -5495,7 +5495,7 @@ dictiter_iternext_threadsafe(PyDictObject *d, PyObject *self, ensure_shared_on_read(d); i = _Py_atomic_load_ssize_relaxed(&di->di_pos); - k = _Py_atomic_load_ptr_relaxed(&d->ma_keys); + k = _Py_atomic_load_ptr_acquire(&d->ma_keys); assert(i >= 0); if (_PyDict_HasSplitTable(d)) { PyDictValues *values = _Py_atomic_load_ptr_relaxed(&d->ma_values);