)]}'
{"id":"openocd~master~I78593371624a9c799eb838f2590e86e314fa6c7f","project":"openocd","branch":"master","hashtags":[],"change_id":"I78593371624a9c799eb838f2590e86e314fa6c7f","subject":"cortex_a: allow resume over synchronous watchpoint","status":"NEW","created":"2026-04-03 16:07:36.000000000","updated":"2026-04-03 19:31:11.000000000","submit_type":"CHERRY_PICK","mergeable":false,"submittable":false,"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"165a516c3288f0c117bf94ea7bdce01edb129e9b","_number":9563,"owner":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:jenkins-gerrit-trigger","value":1,"date":"2026-04-03 19:31:11.000000000","permitted_voting_range":{"min":-1,"max":1},"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]}],"values":{"-1":"Fails"," 0":"No score","+1":"Verified"},"description":"","default_value":0},"Code-Review":{"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]}],"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"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-04-03 17:17:11.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":"CC"},{"updated":"2026-04-03 19:31:11.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"}],"messages":[{"id":"56674770a0e1a1fe44874d027052cc229f52988a","tag":"autogenerated:gerrit:newPatchSet","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":"2026-04-03 16:07:36.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"165a516c3288f0c117bf94ea7bdce01edb129e9b","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":"2026-04-03 19:31:11.000000000","message":"Patch Set 1: Verified+1\n\nBuild Successful \n\nhttps://build.openocd.org/job/openocd-gerrit-build/22052/ : SUCCESS\n\nhttps://build.openocd.org/job/openocd-gerrit/22947/ : SUCCESS","accounts_in_message":[],"_revision_number":1}],"current_revision":"61469cf5439fd03b472c844bca0c1d85aafc39fa","revisions":{"61469cf5439fd03b472c844bca0c1d85aafc39fa":{"kind":"REWORK","_number":1,"created":"2026-04-03 16:07:36.000000000","uploader":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"ref":"refs/changes/63/9563/1","fetch":{"anonymous http":{"url":"https://review.openocd.org/openocd","ref":"refs/changes/63/9563/1","commands":{"Branch":"git fetch https://review.openocd.org/openocd refs/changes/63/9563/1 \u0026\u0026 git checkout -b change-9563 FETCH_HEAD","Checkout":"git fetch https://review.openocd.org/openocd refs/changes/63/9563/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.openocd.org/openocd refs/changes/63/9563/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.openocd.org/openocd refs/changes/63/9563/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.openocd.org/openocd refs/changes/63/9563/1","Reset To":"git fetch https://review.openocd.org/openocd refs/changes/63/9563/1 \u0026\u0026 git reset --hard FETCH_HEAD"}}},"commit":{"parents":[{"commit":"14c84433d2e5880eff4ad46f03e8b0d9893819d0","subject":"cortex_a: compute locally the resume address"}],"author":{"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","date":"2026-04-03 13:59:41.000000000","tz":120},"committer":{"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","date":"2026-04-03 16:05:33.000000000","tz":120},"subject":"cortex_a: allow resume over synchronous watchpoint","message":"cortex_a: allow resume over synchronous watchpoint\n\nThe ARMv7-A/R specification reports that watchpoints hit can be\nhandled either synchronous or asynchronously.\n\nSynchronous watchpoints halt at the instruction that accessing the\nmemory triggers it, without executing the instruction nor the\nassociated memory access.\nA command resume or step will then execute again that instruction\nand will trigger the watchpoint again, which is annoying.\n\nAsynchronous watchpoints halt few instructions after the one that\ntriggered the watchpoint, when the memory access is already done.\nA command resume or step will correctly execute the following\ninstructions.\n\nModify the resume code to detect the synchronous watchpoints case\nand run a preliminarily single step across the instruction that\nhits the watchpoint. The code for single-step is already able to\ndisable the watchpoint.\n\nChange-Id: I78593371624a9c799eb838f2590e86e314fa6c7f\nSigned-off-by: Antonio Borneo \u003cborneo.antonio@gmail.com\u003e\n"}}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"NOT_READY","labels":[{"label":"Verified","status":"OK","applied_by":{"_account_id":1000014,"name":"jenkins","username":"jenkins","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"NEED"}]}],"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":"UNSATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX -label:Code-Review\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Code-Review\u003dMAX","-label:Code-Review\u003dMIN"]}}]}
