)]}'
{"id":"openocd~master~I9c344e87bab9eefe7d99b0aad300a3ef4712df51","project":"openocd","branch":"master","attention_set":{},"removed_from_attention_set":{"1002161":{"account":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"last_update":"2025-08-24 11:18:04.000000000","reason":"Change was submitted"},"1000021":{"account":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"last_update":"2025-08-17 10:51:37.000000000","reason":"\u003cGERRIT_ACCOUNT_1000021\u003e replied on the change","reason_account":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"}},"1000716":{"account":{"_account_id":1000716,"name":"Christopher Head","email":"chead@zaber.com","username":"Hawk777"},"last_update":"2025-05-23 18:00:19.000000000","reason":"\u003cGERRIT_ACCOUNT_1000716\u003e replied on the change","reason_account":{"_account_id":1000716,"name":"Christopher Head","email":"chead@zaber.com","username":"Hawk777"}}},"hashtags":[],"change_id":"I9c344e87bab9eefe7d99b0aad300a3ef4712df51","subject":"server: global state updated by signal handlers should have a volatile sig_atomic_t type","status":"MERGED","created":"2025-05-20 09:34:54.000000000","updated":"2025-08-24 11:18:04.000000000","submitted":"2025-08-24 11:18:04.000000000","submitter":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"total_comment_count":25,"unresolved_comment_count":2,"has_review_started":true,"submission_id":"8927","meta_rev_id":"de762947fe462da62d0ebad59da7de8158075b5b","_number":8927,"owner":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},{"tag":"autogenerated:gerrit:merged","value":1,"date":"2025-08-24 11:18:04.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},{"value":0,"_account_id":1000716,"name":"Christopher Head","email":"chead@zaber.com","username":"Hawk777"}],"values":{"-1":"Fails"," 0":"No score","+1":"Verified"},"description":"","default_value":0},"Code-Review":{"approved":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"all":[{"tag":"autogenerated:gerrit:merged","value":2,"date":"2025-08-24 11:18:04.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},{"value":0,"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},{"tag":"autogenerated:gerrit:merged","value":1,"date":"2025-08-24 11:18:04.000000000","permitted_voting_range":{"min":1,"max":2},"_account_id":1000716,"name":"Christopher Head","email":"chead@zaber.com","username":"Hawk777"}],"values":{"-2":"This shall not be merged","-1":"I would prefer this is not merged as is"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me, approved"},"description":"","default_value":0}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},{"_account_id":1000716,"name":"Christopher Head","email":"chead@zaber.com","username":"Hawk777"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2025-05-20 09:36:17.000000000","updated_by":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"reviewer":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2025-05-20 12:17:05.000000000","updated_by":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"reviewer":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"state":"CC"},{"updated":"2025-05-21 02:08:09.000000000","updated_by":{"_account_id":1000716,"name":"Christopher Head","email":"chead@zaber.com","username":"Hawk777"},"reviewer":{"_account_id":1000716,"name":"Christopher Head","email":"chead@zaber.com","username":"Hawk777"},"state":"REVIEWER"},{"updated":"2025-08-17 10:51:37.000000000","updated_by":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"reviewer":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"state":"REVIEWER"}],"messages":[{"id":"dbe685ec4564c57cc1c2a4bbb9d89860176c4f87","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"real_author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"date":"2025-05-20 09:34:54.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"0d3a96e3b004efc0aed362f714d0612bcb492996","tag":"autogenerated:jenkins-gerrit-trigger","author":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"real_author":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"date":"2025-05-20 09:36:17.000000000","message":"Patch Set 1: Verified-1\n\nBuild Failed \n\nhttps://build.openocd.org/job/openocd-gerrit-build/20325/ : FAILURE\n\nhttps://build.openocd.org/job/openocd-gerrit/21185/ : FAILURE","accounts_in_message":[],"_revision_number":1},{"id":"4ca9300eb5ddaa11c29f17f68aa3dfeddfa506c8","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"real_author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"date":"2025-05-20 09:41:25.000000000","message":"Uploaded patch set 2: Commit message was updated.\n\nOutdated Votes:\n* Verified-1 (copy condition: \"changekind:NO_CHANGE\")\n","accounts_in_message":[],"_revision_number":2},{"id":"739f3a5425cfe8f40a67620e392ee6a3a54d3101","tag":"autogenerated:jenkins-gerrit-trigger","author":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"real_author":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"date":"2025-05-20 09:54:04.000000000","message":"Patch Set 2: Verified+1\n\nBuild Successful \n\nhttps://build.openocd.org/job/openocd-gerrit-build/20326/ : SUCCESS\n\nhttps://build.openocd.org/job/openocd-gerrit/21186/ : SUCCESS","accounts_in_message":[],"_revision_number":2},{"id":"cc751917389cef862cd5e4665885e9f2f17fd649","author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"real_author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"date":"2025-05-20 09:58:26.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"e0f60fabea810dd5c856f6114e5ca515a942abea","author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"real_author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"date":"2025-05-20 12:17:05.000000000","message":"Patch Set 2:\n\n(3 comments)","accounts_in_message":[],"_revision_number":2},{"id":"97b04791afcac78f5e15db5144e3b07d7f6171c2","author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"real_author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"date":"2025-05-20 13:22:15.000000000","message":"Patch Set 2:\n\n(3 comments)","accounts_in_message":[],"_revision_number":2},{"id":"a4f78b34c4461f73e23d2e753539d50546db5d42","author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"real_author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"date":"2025-05-20 14:55:18.000000000","message":"Patch Set 2:\n\n(2 comments)","accounts_in_message":[],"_revision_number":2},{"id":"e7dc39324d1e0c2622e78c1f50367b28147eb8f0","author":{"_account_id":1000716,"name":"Christopher Head","email":"chead@zaber.com","username":"Hawk777"},"real_author":{"_account_id":1000716,"name":"Christopher Head","email":"chead@zaber.com","username":"Hawk777"},"date":"2025-05-21 02:08:09.000000000","message":"Patch Set 2: Code-Review+2","accounts_in_message":[],"_revision_number":2},{"id":"3214e442f52fb027e01ff1fbdc4246137c8f7774","tag":"autogenerated:gerrit:deleteVote","author":{"_account_id":1000716,"name":"Christopher Head","email":"chead@zaber.com","username":"Hawk777"},"real_author":{"_account_id":1000716,"name":"Christopher Head","email":"chead@zaber.com","username":"Hawk777"},"date":"2025-05-21 02:08:53.000000000","message":"Removed Code-Review+2 by \u003cGERRIT_ACCOUNT_1000716\u003e\n","accounts_in_message":[{"_account_id":1000716,"name":"Christopher Head","email":"chead@zaber.com","username":"Hawk777"}],"_revision_number":2},{"id":"8eddc30aaec19fa072cc18d259a97eb7c72f58ba","author":{"_account_id":1000716,"name":"Christopher Head","email":"chead@zaber.com","username":"Hawk777"},"real_author":{"_account_id":1000716,"name":"Christopher Head","email":"chead@zaber.com","username":"Hawk777"},"date":"2025-05-21 02:14:10.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"0f1545f9de302ef104b1130fb4a3f2f833fce538","author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"real_author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"date":"2025-05-21 03:03:10.000000000","message":"Patch Set 2:\n\n(2 comments)","accounts_in_message":[],"_revision_number":2},{"id":"4f0d4ee34d97079711c6c7d8ee125b2ceaece5dd","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"real_author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"date":"2025-05-23 06:47:41.000000000","message":"Uploaded patch set 3.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"changekind:NO_CHANGE\")\n","accounts_in_message":[],"_revision_number":3},{"id":"176a9404cafcd689dcc6202533f554b5b59c0635","tag":"autogenerated:jenkins-gerrit-trigger","author":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"real_author":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"date":"2025-05-23 07:04:20.000000000","message":"Patch Set 3: Verified+1\n\nBuild Successful \n\nhttps://build.openocd.org/job/openocd-gerrit-build/20339/ : SUCCESS\n\nhttps://build.openocd.org/job/openocd-gerrit/21199/ : SUCCESS","accounts_in_message":[],"_revision_number":3},{"id":"bb7007a9dd7f3d848101d6933d6bb1ee5a0721b9","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"real_author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"date":"2025-05-23 07:11:00.000000000","message":"Uploaded patch set 4.\n\nOutdated Votes:\n* Verified+1 (copy condition: \"changekind:NO_CHANGE\")\n","accounts_in_message":[],"_revision_number":4},{"id":"81ce93586b20b97360d7c9b011324ccfa91f959a","author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"real_author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"date":"2025-05-23 07:16:48.000000000","message":"Patch Set 4:\n\n(2 comments)","accounts_in_message":[],"_revision_number":4},{"id":"4992e4a09bb5a73bd7717362f637f80bed53958b","tag":"autogenerated:jenkins-gerrit-trigger","author":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"real_author":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"date":"2025-05-23 07:26:45.000000000","message":"Patch Set 4: Verified+1\n\nBuild Successful \n\nhttps://build.openocd.org/job/openocd-gerrit-build/20342/ : SUCCESS\n\nhttps://build.openocd.org/job/openocd-gerrit/21202/ : SUCCESS","accounts_in_message":[],"_revision_number":4},{"id":"1e24c00ca45bb79a2280ebdfa523b112af8bd124","author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"real_author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"date":"2025-05-23 13:31:40.000000000","message":"Patch Set 4:\n\n(2 comments)","accounts_in_message":[],"_revision_number":4},{"id":"8b3ce75cf504fd1efa0376e2c1e5027e918009fe","author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"real_author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"date":"2025-05-23 17:53:08.000000000","message":"Patch Set 4:\n\n(2 comments)","accounts_in_message":[],"_revision_number":4},{"id":"d5ad4bc41b1ab9a592492217235a519652190ec3","author":{"_account_id":1000716,"name":"Christopher Head","email":"chead@zaber.com","username":"Hawk777"},"real_author":{"_account_id":1000716,"name":"Christopher Head","email":"chead@zaber.com","username":"Hawk777"},"date":"2025-05-23 18:00:19.000000000","message":"Patch Set 4: Code-Review+1","accounts_in_message":[],"_revision_number":4},{"id":"e52e9cd493bfc75aed16c7d49e8c344abea2f54f","author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"real_author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"date":"2025-05-24 15:38:46.000000000","message":"Patch Set 4:\n\n(2 comments)","accounts_in_message":[],"_revision_number":4},{"id":"f408b114749971bb66031bed79c0bbc22f161908","author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"real_author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"date":"2025-05-25 19:06:54.000000000","message":"Patch Set 4:\n\n(2 comments)","accounts_in_message":[],"_revision_number":4},{"id":"9719fae214bfe14b7182808f8888cd1c8d9b4ed7","author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"real_author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"date":"2025-08-16 05:50:39.000000000","message":"Patch Set 4:\n\n(1 comment)","accounts_in_message":[],"_revision_number":4},{"id":"549c0d1ddbe291d8f0ef21562cb747997477ab9f","author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"real_author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"date":"2025-08-17 10:51:37.000000000","message":"Patch Set 4: Code-Review+1\n\n(2 comments)","accounts_in_message":[],"_revision_number":4},{"id":"67fc6e9d8490b2f4b7699abf52e8188d6960b795","author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"real_author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"date":"2025-08-24 11:17:59.000000000","message":"Patch Set 4: Code-Review+2","accounts_in_message":[],"_revision_number":4},{"id":"de762947fe462da62d0ebad59da7de8158075b5b","tag":"autogenerated:gerrit:merged","author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"real_author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"date":"2025-08-24 11:18:04.000000000","message":"Change has been successfully cherry-picked as 23ab2062e7f0ae40b33abc6c5477388978f6dc48","accounts_in_message":[],"_revision_number":5}],"current_revision":"23ab2062e7f0ae40b33abc6c5477388978f6dc48","revisions":{"bb22c49e65c9338bd6fd0977388e6bdc610923aa":{"kind":"NO_CODE_CHANGE","_number":2,"created":"2025-05-20 09:41:25.000000000","uploader":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"ref":"refs/changes/27/8927/2","fetch":{"anonymous http":{"url":"https://review.openocd.org/openocd","ref":"refs/changes/27/8927/2","commands":{"Branch":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/2 \u0026\u0026 git checkout -b change-8927 FETCH_HEAD","Checkout":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.openocd.org/openocd refs/changes/27/8927/2","Reset To":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/2 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"6a3abda0b46a777490a8ce5bc748e6fed6775354","subject":"helper: add base64 encoding/decoding helpers from FreeBSD"}],"author":{"name":"Parshintsev Anatoly","email":"anatoly.parshintsev@syntacore.com","date":"2025-05-20 07:10:43.000000000","tz":180},"committer":{"name":"Parshintsev Anatoly","email":"anatoly.parshintsev@syntacore.com","date":"2025-05-20 09:40:44.000000000","tz":180},"subject":"server: global state updated by signal handlers should have volatile atomic lock-free type","message":"server: global state updated by signal handlers should have volatile atomic lock-free type\n\nSignal handlers currently violate both C language and POSIX requirements:\n1. To avoid undefined behavior (UB), variables accessed or modified by\n   signal handlers be of atomic lock-free type.\n2. The respected variables should be marked as volatile.\n3. Signal handlers may only call a very limited subset of standard\n   library functions.\n4. Additionally, POSIX restricts signal handlers to signal-safe\n   functions.\n\nThis patch addresses the first two issues on platformats that support\nlock-free atomic access to int.\nFor platforms that do not support lock-free atomic access to int we just\nmark the respected variables as volatile and hope for the best.\n\nItems 3 and 4 must be handled separately but are outside the scope of\nthis change.\n\nCheckpatch-ignore: NEW_TYPEDEFS\n\nChange-Id: I9c344e87bab9eefe7d99b0aad300a3ef4712df51\nSigned-off-by: Parshintsev Anatoly \u003canatoly.parshintsev@syntacore.com\u003e\n"}},"c3be84dbaffb7f583765a17c675309302154b02e":{"kind":"REWORK","_number":3,"created":"2025-05-23 06:47:41.000000000","uploader":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"ref":"refs/changes/27/8927/3","fetch":{"anonymous http":{"url":"https://review.openocd.org/openocd","ref":"refs/changes/27/8927/3","commands":{"Branch":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/3 \u0026\u0026 git checkout -b change-8927 FETCH_HEAD","Checkout":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.openocd.org/openocd refs/changes/27/8927/3","Reset To":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/3 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"6a3abda0b46a777490a8ce5bc748e6fed6775354","subject":"helper: add base64 encoding/decoding helpers from FreeBSD"}],"author":{"name":"Parshintsev Anatoly","email":"anatoly.parshintsev@syntacore.com","date":"2025-05-20 07:10:43.000000000","tz":180},"committer":{"name":"Parshintsev Anatoly","email":"anatoly.parshintsev@syntacore.com","date":"2025-05-23 06:43:19.000000000","tz":180},"subject":"server: global state updated by signal handlers should have a volatile sig_atomic_t type","message":"server: global state updated by signal handlers should have a volatile sig_atomic_t type\n\nSignal handlers currently violate both C language and POSIX requirements:\n1. To avoid undefined behavior (UB), variables accessed or modified by\n   signal handlers be of atomic lock-free type.\n2. The respected variables should be marked as volatile.\n3. Signal handlers may only call a very limited subset of standard\n   library functions.\n4. Additionally, POSIX restricts signal handlers to signal-safe\n   functions.\n\nThis patch addresses the first two issues by changing the type of global\nvariables that are accessed inside signal handler to `sig_atomic_t` and\nadding `volatile` qualifiers.\n\nItems 3 and 4 must be handled separately but are outside the scope of\nthis change.\n\nChange-Id: I9c344e87bab9eefe7d99b0aad300a3ef4712df51\nSigned-off-by: Parshintsev Anatoly \u003canatoly.parshintsev@syntacore.com\u003e\n"}},"4f24554c2908319df0f968ffe8479e84e17e3720":{"kind":"REWORK","_number":1,"created":"2025-05-20 09:34:54.000000000","uploader":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"ref":"refs/changes/27/8927/1","fetch":{"anonymous http":{"url":"https://review.openocd.org/openocd","ref":"refs/changes/27/8927/1","commands":{"Branch":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/1 \u0026\u0026 git checkout -b change-8927 FETCH_HEAD","Checkout":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.openocd.org/openocd refs/changes/27/8927/1","Reset To":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/1 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"6a3abda0b46a777490a8ce5bc748e6fed6775354","subject":"helper: add base64 encoding/decoding helpers from FreeBSD"}],"author":{"name":"Parshintsev Anatoly","email":"anatoly.parshintsev@syntacore.com","date":"2025-05-20 07:10:43.000000000","tz":180},"committer":{"name":"Parshintsev Anatoly","email":"anatoly.parshintsev@syntacore.com","date":"2025-05-20 09:34:47.000000000","tz":180},"subject":"server: global state updated by signal handlers should have volatile atomic lock-free type","message":"server: global state updated by signal handlers should have volatile atomic lock-free type\n\nSignal handlers currently violate both C language and POSIX requirements:\n1. To avoid undefined behavior (UB), variables accessed or modified by\n   signal handlers be of atomic lock-free type.\n2. The respected variables should be marked as volatile.\n3. Signal handlers may only call a very limited subset of standard\n   library functions.\n4. Additionally, POSIX restricts signal handlers to signal-safe\n   functions.\n\nThis patch addresses the first two issues on platformats that support\nlock-free atomic access to int.\nFor platforms that do not support lock-free atomic access to int we just\nmark the respected variables as volatile and hope for the best.\n\nItems 3 and 4 must be handled separately but are outside the scope of\nthis change.\n\nChange-Id: I9c344e87bab9eefe7d99b0aad300a3ef4712df51\nSigned-off-by: Parshintsev Anatoly \u003canatoly.parshintsev@syntacore.com\u003e\n"}},"73d7a12534e62c8ccb055965aee99b046c2578f8":{"kind":"REWORK","_number":4,"created":"2025-05-23 07:11:00.000000000","uploader":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"ref":"refs/changes/27/8927/4","fetch":{"anonymous http":{"url":"https://review.openocd.org/openocd","ref":"refs/changes/27/8927/4","commands":{"Branch":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/4 \u0026\u0026 git checkout -b change-8927 FETCH_HEAD","Checkout":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.openocd.org/openocd refs/changes/27/8927/4","Reset To":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/4 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"6a3abda0b46a777490a8ce5bc748e6fed6775354","subject":"helper: add base64 encoding/decoding helpers from FreeBSD"}],"author":{"name":"Parshintsev Anatoly","email":"anatoly.parshintsev@syntacore.com","date":"2025-05-20 07:10:43.000000000","tz":180},"committer":{"name":"Parshintsev Anatoly","email":"anatoly.parshintsev@syntacore.com","date":"2025-05-23 07:09:08.000000000","tz":180},"subject":"server: global state updated by signal handlers should have a volatile sig_atomic_t type","message":"server: global state updated by signal handlers should have a volatile sig_atomic_t type\n\nSignal handlers currently violate both C language and POSIX requirements:\n1. To avoid undefined behavior (UB), variables accessed or modified by\n   signal handlers be of atomic lock-free type.\n2. The respected variables should be marked as volatile.\n3. Signal handlers may only call a very limited subset of standard\n   library functions.\n4. Additionally, POSIX restricts signal handlers to signal-safe\n   functions.\n\nThis patch addresses the first two issues by changing the type of global\nvariables that are accessed inside signal handler to `sig_atomic_t` and\nadding `volatile` qualifiers.\n\nItems 3 and 4 must be handled separately but are outside the scope of\nthis change.\n\nChange-Id: I9c344e87bab9eefe7d99b0aad300a3ef4712df51\nSigned-off-by: Parshintsev Anatoly \u003canatoly.parshintsev@syntacore.com\u003e\n"}},"23ab2062e7f0ae40b33abc6c5477388978f6dc48":{"kind":"REWORK","_number":5,"created":"2025-08-24 11:18:04.000000000","uploader":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"ref":"refs/changes/27/8927/5","fetch":{"anonymous http":{"url":"https://review.openocd.org/openocd","ref":"refs/changes/27/8927/5","commands":{"Branch":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/5 \u0026\u0026 git checkout -b change-8927 FETCH_HEAD","Checkout":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.openocd.org/openocd refs/changes/27/8927/5","Reset To":"git fetch https://review.openocd.org/openocd refs/changes/27/8927/5 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"4e493229c6c2d84e8f52341be0328ce31e57a6f2","subject":"tcl/target: Added target configuration for Qualcomm QCS6490 IOT Processors."}],"author":{"name":"Parshintsev Anatoly","email":"anatoly.parshintsev@syntacore.com","date":"2025-05-20 07:10:43.000000000","tz":180},"committer":{"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","date":"2025-08-24 11:18:04.000000000","tz":0},"subject":"server: global state updated by signal handlers should have a volatile sig_atomic_t type","message":"server: global state updated by signal handlers should have a volatile sig_atomic_t type\n\nSignal handlers currently violate both C language and POSIX requirements:\n1. To avoid undefined behavior (UB), variables accessed or modified by\n   signal handlers be of atomic lock-free type.\n2. The respected variables should be marked as volatile.\n3. Signal handlers may only call a very limited subset of standard\n   library functions.\n4. Additionally, POSIX restricts signal handlers to signal-safe\n   functions.\n\nThis patch addresses the first two issues by changing the type of global\nvariables that are accessed inside signal handler to `sig_atomic_t` and\nadding `volatile` qualifiers.\n\nItems 3 and 4 must be handled separately but are outside the scope of\nthis change.\n\nChange-Id: I9c344e87bab9eefe7d99b0aad300a3ef4712df51\nSigned-off-by: Parshintsev Anatoly \u003canatoly.parshintsev@syntacore.com\u003e\nReviewed-on: https://review.openocd.org/c/openocd/+/8927\nTested-by: jenkins\nReviewed-by: Antonio Borneo \u003cborneo.antonio@gmail.com\u003e\nReviewed-by: Chris Head \u003cchead@zaber.com\u003e\n"}}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"CLOSED","labels":[{"label":"Verified","status":"OK","applied_by":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"OK","applied_by":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"}}]}],"submit_requirements":[{"name":"Verified","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Verified\u003dMAX -label:Verified\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dMAX","-label:Verified\u003dMIN"],"failing_atoms":[]}},{"name":"Code-Review","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX -label:Code-Review\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dMAX","-label:Code-Review\u003dMIN"],"failing_atoms":[]}}]}
