)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"bee521c90c5c5c631dd959fe56211bcc40dee131","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"77e301aa_274c85ad","updated":"2022-09-23 20:30:41.000000000","message":"Rebased to the current master.\n\nThis is the same awful code originated from cortex_a.c, new checkpatch detects style problems.\nI\u0027m not going to fix this code.\nMy intention is having this code handy for testing and then write a new SMP support without the obsolete J packet stuff.","commit_id":"69c30c9d42213a0b43034719d2a02ac4d30e2ffc"}],"src/target/cortex_m.c":[{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"937e636a2b4a14812cc87fb207ee292ecf411c29","unresolved":false,"context_lines":[{"line_number":2600,"context_line":"\treturn ERROR_OK;"},{"line_number":2601,"context_line":"}"},{"line_number":2602,"context_line":""},{"line_number":2603,"context_line":"COMMAND_HANDLER(cortex_m_handle_smp_off_command)"},{"line_number":2604,"context_line":"{"},{"line_number":2605,"context_line":"\tstruct target *target \u003d get_current_target(CMD_CTX);"},{"line_number":2606,"context_line":"\t/* check target is an smp target */"}],"source_content_type":"text/x-csrc","patch_set":2,"id":"0e6cb3ef_2e6affb1","line":2603,"updated":"2019-02-24 11:53:34.000000000","message":"What about a single command with argument \"on\" / \"off\"?","commit_id":"86b6829110c55a37236b8eea6f55721ecd91bdf6"},{"author":{"_account_id":1001632,"name":"Graham Sanderson","email":"graham.sanderson@gmail.com","username":"graham.sanderson"},"change_message_id":"eddaee6d3e496c53a37c94cbd5775f7e9ce922e6","unresolved":false,"context_lines":[{"line_number":2600,"context_line":"\treturn ERROR_OK;"},{"line_number":2601,"context_line":"}"},{"line_number":2602,"context_line":""},{"line_number":2603,"context_line":"COMMAND_HANDLER(cortex_m_handle_smp_off_command)"},{"line_number":2604,"context_line":"{"},{"line_number":2605,"context_line":"\tstruct target *target \u003d get_current_target(CMD_CTX);"},{"line_number":2606,"context_line":"\t/* check target is an smp target */"}],"source_content_type":"text/x-csrc","patch_set":2,"id":"0e6cb3ef_ae5daf1c","line":2603,"in_reply_to":"0e6cb3ef_2e6affb1","updated":"2019-02-24 13:25:53.000000000","message":"For these Tcl commands, I was following the lead from Cortex A (otherwise I would have omitted them completely)","commit_id":"86b6829110c55a37236b8eea6f55721ecd91bdf6"},{"author":{"_account_id":1000863,"name":"Tarek BOCHKATI","email":"tarek.bouchkati@gmail.com","username":"BouchkatiTarek"},"change_message_id":"d03dcf002fb54c54b20821978b840426f1565011","unresolved":false,"context_lines":[{"line_number":2600,"context_line":"\treturn ERROR_OK;"},{"line_number":2601,"context_line":"}"},{"line_number":2602,"context_line":""},{"line_number":2603,"context_line":"COMMAND_HANDLER(cortex_m_handle_smp_off_command)"},{"line_number":2604,"context_line":"{"},{"line_number":2605,"context_line":"\tstruct target *target \u003d get_current_target(CMD_CTX);"},{"line_number":2606,"context_line":"\t/* check target is an smp target */"}],"source_content_type":"text/x-csrc","patch_set":2,"id":"0e6cb3ef_6e86b76c","line":2603,"in_reply_to":"0e6cb3ef_ae5daf1c","updated":"2019-02-24 17:01:55.000000000","message":"I would suggest to review/check this patch http://openocd.zylin.com/#/c/4615/","commit_id":"86b6829110c55a37236b8eea6f55721ecd91bdf6"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"046997637eb656807f26096f76278a48e2977c6c","unresolved":false,"context_lines":[{"line_number":620,"context_line":"\t}"},{"line_number":621,"context_line":""},{"line_number":622,"context_line":"\t/* after all targets were updated, poll the gdb serving target */"},{"line_number":623,"context_line":"\tif (gdb_target !\u003d NULL \u0026\u0026 gdb_target !\u003d target)"},{"line_number":624,"context_line":"\t\tcortex_m_poll(gdb_target);"},{"line_number":625,"context_line":"\treturn retval;"},{"line_number":626,"context_line":"}"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"aedf27f1_9196aff2","line":623,"updated":"2021-06-22 17:56:37.000000000","message":"Avoid comparing pointers with NULL","commit_id":"fdca6b64412b1c001c2961207dde4ee953d21962"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"046997637eb656807f26096f76278a48e2977c6c","unresolved":false,"context_lines":[{"line_number":639,"context_line":"\t/*  the next polling trigger an halt event sent to gdb */"},{"line_number":640,"context_line":"\tif ((target-\u003estate \u003d\u003d TARGET_HALTED) \u0026\u0026 (target-\u003esmp) \u0026\u0026"},{"line_number":641,"context_line":"\t\t(target-\u003egdb_service) \u0026\u0026"},{"line_number":642,"context_line":"\t\t(target-\u003egdb_service-\u003etarget \u003d\u003d NULL)) {"},{"line_number":643,"context_line":"\t\ttarget-\u003egdb_service-\u003etarget \u003d"},{"line_number":644,"context_line":"\t\t\t\tget_cortex_m(target, target-\u003egdb_service-\u003ecore[1]);"},{"line_number":645,"context_line":"\t\ttarget_call_event_callbacks(target, TARGET_EVENT_HALTED);"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"aedf27f1_7191cbfa","line":642,"updated":"2021-06-22 17:56:37.000000000","message":"Avoid comparing pointers with NULL","commit_id":"fdca6b64412b1c001c2961207dde4ee953d21962"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"046997637eb656807f26096f76278a48e2977c6c","unresolved":false,"context_lines":[{"line_number":1003,"context_line":"\tif (target-\u003esmp) {"},{"line_number":1004,"context_line":"\t\ttarget-\u003egdb_service-\u003ecore[0] \u003d -1;"},{"line_number":1005,"context_line":"\t\tretval \u003d cortex_m_restore_smp(target, handle_breakpoints);"},{"line_number":1006,"context_line":"\t\tif (retval !\u003d ERROR_OK)"},{"line_number":1007,"context_line":"\t\t\treturn retval;"},{"line_number":1008,"context_line":"\t}"},{"line_number":1009,"context_line":"\tcortex_m_internal_restart(target);"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"aedf27f1_b1f73356","line":1006,"updated":"2021-06-22 17:56:37.000000000","message":"You compare the number of fails with ERROR_OK, that\u0027s not good. Why not using a bool or ERROR_OK / ERROR_FAIL for the return values? The number is never used / processed anyway.","commit_id":"fdca6b64412b1c001c2961207dde4ee953d21962"},{"author":{"_account_id":1000853,"name":"zapb","display_name":"Marc Schink","email":"dev@zapb.de","username":"zapb"},"change_message_id":"046997637eb656807f26096f76278a48e2977c6c","unresolved":false,"context_lines":[{"line_number":2666,"context_line":"\t\tif (CMD_ARGC \u003d\u003d 1) {"},{"line_number":2667,"context_line":"\t\t\tint coreid \u003d 0;"},{"line_number":2668,"context_line":"\t\t\tCOMMAND_PARSE_NUMBER(int, CMD_ARGV[0], coreid);"},{"line_number":2669,"context_line":"\t\t\tif (ERROR_OK !\u003d retval)"},{"line_number":2670,"context_line":"\t\t\t\treturn retval;"},{"line_number":2671,"context_line":"\t\t\ttarget-\u003egdb_service-\u003ecore[1] \u003d coreid;"},{"line_number":2672,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":6,"id":"aedf27f1_d1f43753","line":2669,"updated":"2021-06-22 17:56:37.000000000","message":"Don\u0027t use \u0027Yoda conditions\u0027","commit_id":"fdca6b64412b1c001c2961207dde4ee953d21962"}]}
