)]}'
{"src/openvpn/dco_linux.c":[{"author":{"_account_id":1000053,"name":"Răzvan Cojocaru","display_name":"Razvan Cojocaru","email":"razvanc@mailbox.org","username":"razvanc"},"change_message_id":"fcf618c1c9cffeb972d48377d0324c7d0bfd7271","unresolved":true,"context_lines":[{"line_number":1225,"context_line":"    if (__is_locked)"},{"line_number":1226,"context_line":"    {"},{"line_number":1227,"context_line":"        msg(D_DCO_DEBUG, \"%s: cannot request peer stats while parsing other messages\", __func__);"},{"line_number":1228,"context_line":"        return 0;"},{"line_number":1229,"context_line":"    }"},{"line_number":1230,"context_line":""},{"line_number":1231,"context_line":"    /* peer_id \u003d\u003d -1 means \"dump all peers\", but this is allowed in MP mode only."}],"source_content_type":"text/x-csrc","patch_set":1,"id":"9dd7d752_434d3488","line":1228,"updated":"2026-09-24 16:30:13.000000000","message":"So before this patch, we exit early here if `__is_locked`.\n\nIn server mode, I _think_ `DEL_NTF` goes to `multi_process_incoming_dco()` -\u003e `multi_close_instance()` -\u003e `multi_client_disconnect_setenv()` -\u003e `setenv_stats()` -\u003e `dco_get_peer_stats_multi()` (-\u003e `dco_get_peer()`).\n\nApologies if I\u0027m misreading this.","commit_id":"faaea4c811c3bc93b2121a96b2a4aef893259467"},{"author":{"_account_id":1000007,"name":"Antonio Quartulli","display_name":"Antonio Quartulli","email":"antonio@mandelbit.com","username":"ordex"},"change_message_id":"5b1d5154336f4a1dc841905ea1d78831567c690c","unresolved":true,"context_lines":[{"line_number":1225,"context_line":"    if (__is_locked)"},{"line_number":1226,"context_line":"    {"},{"line_number":1227,"context_line":"        msg(D_DCO_DEBUG, \"%s: cannot request peer stats while parsing other messages\", __func__);"},{"line_number":1228,"context_line":"        return 0;"},{"line_number":1229,"context_line":"    }"},{"line_number":1230,"context_line":""},{"line_number":1231,"context_line":"    /* peer_id \u003d\u003d -1 means \"dump all peers\", but this is allowed in MP mode only."}],"source_content_type":"text/x-csrc","patch_set":1,"id":"ed2cda66_7ff780fd","line":1228,"in_reply_to":"9dd7d752_434d3488","updated":"2026-09-24 21:10:54.000000000","message":"I am not understanding the question..if there is any? 😃","commit_id":"faaea4c811c3bc93b2121a96b2a4aef893259467"},{"author":{"_account_id":1000053,"name":"Răzvan Cojocaru","display_name":"Razvan Cojocaru","email":"razvanc@mailbox.org","username":"razvanc"},"change_message_id":"8b46d93e32f54939cb4ce2b7313c159dc0f9a4db","unresolved":false,"context_lines":[{"line_number":1225,"context_line":"    if (__is_locked)"},{"line_number":1226,"context_line":"    {"},{"line_number":1227,"context_line":"        msg(D_DCO_DEBUG, \"%s: cannot request peer stats while parsing other messages\", __func__);"},{"line_number":1228,"context_line":"        return 0;"},{"line_number":1229,"context_line":"    }"},{"line_number":1230,"context_line":""},{"line_number":1231,"context_line":"    /* peer_id \u003d\u003d -1 means \"dump all peers\", but this is allowed in MP mode only."}],"source_content_type":"text/x-csrc","patch_set":1,"id":"d37135b9_fe6c8fd5","line":1228,"in_reply_to":"db71af1c_e735e27c","updated":"2026-09-25 04:11:45.000000000","message":"Yes, thanks! It looked like a potential flood of state dumping on a mass disconnect. If that\u0027s intended (and slated for optimization) then no problem here.","commit_id":"faaea4c811c3bc93b2121a96b2a4aef893259467"},{"author":{"_account_id":1000007,"name":"Antonio Quartulli","display_name":"Antonio Quartulli","email":"antonio@mandelbit.com","username":"ordex"},"change_message_id":"6f9fe93a1fa72c8ffe2f486532722c00f7068d5e","unresolved":true,"context_lines":[{"line_number":1225,"context_line":"    if (__is_locked)"},{"line_number":1226,"context_line":"    {"},{"line_number":1227,"context_line":"        msg(D_DCO_DEBUG, \"%s: cannot request peer stats while parsing other messages\", __func__);"},{"line_number":1228,"context_line":"        return 0;"},{"line_number":1229,"context_line":"    }"},{"line_number":1230,"context_line":""},{"line_number":1231,"context_line":"    /* peer_id \u003d\u003d -1 means \"dump all peers\", but this is allowed in MP mode only."}],"source_content_type":"text/x-csrc","patch_set":1,"id":"db71af1c_e735e27c","line":1228,"in_reply_to":"ed2cda66_7ff780fd","updated":"2026-09-24 21:31:24.000000000","message":"if I understand the your point, you\u0027re saying that with this patch we don\u0027t bail out, but rather process all incoming DEL_NTF properly, which means dumping stats and so on.\n\nYes and this is the originally expected behaviour: shut down, update stats one last time, be done with it.\n\nThis said, this behaviour may be suboptimal and we are already working on an improvement which will attach the last stats to the DEL_NTF message, to avoid one extra dump at the end (which often results in -ENOSUCH because the peer is gone already).\n\nDoes it help clarifying the doubt?","commit_id":"faaea4c811c3bc93b2121a96b2a4aef893259467"}]}
