)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6d37ac398819e551e6514e8bf40292abb2758031","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"target/espressif: add support to collect gcov data from target"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Code coverage data is initally stored on the target itself."},{"line_number":10,"context_line":"This patch allows to dump data from target to host during runtime."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"More details;"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"100becdf_0ed570d6","line":9,"updated":"2023-11-25 23:00:21.000000000","message":"s/initally/initially/","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"5170d12bce0dfaa5babede9cff56ff4d81469af2","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"target/espressif: add support to collect gcov data from target"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Code coverage data is initally stored on the target itself."},{"line_number":10,"context_line":"This patch allows to dump data from target to host during runtime."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"More details;"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"b7e78580_cb8cf842","line":9,"in_reply_to":"100becdf_0ed570d6","updated":"2023-11-26 15:00:04.000000000","message":"Done","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6d37ac398819e551e6514e8bf40292abb2758031","unresolved":true,"context_lines":[{"line_number":13,"context_line":"https://docs.espressif.com/projects/esp-idf/en/latest/esp32/"},{"line_number":14,"context_line":"api-guides/app_trace.html#gcov-source-code-coverage"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Checkpatch-ignore: MACRO_ARG_REUSE"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Signed-off-by: Erhan Kurubas \u003cerhan.kurubas@espressif.com\u003e"},{"line_number":19,"context_line":"Change-Id: I88ddd7b4021feacf9281d7e89f459a96c20b3322"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"9eb56e6d_4f524402","line":16,"updated":"2023-11-25 23:00:21.000000000","message":"if you declare IS_DIR_SEPARATOR() as an inline is_dir_separator() function, instead than a macro, you would not need this hack","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"5170d12bce0dfaa5babede9cff56ff4d81469af2","unresolved":false,"context_lines":[{"line_number":13,"context_line":"https://docs.espressif.com/projects/esp-idf/en/latest/esp32/"},{"line_number":14,"context_line":"api-guides/app_trace.html#gcov-source-code-coverage"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Checkpatch-ignore: MACRO_ARG_REUSE"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Signed-off-by: Erhan Kurubas \u003cerhan.kurubas@espressif.com\u003e"},{"line_number":19,"context_line":"Change-Id: I88ddd7b4021feacf9281d7e89f459a96c20b3322"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"4758e220_2ea7f5ef","line":16,"in_reply_to":"9eb56e6d_4f524402","updated":"2023-11-26 15:00:04.000000000","message":"Done","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"4824452c6812198fa91166f7aa19839fd53c3c8c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"0bd2c140_4873ea64","updated":"2023-08-31 11:01:51.000000000","message":"Hi @Antonio, Is there any available time slot to start reviewing this patch?","commit_id":"ebf045f37c8d66c46b50322ff1d5b846bebfa31b"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ca76e14cd11e30a0b207dafc044fdbd0b18ee5b9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"cd00c976_13be982a","updated":"2023-09-10 20:58:48.000000000","message":"also here, too late to access the log of the failed build in jenkins.\nAnyway, some preliminarily comment below","commit_id":"ebf045f37c8d66c46b50322ff1d5b846bebfa31b"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"d10ee5ee540024e8a4ca4aba423f772b23299743","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"cf287d32_091c446f","in_reply_to":"cd00c976_13be982a","updated":"2023-09-20 17:46:17.000000000","message":"Build error should be OK now. Please can we continue to review.","commit_id":"ebf045f37c8d66c46b50322ff1d5b846bebfa31b"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"c14e3a50925890828891cb89b734728ce8b6ba00","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"ead8653b_fddf7b02","updated":"2023-10-26 19:53:21.000000000","message":"@Tomas, Any chance to review this patch. This is the last part of the chain.","commit_id":"9c6e19e837845c1859402a761d6ff2361cbfb8df"},{"author":{"_account_id":1000687,"name":"Tomas Vanek","display_name":"Tomas Vanek","email":"vanekt@fbl.cz","username":"vanekt"},"change_message_id":"8f46469b7d88ad51b0bfbac1252a72d7bbbc22ee","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"ba4534a2_1d4d7f2c","in_reply_to":"ead8653b_fddf7b02","updated":"2023-10-26 21:13:20.000000000","message":"Sorry Erhan, I\u0027m not familiar with gcov.","commit_id":"9c6e19e837845c1859402a761d6ff2361cbfb8df"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6d37ac398819e551e6514e8bf40292abb2758031","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"988ca41f_30ce0948","updated":"2023-11-25 23:00:21.000000000","message":"somehow this communication target\u003c\u003d\u003edebugger looks like a duplicate of semihosting. Anyway, this is how it is implemented in the soc, so ...","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"86a6f2ab098b03c1f4fed68a517d8f727e3a7155","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":10,"id":"5212f286_a77401c3","updated":"2023-11-28 00:45:48.000000000","message":"Ready for the next round.","commit_id":"0dd9740f7f27a2acac42e0e01c6bab5363dce4eb"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"dfbc6ba996048f42f4ad95cf053d958093851bd0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"8669f7a7_1cc73d7d","updated":"2023-11-29 15:54:39.000000000","message":"Erhan, I run a new review, but quite \"light\", I plan to return on it again","commit_id":"77ac45f1fcb0a5e7884705f6711e78b88b6075b0"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"78dc90f1815ac930c0edc9ff9902d6c50b1a5df8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"7fa68cd3_15a30106","updated":"2023-11-30 01:21:43.000000000","message":"@Antonio, because of the algorithm function/structs naming changes, I have updated all the chain patches. They will need +1 again. fyi.","commit_id":"fd7430a1e33b3d3d45aced04ad40125b84839433"}],"doc/openocd.texi":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ca76e14cd11e30a0b207dafc044fdbd0b18ee5b9","unresolved":true,"context_lines":[{"line_number":11461,"context_line":"@end deffn"},{"line_number":11462,"context_line":""},{"line_number":11463,"context_line":"@deffn {Command} {esp gcov} [dump]"},{"line_number":11464,"context_line":"Dumps collected coverage (gcov) data from target."},{"line_number":11465,"context_line":"@url{https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/app_trace.html#gcov-source-code-coverage}"},{"line_number":11466,"context_line":"@itemize @bullet"},{"line_number":11467,"context_line":"@item @code{dump} - Used for @uref{https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/app_trace.html#hard-coded-dump, hard-coded dump mode}."}],"source_content_type":"text/x-texinfo","patch_set":6,"id":"1f1ee841_4d07ca78","line":11464,"updated":"2023-09-10 20:58:48.000000000","message":"I think that some other detail should be added here, without copy-paste all from the already available links:\n- embedded code should be compiled with gcov options\n- when to run the command\n- what to get on the host and in which folder\nthem follow the link for further info.","commit_id":"ebf045f37c8d66c46b50322ff1d5b846bebfa31b"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"d10ee5ee540024e8a4ca4aba423f772b23299743","unresolved":false,"context_lines":[{"line_number":11461,"context_line":"@end deffn"},{"line_number":11462,"context_line":""},{"line_number":11463,"context_line":"@deffn {Command} {esp gcov} [dump]"},{"line_number":11464,"context_line":"Dumps collected coverage (gcov) data from target."},{"line_number":11465,"context_line":"@url{https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/app_trace.html#gcov-source-code-coverage}"},{"line_number":11466,"context_line":"@itemize @bullet"},{"line_number":11467,"context_line":"@item @code{dump} - Used for @uref{https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/app_trace.html#hard-coded-dump, hard-coded dump mode}."}],"source_content_type":"text/x-texinfo","patch_set":6,"id":"3f0f15b7_cbb24504","line":11464,"in_reply_to":"1f1ee841_4d07ca78","updated":"2023-09-20 17:46:17.000000000","message":"Done","commit_id":"ebf045f37c8d66c46b50322ff1d5b846bebfa31b"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"dfbc6ba996048f42f4ad95cf053d958093851bd0","unresolved":true,"context_lines":[{"line_number":11608,"context_line":"Requests ongoing Espressif multi-core SystremView tracing status."},{"line_number":11609,"context_line":"@end deffn"},{"line_number":11610,"context_line":""},{"line_number":11611,"context_line":"@deffn {Command} {esp gcov} [dump] [\u003cprefix\u003e] [\u003cprefix_strip\u003e]"},{"line_number":11612,"context_line":"Dumps collected source code coverage (gcov) data from the target."},{"line_number":11613,"context_line":"The process involves compiling the source code with specific options, transferring the coverage data from the target to the host,"},{"line_number":11614,"context_line":"and using Gcov or Gcovr to create reports that show which parts of the code were executed."}],"source_content_type":"text/x-texinfo","patch_set":11,"id":"0836802d_912579a2","line":11611,"updated":"2023-11-29 15:54:39.000000000","message":"reading the code looks like:\n@deffn {Command} {esp gcov} [dump] [\u003cprefix\u003e [\u003cprefix_strip\u003e]]","commit_id":"77ac45f1fcb0a5e7884705f6711e78b88b6075b0"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"78dc90f1815ac930c0edc9ff9902d6c50b1a5df8","unresolved":false,"context_lines":[{"line_number":11608,"context_line":"Requests ongoing Espressif multi-core SystremView tracing status."},{"line_number":11609,"context_line":"@end deffn"},{"line_number":11610,"context_line":""},{"line_number":11611,"context_line":"@deffn {Command} {esp gcov} [dump] [\u003cprefix\u003e] [\u003cprefix_strip\u003e]"},{"line_number":11612,"context_line":"Dumps collected source code coverage (gcov) data from the target."},{"line_number":11613,"context_line":"The process involves compiling the source code with specific options, transferring the coverage data from the target to the host,"},{"line_number":11614,"context_line":"and using Gcov or Gcovr to create reports that show which parts of the code were executed."}],"source_content_type":"text/x-texinfo","patch_set":11,"id":"84dbb863_f882329d","line":11611,"in_reply_to":"0836802d_912579a2","updated":"2023-11-30 01:21:43.000000000","message":"Done","commit_id":"77ac45f1fcb0a5e7884705f6711e78b88b6075b0"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"dfbc6ba996048f42f4ad95cf053d958093851bd0","unresolved":true,"context_lines":[{"line_number":11619,"context_line":"Cross-profiling feature is related to GCC, see @url{https://gcc.gnu.org/onlinedocs/gcc/Cross-profiling.html}"},{"line_number":11620,"context_line":""},{"line_number":11621,"context_line":"@itemize @bullet"},{"line_number":11622,"context_line":"@item @code{dump} - Used for @uref{https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/app_trace.html#hard-coded-dump, hard-coded dump mode}."},{"line_number":11623,"context_line":"@item @code{prefix} - Lets you specify a prefix to add to the absolute paths in the object file. It can be an absolute or relative path, and by default, there\u0027s no prefix."},{"line_number":11624,"context_line":"@item @code{prefix_strip} - Determines how many initial directory names should be removed from the hardwired absolute paths. By default, it\u0027s set to 0."},{"line_number":11625,"context_line":"@end itemize"}],"source_content_type":"text/x-texinfo","patch_set":11,"id":"369785b0_4d8af1b3","line":11622,"updated":"2023-11-29 15:54:39.000000000","message":"Please add that without \"dump\" it would be \"Instant Run-Time Dump\" (if I understand correctly).\nActually it\u0027s quite confusing as both cases are for dumping gcov data.\nIt would have been more clear with a flag like [-run-time | -hard-coded], wiht a default if it\u0027s not specified.\nWhat do you think? I know you have some legacy with this command name. Any better proposal?","commit_id":"77ac45f1fcb0a5e7884705f6711e78b88b6075b0"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"78dc90f1815ac930c0edc9ff9902d6c50b1a5df8","unresolved":true,"context_lines":[{"line_number":11619,"context_line":"Cross-profiling feature is related to GCC, see @url{https://gcc.gnu.org/onlinedocs/gcc/Cross-profiling.html}"},{"line_number":11620,"context_line":""},{"line_number":11621,"context_line":"@itemize @bullet"},{"line_number":11622,"context_line":"@item @code{dump} - Used for @uref{https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/app_trace.html#hard-coded-dump, hard-coded dump mode}."},{"line_number":11623,"context_line":"@item @code{prefix} - Lets you specify a prefix to add to the absolute paths in the object file. It can be an absolute or relative path, and by default, there\u0027s no prefix."},{"line_number":11624,"context_line":"@item @code{prefix_strip} - Determines how many initial directory names should be removed from the hardwired absolute paths. By default, it\u0027s set to 0."},{"line_number":11625,"context_line":"@end itemize"}],"source_content_type":"text/x-texinfo","patch_set":11,"id":"09583f18_55208f75","line":11622,"in_reply_to":"369785b0_4d8af1b3","updated":"2023-11-30 01:21:43.000000000","message":"I have updated the doc. \n\nCan we keep the option as is. I don\u0027t think it is confusing, since esp-idf documentation (we refer from here) is clear enough.","commit_id":"77ac45f1fcb0a5e7884705f6711e78b88b6075b0"}],"src/target/espressif/esp32_apptrace.c":[{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ca76e14cd11e30a0b207dafc044fdbd0b18ee5b9","unresolved":true,"context_lines":[{"line_number":1690,"context_line":""},{"line_number":1691,"context_line":"\tLOG_DEBUG(\"Convert gcov file path \u0027%s\u0027\", orig_fname);"},{"line_number":1692,"context_line":"\t/* Check if the level of dirs to strip off specified. */"},{"line_number":1693,"context_line":"\tchar *tmp \u003d getenv(\"OPENOCD_GCOV_PREFIX_STRIP\");"},{"line_number":1694,"context_line":"\tif (tmp) {"},{"line_number":1695,"context_line":"\t\tstrip \u003d atoi(tmp);"},{"line_number":1696,"context_line":"\t\t/* Do not consider negative values. */"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"f60fc260_643e7aad","line":1693,"updated":"2023-09-10 20:58:48.000000000","message":"this is brand new surprise! An out-of-season Easter egg!\nUsing OS shell variables to modify the TCL command behavior.\nNot documented. What\u0027s the purpose?\nShould the values be part of \u0027esp dump\u0027 command line? Or in a separate command?","commit_id":"ebf045f37c8d66c46b50322ff1d5b846bebfa31b"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"86a6f2ab098b03c1f4fed68a517d8f727e3a7155","unresolved":false,"context_lines":[{"line_number":1690,"context_line":""},{"line_number":1691,"context_line":"\tLOG_DEBUG(\"Convert gcov file path \u0027%s\u0027\", orig_fname);"},{"line_number":1692,"context_line":"\t/* Check if the level of dirs to strip off specified. */"},{"line_number":1693,"context_line":"\tchar *tmp \u003d getenv(\"OPENOCD_GCOV_PREFIX_STRIP\");"},{"line_number":1694,"context_line":"\tif (tmp) {"},{"line_number":1695,"context_line":"\t\tstrip \u003d atoi(tmp);"},{"line_number":1696,"context_line":"\t\t/* Do not consider negative values. */"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"53ed61b9_3c46758b","line":1693,"in_reply_to":"142bc552_3050e740","updated":"2023-11-28 00:45:48.000000000","message":"Done","commit_id":"ebf045f37c8d66c46b50322ff1d5b846bebfa31b"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"5170d12bce0dfaa5babede9cff56ff4d81469af2","unresolved":true,"context_lines":[{"line_number":1690,"context_line":""},{"line_number":1691,"context_line":"\tLOG_DEBUG(\"Convert gcov file path \u0027%s\u0027\", orig_fname);"},{"line_number":1692,"context_line":"\t/* Check if the level of dirs to strip off specified. */"},{"line_number":1693,"context_line":"\tchar *tmp \u003d getenv(\"OPENOCD_GCOV_PREFIX_STRIP\");"},{"line_number":1694,"context_line":"\tif (tmp) {"},{"line_number":1695,"context_line":"\t\tstrip \u003d atoi(tmp);"},{"line_number":1696,"context_line":"\t\t/* Do not consider negative values. */"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"142bc552_3050e740","line":1693,"in_reply_to":"7aba1f62_780215f3","updated":"2023-11-26 15:00:04.000000000","message":"Ok will do it in the next patch set.","commit_id":"ebf045f37c8d66c46b50322ff1d5b846bebfa31b"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6d37ac398819e551e6514e8bf40292abb2758031","unresolved":true,"context_lines":[{"line_number":1690,"context_line":""},{"line_number":1691,"context_line":"\tLOG_DEBUG(\"Convert gcov file path \u0027%s\u0027\", orig_fname);"},{"line_number":1692,"context_line":"\t/* Check if the level of dirs to strip off specified. */"},{"line_number":1693,"context_line":"\tchar *tmp \u003d getenv(\"OPENOCD_GCOV_PREFIX_STRIP\");"},{"line_number":1694,"context_line":"\tif (tmp) {"},{"line_number":1695,"context_line":"\t\tstrip \u003d atoi(tmp);"},{"line_number":1696,"context_line":"\t\t/* Do not consider negative values. */"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"7aba1f62_780215f3","line":1693,"in_reply_to":"d2e58fab_4e9cd4cb","updated":"2023-11-25 23:00:21.000000000","message":"in a TCL script you can read the OS environment variables, e.g.\necho $env(OPENOCD_GCOV_PREFIX_STRIP)\nI prefer to stick to OpenOCD way of working and having these strings passed through commands, either with \u0027esp dump\u0027 or with another command.\nThen in tcl/target/script you can read OS environment variables and pass the value to the TCL command","commit_id":"ebf045f37c8d66c46b50322ff1d5b846bebfa31b"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"d10ee5ee540024e8a4ca4aba423f772b23299743","unresolved":true,"context_lines":[{"line_number":1690,"context_line":""},{"line_number":1691,"context_line":"\tLOG_DEBUG(\"Convert gcov file path \u0027%s\u0027\", orig_fname);"},{"line_number":1692,"context_line":"\t/* Check if the level of dirs to strip off specified. */"},{"line_number":1693,"context_line":"\tchar *tmp \u003d getenv(\"OPENOCD_GCOV_PREFIX_STRIP\");"},{"line_number":1694,"context_line":"\tif (tmp) {"},{"line_number":1695,"context_line":"\t\tstrip \u003d atoi(tmp);"},{"line_number":1696,"context_line":"\t\t/* Do not consider negative values. */"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"d2e58fab_4e9cd4cb","line":1693,"in_reply_to":"f60fc260_643e7aad","updated":"2023-09-20 17:46:17.000000000","message":"I tried to explain in the doc. We prefer to keep it as env variable same as documented here https://gcc.gnu.org/onlinedocs/gcc/Cross-profiling.html \nWhat do you think?","commit_id":"ebf045f37c8d66c46b50322ff1d5b846bebfa31b"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"ca76e14cd11e30a0b207dafc044fdbd0b18ee5b9","unresolved":true,"context_lines":[{"line_number":2173,"context_line":"\tuint32_t stub_capabilites;"},{"line_number":2174,"context_line":"\tbool gcov_idf_has_thread \u003d false;"},{"line_number":2175,"context_line":""},{"line_number":2176,"context_line":"\tif (CMD_ARGC \u003e 0) {"},{"line_number":2177,"context_line":"\t\tif (strcmp(CMD_ARGV[0], \"dump\") \u003d\u003d 0) {"},{"line_number":2178,"context_line":"\t\t\tdump \u003d true;"},{"line_number":2179,"context_line":"\t\t} else {"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"a0eb01fb_0b17ea60","line":2176,"updated":"2023-09-10 20:58:48.000000000","message":"if (CMD_ARGC \u003e 1)\nreturn ERROR_COMMAND_SYNTAX_ERROR;\n\nif (CMD_ARGC \u003d\u003d 1) {\nif (strcmp(CMD_ARGV[0], \"dump\") !\u003d 0)\nreturn ERROR_COMMAND_SYNTAX_ERROR;\ndump \u003d true;\n}","commit_id":"ebf045f37c8d66c46b50322ff1d5b846bebfa31b"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"d10ee5ee540024e8a4ca4aba423f772b23299743","unresolved":false,"context_lines":[{"line_number":2173,"context_line":"\tuint32_t stub_capabilites;"},{"line_number":2174,"context_line":"\tbool gcov_idf_has_thread \u003d false;"},{"line_number":2175,"context_line":""},{"line_number":2176,"context_line":"\tif (CMD_ARGC \u003e 0) {"},{"line_number":2177,"context_line":"\t\tif (strcmp(CMD_ARGV[0], \"dump\") \u003d\u003d 0) {"},{"line_number":2178,"context_line":"\t\t\tdump \u003d true;"},{"line_number":2179,"context_line":"\t\t} else {"}],"source_content_type":"text/x-csrc","patch_set":6,"id":"eda8625d_fcab185d","line":2176,"in_reply_to":"a0eb01fb_0b17ea60","updated":"2023-09-20 17:46:17.000000000","message":"Done","commit_id":"ebf045f37c8d66c46b50322ff1d5b846bebfa31b"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6d37ac398819e551e6514e8bf40292abb2758031","unresolved":true,"context_lines":[{"line_number":1706,"context_line":"\tif (prefix_length \u0026\u0026 IS_DIR_SEPARATOR(gcov_prefix[prefix_length - 1]))"},{"line_number":1707,"context_line":"\t\tprefix_length--;"},{"line_number":1708,"context_line":""},{"line_number":1709,"context_line":"\t/* If no prefix was specified and a prefix stip, then we assume relative.  */"},{"line_number":1710,"context_line":"\tif (!prefix_length \u0026\u0026 strip) {"},{"line_number":1711,"context_line":"\t\tgcov_prefix \u003d \".\";"},{"line_number":1712,"context_line":"\t\tprefix_length \u003d 1;"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"e653b75f_0e38e707","line":1709,"updated":"2023-11-25 23:00:21.000000000","message":"type s/stip/strip/","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"5170d12bce0dfaa5babede9cff56ff4d81469af2","unresolved":false,"context_lines":[{"line_number":1706,"context_line":"\tif (prefix_length \u0026\u0026 IS_DIR_SEPARATOR(gcov_prefix[prefix_length - 1]))"},{"line_number":1707,"context_line":"\t\tprefix_length--;"},{"line_number":1708,"context_line":""},{"line_number":1709,"context_line":"\t/* If no prefix was specified and a prefix stip, then we assume relative.  */"},{"line_number":1710,"context_line":"\tif (!prefix_length \u0026\u0026 strip) {"},{"line_number":1711,"context_line":"\t\tgcov_prefix \u003d \".\";"},{"line_number":1712,"context_line":"\t\tprefix_length \u003d 1;"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"49875734_a0001547","line":1709,"in_reply_to":"e653b75f_0e38e707","updated":"2023-11-26 15:00:04.000000000","message":"Done","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6d37ac398819e551e6514e8bf40292abb2758031","unresolved":true,"context_lines":[{"line_number":1713,"context_line":"\t}"},{"line_number":1714,"context_line":""},{"line_number":1715,"context_line":"\t/* Allocate and initialize the filename scratch space.  */"},{"line_number":1716,"context_line":"\tchar *filename \u003d (char *)malloc(prefix_length + orig_fname_len + 1);"},{"line_number":1717,"context_line":"\tif (prefix_length)"},{"line_number":1718,"context_line":"\t\tmemcpy(filename, gcov_prefix, prefix_length);"},{"line_number":1719,"context_line":"\tconst char *striped_fname \u003d orig_fname;"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"5cecc95b_d018604d","line":1716,"updated":"2023-11-25 23:00:21.000000000","message":"remove the cast","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"5170d12bce0dfaa5babede9cff56ff4d81469af2","unresolved":false,"context_lines":[{"line_number":1713,"context_line":"\t}"},{"line_number":1714,"context_line":""},{"line_number":1715,"context_line":"\t/* Allocate and initialize the filename scratch space.  */"},{"line_number":1716,"context_line":"\tchar *filename \u003d (char *)malloc(prefix_length + orig_fname_len + 1);"},{"line_number":1717,"context_line":"\tif (prefix_length)"},{"line_number":1718,"context_line":"\t\tmemcpy(filename, gcov_prefix, prefix_length);"},{"line_number":1719,"context_line":"\tconst char *striped_fname \u003d orig_fname;"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"c6015be6_40a3b0c0","line":1716,"in_reply_to":"5cecc95b_d018604d","updated":"2023-11-26 15:00:04.000000000","message":"Done","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6d37ac398819e551e6514e8bf40292abb2758031","unresolved":true,"context_lines":[{"line_number":1729,"context_line":"\t\tstriped_fname \u003d tmp;"},{"line_number":1730,"context_line":"\t}"},{"line_number":1731,"context_line":"\tif (strip \u003e 0)"},{"line_number":1732,"context_line":"\t\tLOG_WARNING(\"Failed to srip %d dir names in gcov file path \u0027%s\u0027!\", strip, orig_fname);"},{"line_number":1733,"context_line":"\tstrcpy(\u0026filename[prefix_length], striped_fname);"},{"line_number":1734,"context_line":""},{"line_number":1735,"context_line":"\treturn filename;"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"c4c73c85_cfba1800","line":1732,"updated":"2023-11-25 23:00:21.000000000","message":"s/srip/strip/ I think","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"5170d12bce0dfaa5babede9cff56ff4d81469af2","unresolved":false,"context_lines":[{"line_number":1729,"context_line":"\t\tstriped_fname \u003d tmp;"},{"line_number":1730,"context_line":"\t}"},{"line_number":1731,"context_line":"\tif (strip \u003e 0)"},{"line_number":1732,"context_line":"\t\tLOG_WARNING(\"Failed to srip %d dir names in gcov file path \u0027%s\u0027!\", strip, orig_fname);"},{"line_number":1733,"context_line":"\tstrcpy(\u0026filename[prefix_length], striped_fname);"},{"line_number":1734,"context_line":""},{"line_number":1735,"context_line":"\treturn filename;"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"99b39fd7_0346ce99","line":1732,"in_reply_to":"c4c73c85_cfba1800","updated":"2023-11-26 15:00:04.000000000","message":"Done","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6d37ac398819e551e6514e8bf40292abb2758031","unresolved":true,"context_lines":[{"line_number":1752,"context_line":"\t\tLOG_ERROR(\"Missed FOPEN args!\");"},{"line_number":1753,"context_line":"\t\treturn ERROR_FAIL;"},{"line_number":1754,"context_line":"\t}"},{"line_number":1755,"context_line":"\tint len \u003d strlen((char *)data);"},{"line_number":1756,"context_line":"\tif (len \u003d\u003d 0) {"},{"line_number":1757,"context_line":"\t\tLOG_ERROR(\"Missed FOPEN path arg!\");"},{"line_number":1758,"context_line":"\t\treturn ERROR_FAIL;"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"1a41dfee_51d668bd","line":1755,"updated":"2023-11-25 23:00:21.000000000","message":"\u0027data\u0027 is cast-ed three times in this function.\nAdd a single\nchar \\*cdata \u003d (char \\*)data;\nat the beginning and use it later.\nPlus, no need for const when call esp_gcov_filename_alloc() at line 1767","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"5170d12bce0dfaa5babede9cff56ff4d81469af2","unresolved":false,"context_lines":[{"line_number":1752,"context_line":"\t\tLOG_ERROR(\"Missed FOPEN args!\");"},{"line_number":1753,"context_line":"\t\treturn ERROR_FAIL;"},{"line_number":1754,"context_line":"\t}"},{"line_number":1755,"context_line":"\tint len \u003d strlen((char *)data);"},{"line_number":1756,"context_line":"\tif (len \u003d\u003d 0) {"},{"line_number":1757,"context_line":"\t\tLOG_ERROR(\"Missed FOPEN path arg!\");"},{"line_number":1758,"context_line":"\t\treturn ERROR_FAIL;"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"db366102_f1e7b831","line":1755,"in_reply_to":"1a41dfee_51d668bd","updated":"2023-11-26 15:00:04.000000000","message":"Done","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6d37ac398819e551e6514e8bf40292abb2758031","unresolved":true,"context_lines":[{"line_number":1786,"context_line":"\t\tLOG_ERROR(\"Failed to alloc mem for resp!\");"},{"line_number":1787,"context_line":"\t\tif (fd !\u003d 0)"},{"line_number":1788,"context_line":"\t\t\tfclose(cmd_data-\u003efiles[fd - 1]);"},{"line_number":1789,"context_line":"\t\tfree((void *)fname);"},{"line_number":1790,"context_line":"\t\treturn ERROR_FAIL;"},{"line_number":1791,"context_line":"\t}"},{"line_number":1792,"context_line":"\ttarget_buffer_set_u32(target, *resp, fd);"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"f6a3c457_3f46a0fd","line":1789,"updated":"2023-11-25 23:00:21.000000000","message":"remove the cast, not needed","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"dfbc6ba996048f42f4ad95cf053d958093851bd0","unresolved":false,"context_lines":[{"line_number":1786,"context_line":"\t\tLOG_ERROR(\"Failed to alloc mem for resp!\");"},{"line_number":1787,"context_line":"\t\tif (fd !\u003d 0)"},{"line_number":1788,"context_line":"\t\t\tfclose(cmd_data-\u003efiles[fd - 1]);"},{"line_number":1789,"context_line":"\t\tfree((void *)fname);"},{"line_number":1790,"context_line":"\t\treturn ERROR_FAIL;"},{"line_number":1791,"context_line":"\t}"},{"line_number":1792,"context_line":"\ttarget_buffer_set_u32(target, *resp, fd);"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"e2e8cc40_490cd2c6","line":1789,"in_reply_to":"892c8886_29770ec8","updated":"2023-11-29 15:54:39.000000000","message":"I think it\u0027s incorrect that esp_gcov_filename_alloc() returns a const pointer if later it has to be free().\nWhat about dropping the const?","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"5170d12bce0dfaa5babede9cff56ff4d81469af2","unresolved":false,"context_lines":[{"line_number":1786,"context_line":"\t\tLOG_ERROR(\"Failed to alloc mem for resp!\");"},{"line_number":1787,"context_line":"\t\tif (fd !\u003d 0)"},{"line_number":1788,"context_line":"\t\t\tfclose(cmd_data-\u003efiles[fd - 1]);"},{"line_number":1789,"context_line":"\t\tfree((void *)fname);"},{"line_number":1790,"context_line":"\t\treturn ERROR_FAIL;"},{"line_number":1791,"context_line":"\t}"},{"line_number":1792,"context_line":"\ttarget_buffer_set_u32(target, *resp, fd);"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"892c8886_29770ec8","line":1789,"in_reply_to":"f6a3c457_3f46a0fd","updated":"2023-11-26 15:00:04.000000000","message":"fname is const char*. So need to (void *) cast to avoid compiler error. \n\nerror: passing argument 1 of \u0027free\u0027 discards \u0027const\u0027 qualifier from pointer target type","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6d37ac398819e551e6514e8bf40292abb2758031","unresolved":true,"context_lines":[{"line_number":1794,"context_line":"\tif (fd !\u003d 0)"},{"line_number":1795,"context_line":"\t\tcmd_data-\u003efiles_num++;"},{"line_number":1796,"context_line":""},{"line_number":1797,"context_line":"\tfree((void *)fname);"},{"line_number":1798,"context_line":"\treturn ERROR_OK;"},{"line_number":1799,"context_line":"}"},{"line_number":1800,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":8,"id":"41c905ca_d0fa7b37","line":1797,"updated":"2023-11-25 23:00:21.000000000","message":"remove the cast","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"5170d12bce0dfaa5babede9cff56ff4d81469af2","unresolved":false,"context_lines":[{"line_number":1794,"context_line":"\tif (fd !\u003d 0)"},{"line_number":1795,"context_line":"\t\tcmd_data-\u003efiles_num++;"},{"line_number":1796,"context_line":""},{"line_number":1797,"context_line":"\tfree((void *)fname);"},{"line_number":1798,"context_line":"\treturn ERROR_OK;"},{"line_number":1799,"context_line":"}"},{"line_number":1800,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":8,"id":"d2f57535_0f2d1277","line":1797,"in_reply_to":"41c905ca_d0fa7b37","updated":"2023-11-26 15:00:04.000000000","message":"Same as above.","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6d37ac398819e551e6514e8bf40292abb2758031","unresolved":true,"context_lines":[{"line_number":1825,"context_line":""},{"line_number":1826,"context_line":"\tint32_t fret \u003d fclose(cmd_data-\u003efiles[fd]);"},{"line_number":1827,"context_line":"\tif (fret)"},{"line_number":1828,"context_line":"\t\tLOG_ERROR(\"Failed to close file %d (%d)!\", fd, errno);"},{"line_number":1829,"context_line":"\telse"},{"line_number":1830,"context_line":"\t\tcmd_data-\u003efiles[fd] \u003d NULL;"},{"line_number":1831,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":8,"id":"f6b07ece_6a6ce564","line":1828,"updated":"2023-11-25 23:00:21.000000000","message":"is it correct that this error does not get propagated?\nIf it must NOT propagate, then please add a comment explaining \"why\".","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"5170d12bce0dfaa5babede9cff56ff4d81469af2","unresolved":false,"context_lines":[{"line_number":1825,"context_line":""},{"line_number":1826,"context_line":"\tint32_t fret \u003d fclose(cmd_data-\u003efiles[fd]);"},{"line_number":1827,"context_line":"\tif (fret)"},{"line_number":1828,"context_line":"\t\tLOG_ERROR(\"Failed to close file %d (%d)!\", fd, errno);"},{"line_number":1829,"context_line":"\telse"},{"line_number":1830,"context_line":"\t\tcmd_data-\u003efiles[fd] \u003d NULL;"},{"line_number":1831,"context_line":""}],"source_content_type":"text/x-csrc","patch_set":8,"id":"e786882d_c50c33ba","line":1828,"in_reply_to":"f6b07ece_6a6ce564","updated":"2023-11-26 15:00:04.000000000","message":"Same as the other file commands. I explained the reason in a common place.","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6d37ac398819e551e6514e8bf40292abb2758031","unresolved":true,"context_lines":[{"line_number":2094,"context_line":"\t\t\tresp,"},{"line_number":2095,"context_line":"\t\t\tresp_len);"},{"line_number":2096,"context_line":"\t\tif (res !\u003d ERROR_OK) {"},{"line_number":2097,"context_line":"\t\t\tLOG_ERROR(\"Failed to write data to (%s)!\", target_name(ctx-\u003ecpus[core_id]));"},{"line_number":2098,"context_line":"\t\t\tfree(resp);"},{"line_number":2099,"context_line":"\t\t\treturn res;"},{"line_number":2100,"context_line":"\t\t}"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"0d5c51a1_3b1101c4","line":2097,"updated":"2023-11-25 23:00:21.000000000","message":"use LOG_TARGET_ERROR()","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"5170d12bce0dfaa5babede9cff56ff4d81469af2","unresolved":false,"context_lines":[{"line_number":2094,"context_line":"\t\t\tresp,"},{"line_number":2095,"context_line":"\t\t\tresp_len);"},{"line_number":2096,"context_line":"\t\tif (res !\u003d ERROR_OK) {"},{"line_number":2097,"context_line":"\t\t\tLOG_ERROR(\"Failed to write data to (%s)!\", target_name(ctx-\u003ecpus[core_id]));"},{"line_number":2098,"context_line":"\t\t\tfree(resp);"},{"line_number":2099,"context_line":"\t\t\treturn res;"},{"line_number":2100,"context_line":"\t\t}"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"4b5b83a5_d372739f","line":2097,"in_reply_to":"0d5c51a1_3b1101c4","updated":"2023-11-26 15:00:04.000000000","message":"Done","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6d37ac398819e551e6514e8bf40292abb2758031","unresolved":true,"context_lines":[{"line_number":2108,"context_line":"\t\t\t\ttrue /*host connected*/,"},{"line_number":2109,"context_line":"\t\t\t\ttrue /*host data*/);"},{"line_number":2110,"context_line":"\t\t\tif (res !\u003d ERROR_OK) {"},{"line_number":2111,"context_line":"\t\t\t\tLOG_ERROR(\"Failed to ack data on (%s)!\", target_name(ctx-\u003ecpus[i]));"},{"line_number":2112,"context_line":"\t\t\t\treturn res;"},{"line_number":2113,"context_line":"\t\t\t}"},{"line_number":2114,"context_line":"\t\t\tLOG_DEBUG(\"Ack block %d target (%s)!\", ctx-\u003elast_blk_id, target_name(ctx-\u003ecpus[i]));"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"e9be9fd0_da0dc68b","line":2111,"updated":"2023-11-25 23:00:21.000000000","message":"use LOG_TARGET_ERROR()","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"5170d12bce0dfaa5babede9cff56ff4d81469af2","unresolved":false,"context_lines":[{"line_number":2108,"context_line":"\t\t\t\ttrue /*host connected*/,"},{"line_number":2109,"context_line":"\t\t\t\ttrue /*host data*/);"},{"line_number":2110,"context_line":"\t\t\tif (res !\u003d ERROR_OK) {"},{"line_number":2111,"context_line":"\t\t\t\tLOG_ERROR(\"Failed to ack data on (%s)!\", target_name(ctx-\u003ecpus[i]));"},{"line_number":2112,"context_line":"\t\t\t\treturn res;"},{"line_number":2113,"context_line":"\t\t\t}"},{"line_number":2114,"context_line":"\t\t\tLOG_DEBUG(\"Ack block %d target (%s)!\", ctx-\u003elast_blk_id, target_name(ctx-\u003ecpus[i]));"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"2b71bbdd_b860533c","line":2111,"in_reply_to":"e9be9fd0_da0dc68b","updated":"2023-11-26 15:00:04.000000000","message":"Done","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6d37ac398819e551e6514e8bf40292abb2758031","unresolved":true,"context_lines":[{"line_number":2111,"context_line":"\t\t\t\tLOG_ERROR(\"Failed to ack data on (%s)!\", target_name(ctx-\u003ecpus[i]));"},{"line_number":2112,"context_line":"\t\t\t\treturn res;"},{"line_number":2113,"context_line":"\t\t\t}"},{"line_number":2114,"context_line":"\t\t\tLOG_DEBUG(\"Ack block %d target (%s)!\", ctx-\u003elast_blk_id, target_name(ctx-\u003ecpus[i]));"},{"line_number":2115,"context_line":"\t\t}"},{"line_number":2116,"context_line":"\t} else {"},{"line_number":2117,"context_line":"\t\tfor (unsigned int i \u003d 0; i \u003c ctx-\u003ecores_num; i++) {"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"9e0e185f_4fee930f","line":2114,"updated":"2023-11-25 23:00:21.000000000","message":"use LOG_TARGET_DEBUG()\nAlso in other places in this patch","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"5170d12bce0dfaa5babede9cff56ff4d81469af2","unresolved":false,"context_lines":[{"line_number":2111,"context_line":"\t\t\t\tLOG_ERROR(\"Failed to ack data on (%s)!\", target_name(ctx-\u003ecpus[i]));"},{"line_number":2112,"context_line":"\t\t\t\treturn res;"},{"line_number":2113,"context_line":"\t\t\t}"},{"line_number":2114,"context_line":"\t\t\tLOG_DEBUG(\"Ack block %d target (%s)!\", ctx-\u003elast_blk_id, target_name(ctx-\u003ecpus[i]));"},{"line_number":2115,"context_line":"\t\t}"},{"line_number":2116,"context_line":"\t} else {"},{"line_number":2117,"context_line":"\t\tfor (unsigned int i \u003d 0; i \u003c ctx-\u003ecores_num; i++) {"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"ea287917_44df98ab","line":2114,"in_reply_to":"9e0e185f_4fee930f","updated":"2023-11-26 15:00:04.000000000","message":"Done","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"6d37ac398819e551e6514e8bf40292abb2758031","unresolved":true,"context_lines":[{"line_number":2134,"context_line":"static int esp_gcov_poll(struct target *target, void *priv)"},{"line_number":2135,"context_line":"{"},{"line_number":2136,"context_line":"\tint res \u003d ERROR_OK;"},{"line_number":2137,"context_line":"\tstruct esp32_apptrace_cmd_ctx *cmd_ctx \u003d (struct esp32_apptrace_cmd_ctx *)priv;"},{"line_number":2138,"context_line":""},{"line_number":2139,"context_line":"\twhile (!openocd_is_shutdown_pending() \u0026\u0026 target-\u003estate !\u003d TARGET_HALTED \u0026\u0026 cmd_ctx-\u003erunning) {"},{"line_number":2140,"context_line":"\t\tres \u003d esp32_apptrace_poll(cmd_ctx);"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"34c0afaf_f78eec26","line":2137,"updated":"2023-11-25 23:00:21.000000000","message":"no need for cast when a void\\* value is assigned to another pointer\nBut, why this function receives a void\\*?\nIf the pointer is always cast to to same type, why not passing the right type in the argument?","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"5170d12bce0dfaa5babede9cff56ff4d81469af2","unresolved":false,"context_lines":[{"line_number":2134,"context_line":"static int esp_gcov_poll(struct target *target, void *priv)"},{"line_number":2135,"context_line":"{"},{"line_number":2136,"context_line":"\tint res \u003d ERROR_OK;"},{"line_number":2137,"context_line":"\tstruct esp32_apptrace_cmd_ctx *cmd_ctx \u003d (struct esp32_apptrace_cmd_ctx *)priv;"},{"line_number":2138,"context_line":""},{"line_number":2139,"context_line":"\twhile (!openocd_is_shutdown_pending() \u0026\u0026 target-\u003estate !\u003d TARGET_HALTED \u0026\u0026 cmd_ctx-\u003erunning) {"},{"line_number":2140,"context_line":"\t\tres \u003d esp32_apptrace_poll(cmd_ctx);"}],"source_content_type":"text/x-csrc","patch_set":8,"id":"9321b2a3_827b0f35","line":2137,"in_reply_to":"34c0afaf_f78eec26","updated":"2023-11-26 15:00:04.000000000","message":"This function is assigned to the function pointer which is type of `algorithm_usr_func_t` \n\nrun.usr_func \u003d esp_gcov_poll;\n\nIn the stub_flasher patch, we will have one more function will be used as a `user_func` with different private type.\n\nRemoved cast anyway.","commit_id":"9a8daff563f639de1d9b99870670175f509df42c"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"dfbc6ba996048f42f4ad95cf053d958093851bd0","unresolved":true,"context_lines":[{"line_number":1646,"context_line":"\t\treturn ERROR_FAIL;"},{"line_number":1647,"context_line":"\t}"},{"line_number":1648,"context_line":""},{"line_number":1649,"context_line":"\tint prefix_offset \u003d 1 + dump;"},{"line_number":1650,"context_line":"\tif (argc \u003e\u003d prefix_offset) {"},{"line_number":1651,"context_line":"\t\tif (strlen(CMD_ARGV[prefix_offset - 1])) {"},{"line_number":1652,"context_line":"\t\t\tcmd_data-\u003eprefix \u003d strdup(CMD_ARGV[prefix_offset - 1]);"}],"source_content_type":"text/x-csrc","patch_set":11,"id":"ea9e7962_e19c9fe9","line":1649,"updated":"2023-11-29 15:54:39.000000000","message":"integer + boolean?\nMaybe this extra arguments extraction can be moved in the caller where you handle the other command line parameters and pass here prefix and prefix_strip (instead of dump+argc+argv).","commit_id":"77ac45f1fcb0a5e7884705f6711e78b88b6075b0"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"78dc90f1815ac930c0edc9ff9902d6c50b1a5df8","unresolved":false,"context_lines":[{"line_number":1646,"context_line":"\t\treturn ERROR_FAIL;"},{"line_number":1647,"context_line":"\t}"},{"line_number":1648,"context_line":""},{"line_number":1649,"context_line":"\tint prefix_offset \u003d 1 + dump;"},{"line_number":1650,"context_line":"\tif (argc \u003e\u003d prefix_offset) {"},{"line_number":1651,"context_line":"\t\tif (strlen(CMD_ARGV[prefix_offset - 1])) {"},{"line_number":1652,"context_line":"\t\t\tcmd_data-\u003eprefix \u003d strdup(CMD_ARGV[prefix_offset - 1]);"}],"source_content_type":"text/x-csrc","patch_set":11,"id":"b9fea566_104fc5ed","line":1649,"in_reply_to":"ea9e7962_e19c9fe9","updated":"2023-11-30 01:21:43.000000000","message":"Done","commit_id":"77ac45f1fcb0a5e7884705f6711e78b88b6075b0"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"dfbc6ba996048f42f4ad95cf053d958093851bd0","unresolved":true,"context_lines":[{"line_number":1655,"context_line":"\t\t// GCOV_PREFIX_STRIP can be set without GCOV_PREFIX"},{"line_number":1656,"context_line":"\t\t// In that case we still wait GCOV_PREFIX as an empty string"},{"line_number":1657,"context_line":"\t\tif (argc \u003e\u003d ++prefix_offset) {"},{"line_number":1658,"context_line":"\t\t\tcmd_data-\u003eprefix_strip \u003d atoi(CMD_ARGV[prefix_offset - 1]);"},{"line_number":1659,"context_line":"\t\t\tLOG_DEBUG(\"OPENOCD_GCOV_PREFIX_STRIP: (%d)\", cmd_data-\u003eprefix_strip);"},{"line_number":1660,"context_line":"\t\t}"},{"line_number":1661,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":11,"id":"22a49762_2974ea89","line":1658,"updated":"2023-11-29 15:54:39.000000000","message":"this can be done with COMMAND_PARSE_NUMBER(uint, ...)","commit_id":"77ac45f1fcb0a5e7884705f6711e78b88b6075b0"},{"author":{"_account_id":1001964,"name":"Erhan Kurubas","display_name":"Erhan Kurubas","email":"erhan.kurubas@espressif.com","username":"erhankur"},"change_message_id":"78dc90f1815ac930c0edc9ff9902d6c50b1a5df8","unresolved":false,"context_lines":[{"line_number":1655,"context_line":"\t\t// GCOV_PREFIX_STRIP can be set without GCOV_PREFIX"},{"line_number":1656,"context_line":"\t\t// In that case we still wait GCOV_PREFIX as an empty string"},{"line_number":1657,"context_line":"\t\tif (argc \u003e\u003d ++prefix_offset) {"},{"line_number":1658,"context_line":"\t\t\tcmd_data-\u003eprefix_strip \u003d atoi(CMD_ARGV[prefix_offset - 1]);"},{"line_number":1659,"context_line":"\t\t\tLOG_DEBUG(\"OPENOCD_GCOV_PREFIX_STRIP: (%d)\", cmd_data-\u003eprefix_strip);"},{"line_number":1660,"context_line":"\t\t}"},{"line_number":1661,"context_line":"\t}"}],"source_content_type":"text/x-csrc","patch_set":11,"id":"f2af8776_7614b0b2","line":1658,"in_reply_to":"22a49762_2974ea89","updated":"2023-11-30 01:21:43.000000000","message":"For the empty string I get an error from COMMAND_PARSE_NUMBER\n\nError: Invalid command argument\nprefix_strip option value (\u0027\u0027) is not valid","commit_id":"77ac45f1fcb0a5e7884705f6711e78b88b6075b0"}]}
