)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"797289e88f1cc06b5fd32041f74062b048fb74fd","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"00127f04_0de3c0ec","updated":"2023-08-01 06:09:59.000000000","message":"Thanks for the patch!","commit_id":"c65d5d0d2436eecae6ac2b44a66dce51463c417b"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"0e0e90cc6d945fb1876fe5c53f57b013e5cd9513","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"093558c9_aa922d6b","updated":"2023-08-01 10:03:57.000000000","message":"Erhan, I sent the review request, however the change I\u0027d like to recheck is not in xtensa but xscale. Sorry for the mistake.","commit_id":"2fbb9c4a116837f06b3ddeb15446abd03f30e0d5"},{"author":{"_account_id":1002143,"name":"Marek Vrbka","email":"marek.vrbka@codasip.com","username":"MarekVCodasip"},"change_message_id":"0a35db1d3dbb9cc0a121cc9218ce11c36ed29921","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"50c5889f_e2d3321c","updated":"2023-08-01 10:45:45.000000000","message":"Found one tiny thing.\n\nThanks for the patch.","commit_id":"2fbb9c4a116837f06b3ddeb15446abd03f30e0d5"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"bf69150a5e06baa2a2d07dc39f58319142efb120","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"1a4e8db5_cad27e24","in_reply_to":"093558c9_aa922d6b","updated":"2023-08-01 10:33:55.000000000","message":"nop. xtensa part is also looks fine.","commit_id":"2fbb9c4a116837f06b3ddeb15446abd03f30e0d5"},{"author":{"_account_id":1002143,"name":"Marek Vrbka","email":"marek.vrbka@codasip.com","username":"MarekVCodasip"},"change_message_id":"d8476738f557428ab0a5501a86d54c54d6197d4e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"ec9651a0_f528cf63","updated":"2023-08-01 11:23:58.000000000","message":"Thanks for the quick reaction.\n\nI also noticed the commit title does not follow other commits. You can use something like:\n\"breakpoints: use 64-bit type for watchpoint mask and value\"","commit_id":"b59a48a08a0d39b068e82166baa573795c2e6fa7"},{"author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"change_message_id":"a44700d8851ed7fde8da0b728817528232b89812","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"417e2779_ac7cd77e","in_reply_to":"ec9651a0_f528cf63","updated":"2023-08-01 11:30:07.000000000","message":"my bad. adjusted.","commit_id":"b59a48a08a0d39b068e82166baa573795c2e6fa7"},{"author":{"_account_id":1002143,"name":"Marek Vrbka","email":"marek.vrbka@codasip.com","username":"MarekVCodasip"},"change_message_id":"824ce60d1412a5d535559175f11d9bd53d7e1b57","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"25c4eb27_6d2b0f5c","updated":"2023-08-01 11:40:03.000000000","message":"Looks good to me, putting +1, assuming CI passes.","commit_id":"ca22292bec73113f7a9095254505d38b3af87bdb"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"f2c96a069b0b6053a7ee8e2cdb76e00eda6fdf4d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"f3df67b2_c9319f7a","updated":"2023-08-01 14:05:49.000000000","message":"Looks ok. Thanks","commit_id":"ca22292bec73113f7a9095254505d38b3af87bdb"}],"src/target/arm_dpm.c":[{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"797289e88f1cc06b5fd32041f74062b048fb74fd","unresolved":true,"context_lines":[{"line_number":918,"context_line":"\tuint32_t control;"},{"line_number":919,"context_line":""},{"line_number":920,"context_line":"\t/* this hardware doesn\u0027t support data value matching or masking */"},{"line_number":921,"context_line":"\tif (wp-\u003evalue || wp-\u003emask !\u003d ~(uint32_t)0) {"},{"line_number":922,"context_line":"\t\tLOG_DEBUG(\"watchpoint values and masking not supported\");"},{"line_number":923,"context_line":"\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":924,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"f364526f_16e2d6dc","side":"PARENT","line":921,"range":{"start_line":921,"start_character":5,"end_line":921,"end_character":14},"updated":"2023-08-01 06:09:59.000000000","message":"IMO This part of test could be preserved - just for the case all-ones mask is entered manually or a wrong usage of watchpoint_add() in a future code.","commit_id":"a5108240f9e12633fea400f92d96cc75e03c86ca"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"39f6271f94cd7cd556d856b35cd15b6e5ee9a4e6","unresolved":false,"context_lines":[{"line_number":918,"context_line":"\tuint32_t control;"},{"line_number":919,"context_line":""},{"line_number":920,"context_line":"\t/* this hardware doesn\u0027t support data value matching or masking */"},{"line_number":921,"context_line":"\tif (wp-\u003evalue || wp-\u003emask !\u003d ~(uint32_t)0) {"},{"line_number":922,"context_line":"\t\tLOG_DEBUG(\"watchpoint values and masking not supported\");"},{"line_number":923,"context_line":"\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":924,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"a19efadf_c94645bf","side":"PARENT","line":921,"range":{"start_line":921,"start_character":5,"end_line":921,"end_character":14},"in_reply_to":"5b5374eb_03374ae2","updated":"2023-08-01 07:20:49.000000000","message":"Okay, it\u0027s handled uniformly now.","commit_id":"a5108240f9e12633fea400f92d96cc75e03c86ca"},{"author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"change_message_id":"f026ac16306fc3408c0a3683e571bb2ccee43c5a","unresolved":true,"context_lines":[{"line_number":918,"context_line":"\tuint32_t control;"},{"line_number":919,"context_line":""},{"line_number":920,"context_line":"\t/* this hardware doesn\u0027t support data value matching or masking */"},{"line_number":921,"context_line":"\tif (wp-\u003evalue || wp-\u003emask !\u003d ~(uint32_t)0) {"},{"line_number":922,"context_line":"\t\tLOG_DEBUG(\"watchpoint values and masking not supported\");"},{"line_number":923,"context_line":"\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":924,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"5b5374eb_03374ae2","side":"PARENT","line":921,"range":{"start_line":921,"start_character":5,"end_line":921,"end_character":14},"in_reply_to":"f364526f_16e2d6dc","updated":"2023-08-01 07:02:16.000000000","message":"My take on that is that if all-ones is entered manually this means that the watchpoint degrade to an ordinary one. This seems resonable behavior IMHO: if user explicitly told to ignore all bits of the value, this means that any access should trigger","commit_id":"a5108240f9e12633fea400f92d96cc75e03c86ca"}],"src/target/armv8_dpm.c":[{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"797289e88f1cc06b5fd32041f74062b048fb74fd","unresolved":true,"context_lines":[{"line_number":1210,"context_line":"\tuint32_t control;"},{"line_number":1211,"context_line":""},{"line_number":1212,"context_line":"\t/* this hardware doesn\u0027t support data value matching or masking */"},{"line_number":1213,"context_line":"\tif (wp-\u003evalue || wp-\u003emask !\u003d ~(uint32_t)0) {"},{"line_number":1214,"context_line":"\t\tLOG_DEBUG(\"watchpoint values and masking not supported\");"},{"line_number":1215,"context_line":"\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":1216,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"2c1b65ad_15187e11","side":"PARENT","line":1213,"range":{"start_line":1213,"start_character":5,"end_line":1213,"end_character":14},"updated":"2023-08-01 06:09:59.000000000","message":"Same as above","commit_id":"a5108240f9e12633fea400f92d96cc75e03c86ca"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"39f6271f94cd7cd556d856b35cd15b6e5ee9a4e6","unresolved":false,"context_lines":[{"line_number":1210,"context_line":"\tuint32_t control;"},{"line_number":1211,"context_line":""},{"line_number":1212,"context_line":"\t/* this hardware doesn\u0027t support data value matching or masking */"},{"line_number":1213,"context_line":"\tif (wp-\u003evalue || wp-\u003emask !\u003d ~(uint32_t)0) {"},{"line_number":1214,"context_line":"\t\tLOG_DEBUG(\"watchpoint values and masking not supported\");"},{"line_number":1215,"context_line":"\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":1216,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"03c7b4ec_91fd753f","side":"PARENT","line":1213,"range":{"start_line":1213,"start_character":5,"end_line":1213,"end_character":14},"in_reply_to":"2c1b65ad_15187e11","updated":"2023-08-01 07:20:49.000000000","message":"Done","commit_id":"a5108240f9e12633fea400f92d96cc75e03c86ca"}],"src/target/breakpoints.h":[{"author":{"_account_id":1002143,"name":"Marek Vrbka","email":"marek.vrbka@codasip.com","username":"MarekVCodasip"},"change_message_id":"0a35db1d3dbb9cc0a121cc9218ce11c36ed29921","unresolved":true,"context_lines":[{"line_number":36,"context_line":"\tint linked_brp;"},{"line_number":37,"context_line":"};"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"#define WATCHPOINT_IGNORE_DATA_VALUE_MASK (~(uint64_t)0)"},{"line_number":40,"context_line":"struct watchpoint {"},{"line_number":41,"context_line":"\ttarget_addr_t address;"},{"line_number":42,"context_line":"\tuint32_t length;"}],"source_content_type":"text/x-csrc","patch_set":3,"id":"fdef09af_7d65d9cc","line":39,"range":{"start_line":39,"start_character":0,"end_line":39,"end_character":56},"updated":"2023-08-01 10:45:45.000000000","message":"Myself, I would put a blank line between the define and the struct watchpoint.","commit_id":"2fbb9c4a116837f06b3ddeb15446abd03f30e0d5"},{"author":{"_account_id":1002143,"name":"Marek Vrbka","email":"marek.vrbka@codasip.com","username":"MarekVCodasip"},"change_message_id":"d8476738f557428ab0a5501a86d54c54d6197d4e","unresolved":false,"context_lines":[{"line_number":36,"context_line":"\tint linked_brp;"},{"line_number":37,"context_line":"};"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"#define WATCHPOINT_IGNORE_DATA_VALUE_MASK (~(uint64_t)0)"},{"line_number":40,"context_line":"struct watchpoint {"},{"line_number":41,"context_line":"\ttarget_addr_t address;"},{"line_number":42,"context_line":"\tuint32_t length;"}],"source_content_type":"text/x-csrc","patch_set":3,"id":"d95e7791_39158ff5","line":39,"range":{"start_line":39,"start_character":0,"end_line":39,"end_character":56},"in_reply_to":"461b8476_51826a48","updated":"2023-08-01 11:23:58.000000000","message":"Done","commit_id":"2fbb9c4a116837f06b3ddeb15446abd03f30e0d5"},{"author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"change_message_id":"9f7b81a5b6341da33c57cc567e89691421082a9b","unresolved":true,"context_lines":[{"line_number":36,"context_line":"\tint linked_brp;"},{"line_number":37,"context_line":"};"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"#define WATCHPOINT_IGNORE_DATA_VALUE_MASK (~(uint64_t)0)"},{"line_number":40,"context_line":"struct watchpoint {"},{"line_number":41,"context_line":"\ttarget_addr_t address;"},{"line_number":42,"context_line":"\tuint32_t length;"}],"source_content_type":"text/x-csrc","patch_set":3,"id":"461b8476_51826a48","line":39,"range":{"start_line":39,"start_character":0,"end_line":39,"end_character":56},"in_reply_to":"fdef09af_7d65d9cc","updated":"2023-08-01 11:18:07.000000000","message":"addressed","commit_id":"2fbb9c4a116837f06b3ddeb15446abd03f30e0d5"}],"src/target/cortex_m.c":[{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"39f6271f94cd7cd556d856b35cd15b6e5ee9a4e6","unresolved":true,"context_lines":[{"line_number":2071,"context_line":"\t/* Caller doesn\u0027t seem to be able to describe watching for data"},{"line_number":2072,"context_line":"\t * values of zero; that flags \"no value\"."},{"line_number":2073,"context_line":"\t *"},{"line_number":2074,"context_line":"\t * REVISIT This DWT may well be able to watch for specific data"},{"line_number":2075,"context_line":"\t * values.  Requires comparator #1 to set DATAVMATCH and match"},{"line_number":2076,"context_line":"\t * the data, and another comparator (DATAVADDR0) matching addr."},{"line_number":2077,"context_line":"\t */"},{"line_number":2078,"context_line":"\tif (watchpoint-\u003evalue) {"},{"line_number":2079,"context_line":"\t\tLOG_TARGET_DEBUG(target, \"data value watchpoint not YET supported\");"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"e1914edd_2d4a29b6","line":2076,"range":{"start_line":2074,"start_character":1,"end_line":2076,"end_character":64},"updated":"2023-08-01 07:20:49.000000000","message":"Please don\u0027t drop this part of comment - it\u0027s valid.","commit_id":"c65d5d0d2436eecae6ac2b44a66dce51463c417b"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"8ee524cad9dc538ef3ebbc902239433daaf6bd2c","unresolved":false,"context_lines":[{"line_number":2071,"context_line":"\t/* Caller doesn\u0027t seem to be able to describe watching for data"},{"line_number":2072,"context_line":"\t * values of zero; that flags \"no value\"."},{"line_number":2073,"context_line":"\t *"},{"line_number":2074,"context_line":"\t * REVISIT This DWT may well be able to watch for specific data"},{"line_number":2075,"context_line":"\t * values.  Requires comparator #1 to set DATAVMATCH and match"},{"line_number":2076,"context_line":"\t * the data, and another comparator (DATAVADDR0) matching addr."},{"line_number":2077,"context_line":"\t */"},{"line_number":2078,"context_line":"\tif (watchpoint-\u003evalue) {"},{"line_number":2079,"context_line":"\t\tLOG_TARGET_DEBUG(target, \"data value watchpoint not YET supported\");"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"9ffb57bc_1512c1f4","line":2076,"range":{"start_line":2074,"start_character":1,"end_line":2076,"end_character":64},"in_reply_to":"96931da3_cfc2ea18","updated":"2023-08-01 09:51:45.000000000","message":"Done","commit_id":"c65d5d0d2436eecae6ac2b44a66dce51463c417b"},{"author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"change_message_id":"1051f4c369974d6dbc8de8055009844f443a111b","unresolved":true,"context_lines":[{"line_number":2071,"context_line":"\t/* Caller doesn\u0027t seem to be able to describe watching for data"},{"line_number":2072,"context_line":"\t * values of zero; that flags \"no value\"."},{"line_number":2073,"context_line":"\t *"},{"line_number":2074,"context_line":"\t * REVISIT This DWT may well be able to watch for specific data"},{"line_number":2075,"context_line":"\t * values.  Requires comparator #1 to set DATAVMATCH and match"},{"line_number":2076,"context_line":"\t * the data, and another comparator (DATAVADDR0) matching addr."},{"line_number":2077,"context_line":"\t */"},{"line_number":2078,"context_line":"\tif (watchpoint-\u003evalue) {"},{"line_number":2079,"context_line":"\t\tLOG_TARGET_DEBUG(target, \"data value watchpoint not YET supported\");"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"96931da3_cfc2ea18","line":2076,"range":{"start_line":2074,"start_character":1,"end_line":2076,"end_character":64},"in_reply_to":"e1914edd_2d4a29b6","updated":"2023-08-01 09:10:58.000000000","message":"My bad. I\u0027ve restored it. Though, I moved it around and added an additional note.","commit_id":"c65d5d0d2436eecae6ac2b44a66dce51463c417b"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"797289e88f1cc06b5fd32041f74062b048fb74fd","unresolved":false,"context_lines":[{"line_number":2075,"context_line":"\t * values.  Requires comparator #1 to set DATAVMATCH and match"},{"line_number":2076,"context_line":"\t * the data, and another comparator (DATAVADDR0) matching addr."},{"line_number":2077,"context_line":"\t */"},{"line_number":2078,"context_line":"\tif (watchpoint-\u003evalue) {"},{"line_number":2079,"context_line":"\t\tLOG_TARGET_DEBUG(target, \"data value watchpoint not YET supported\");"},{"line_number":2080,"context_line":"\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":2081,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"098d9689_f6d5a697","line":2078,"range":{"start_line":2078,"start_character":5,"end_line":2078,"end_character":22},"updated":"2023-08-01 06:09:59.000000000","message":"Note the value is tested here when mask is all ones","commit_id":"c65d5d0d2436eecae6ac2b44a66dce51463c417b"},{"author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"change_message_id":"f026ac16306fc3408c0a3683e571bb2ccee43c5a","unresolved":true,"context_lines":[{"line_number":2075,"context_line":"\t * values.  Requires comparator #1 to set DATAVMATCH and match"},{"line_number":2076,"context_line":"\t * the data, and another comparator (DATAVADDR0) matching addr."},{"line_number":2077,"context_line":"\t */"},{"line_number":2078,"context_line":"\tif (watchpoint-\u003evalue) {"},{"line_number":2079,"context_line":"\t\tLOG_TARGET_DEBUG(target, \"data value watchpoint not YET supported\");"},{"line_number":2080,"context_line":"\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":2081,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"1b5d200d_ff2516d9","line":2078,"range":{"start_line":2078,"start_character":5,"end_line":2078,"end_character":22},"in_reply_to":"098d9689_f6d5a697","updated":"2023-08-01 07:02:16.000000000","message":"This looks like an error to me :(. I\u0027ll take a look","commit_id":"c65d5d0d2436eecae6ac2b44a66dce51463c417b"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"39f6271f94cd7cd556d856b35cd15b6e5ee9a4e6","unresolved":false,"context_lines":[{"line_number":2075,"context_line":"\t * values.  Requires comparator #1 to set DATAVMATCH and match"},{"line_number":2076,"context_line":"\t * the data, and another comparator (DATAVADDR0) matching addr."},{"line_number":2077,"context_line":"\t */"},{"line_number":2078,"context_line":"\tif (watchpoint-\u003evalue) {"},{"line_number":2079,"context_line":"\t\tLOG_TARGET_DEBUG(target, \"data value watchpoint not YET supported\");"},{"line_number":2080,"context_line":"\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":2081,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"5f9af9b2_079614ba","line":2078,"range":{"start_line":2078,"start_character":5,"end_line":2078,"end_character":22},"in_reply_to":"1b5d200d_ff2516d9","updated":"2023-08-01 07:20:49.000000000","message":"Done","commit_id":"c65d5d0d2436eecae6ac2b44a66dce51463c417b"},{"author":{"_account_id":1002161,"name":"Anatoly P","email":"kupokupokupopo@gmail.com","username":"ecco_the_dolphin"},"change_message_id":"7c355ba02577675792c4fc160a0d33a7f8fa71c5","unresolved":true,"context_lines":[{"line_number":2075,"context_line":"\t * values.  Requires comparator #1 to set DATAVMATCH and match"},{"line_number":2076,"context_line":"\t * the data, and another comparator (DATAVADDR0) matching addr."},{"line_number":2077,"context_line":"\t */"},{"line_number":2078,"context_line":"\tif (watchpoint-\u003evalue) {"},{"line_number":2079,"context_line":"\t\tLOG_TARGET_DEBUG(target, \"data value watchpoint not YET supported\");"},{"line_number":2080,"context_line":"\t\treturn ERROR_TARGET_RESOURCE_NOT_AVAILABLE;"},{"line_number":2081,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"32db7d2e_868f21e3","line":2078,"range":{"start_line":2078,"start_character":5,"end_line":2078,"end_character":22},"in_reply_to":"1b5d200d_ff2516d9","updated":"2023-08-01 07:12:00.000000000","message":"removed that part. and we had a similar situation for xscale (xscale.c) target","commit_id":"c65d5d0d2436eecae6ac2b44a66dce51463c417b"}]}
