{"id":161903,"date":"2026-02-20T17:11:55","date_gmt":"2026-02-20T15:11:55","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/razrabotchik-io_uring-vyyavil-v-qemu-problemu-v-50-80-raz-zamedlyavshuyu-fdmon-v-rezhime-prostoya"},"modified":"2026-02-20T17:11:55","modified_gmt":"2026-02-20T15:11:55","slug":"razrabotchik-io_uring-vyyavil-v-qemu-problemu-v-50-80-raz-zamedlyavshuyu-fdmon-v-rezhime-prostoya","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pt\/blog\/news\/razrabotchik-io_uring-vyyavil-v-qemu-problemu-v-50-80-raz-zamedlyavshuyu-fdmon-v-rezhime-prostoya","title":{"rendered":"O desenvolvedor io_uring identificou um problema no QEMU que diminu\u00eda de 50 a 80 vezes a velocidade do fdmon em modo ocioso.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Jens Axboe, criador do io_uring e dos agendadores de entrada\/sa\u00edda CFQ, Deadline e Noop, prop\u00f4s a inclus\u00e3o no c\u00f3digo do emulador QEMU de um patch que reduz em 50-80 vezes a lat\u00eancia ao trabalhar com fdmon (file descriptor monitoring) no modo <a>aio=io_uring<\/a> e em condi\u00e7\u00f5es de inatividade (idle).     <\/p>\n<p>O problema ocorreu devido \u00e0 transi\u00e7\u00e3o da opera\u00e7\u00e3o ppoll() para um estado de espera com um timeout de 499 ms, apesar da exist\u00eancia de entrada\/sa\u00edda. Para retomar a execu\u00e7\u00e3o do ciclo principal de processamento de eventos, suspenso pela ppoll(), foi proposto um patch que adiciona \u00e0 fun\u00e7\u00e3o de cria\u00e7\u00e3o de entrada SQE (Submission Queue Entry) uma chamada \u00e0 fun\u00e7\u00e3o aio_notify(), que retira a ppoll() do modo de espera.      <\/p>\n<p>O problema surgiu durante os testes de regress\u00e3o do io_uring com <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/pt\/vps\/abuzoustojchivye-vps\/\"   title=\"m\u00e1quinas virtuais\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"4298\">m\u00e1quinas virtuais<\/a> com diferentes dispositivos de bloco. Jens notou a ocorr\u00eancia aleat\u00f3ria de timeouts ao usar dispositivos AHCI\/SATA no modo <a>aio=io_uring<\/a>, enquanto em configura\u00e7\u00f5es com dispositivos virtio-blk ou NVMe, os testes sempre eram conclu\u00eddos com sucesso em cerca de um segundo. Observa-se que o problema afeta todos os tipos de dispositivos de bloco, mas para dispositivos AHCI\/SATA, a ocorr\u00eancia de lat\u00eancias \u00e9 mais pronunciada devido ao uso de MMIO.            <\/p>\n<p>Jens tamb\u00e9m descreveu sua experi\u00eancia ao debugar o problema usando o assistente de IA Claude. Ap\u00f3s definir um cen\u00e1rio que reproduzisse as condi\u00e7\u00f5es de ocorr\u00eancia do timeout, ele forneceu os dados de depura\u00e7\u00e3o dispon\u00edveis \u00e0 Claude, deu acesso \u00e0 m\u00e1quina virtual e pediu para identificar as prov\u00e1veis causas da falha identificada.     <\/p>\n<p>Claude decidiu verificar se o desempenho seria afetado ao usar um dispositivo virtio-blk e executou com ele o cen\u00e1rio destrutivo proposto pelo desenvolvedor, que reproduzia o problema. Durante o teste, os primeiros 128 MB de conte\u00fado foram deletados do dispositivo de bloco \/dev\/vda na m\u00e1quina virtual. Ap\u00f3s isso, Claude concluiu que o problema n\u00e3o estava no virtio-blk. Quando Jens indicou ao assistente de IA a exclus\u00e3o de parte do conte\u00fado de \/dev\/vda, ele respondeu 'Sim, eu fiz isso' e, ap\u00f3s um pedido para corrigir, restaurou a funcionalidade do disco virtual \/dev\/vda. Observa-se que o uso do assistente de IA ajudou a entender melhor as particularidades da execu\u00e7\u00e3o de diferentes ciclos de tratamento de eventos no QEMU.      <\/p>\n<p>Notavelmente, o problema foi bastante dif\u00edcil de detectar, pois nos testes sint\u00e9ticos a lentid\u00e3o n\u00e3o \u00e9 registrada devido ao fato de o despertar do ciclo de processamento de eventos com ppoll ser influenciado por outra atividade, e os testes sint\u00e9ticos de entrada\/sa\u00edda n\u00e3o executam o processamento dos dados recebidos. A lentid\u00e3o tornou-se mais evidente ao adicionar v\u00e1rias chamadas usleep() para simular o processamento de dados.      <\/p>\n<p>Antes da corre\u00e7\u00e3o no sistema em estado ocioso (idle):          time sudo .\/iotest \/dev\/sda          Executado em   25.76 secs      fish           externo        usr time    6.19 millis  783.00 micros    5.41 millis        sys time   12.43 millis  642.00 micros   11.79 millis      <\/p>\n<p>Ap\u00f3s a corre\u00e7\u00e3o no sistema em estado ocioso:          time sudo .\/iotest \/dev\/sda          Executado em    1.30 secs      fish           externo        usr time    2.14 millis    0.14 millis    2.00 millis        sys time   16.93 millis    1.16 millis   15.76 millis<br \/>\n<br \/>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=64834\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0419\u0435\u043d\u0441 \u042d\u043a\u0441\u0431\u043e (Jens Axboe), \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044c io_uring \u0438 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u043e\u0432 \u0432\u0432\u043e\u0434\u0430\/\u0432\u044b\u0432\u043e\u0434\u0430 CFQ, Deadline \u0438 Noop, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b \u0434\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u0434\u043e\u0432\u0443\u044e \u0431\u0430\u0437\u0443 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430 QEMU \u043f\u0430\u0442\u0447, \u0432 50-80 \u0440\u0430\u0437 \u0441\u043e\u043a\u0440\u0430\u0449\u0430\u044e\u0449\u0438\u0439 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0438 \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 fdmon (file descriptor monitoring) \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 &#171;aio=io_uring&#187; \u0438 \u043d\u0430\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 \u043f\u0440\u043e\u0441\u0442\u043e\u044f (idle). \u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u043f\u0440\u043e\u044f\u0432\u043b\u044f\u043b\u0430\u0441\u044c \u0438\u0437-\u0437\u0430 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0430 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 ppoll() \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 \u0441\u043d\u0430 \u0441 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u043e\u043c 499 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":8,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-161903","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0419\u0435\u043d\u0441 \u042d\u043a\u0441\u0431\u043e (Jens Axboe), \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044c io_uring \u0438 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u043e\u0432 \u0432\u0432\u043e\u0434\u0430\/\u0432\u044b\u0432\u043e\u0434\u0430 CFQ, Deadline \u0438 Noop, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b \u0434\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u0434\u043e\u0432\u0443\u044e \u0431\u0430\u0437\u0443 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430 QEMU \u043f\u0430\u0442\u0447, \u0432 50-80 \u0440\u0430\u0437 \u0441\u043e\u043a\u0440\u0430\u0449\u0430\u044e\u0449\u0438\u0439 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0438 \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 fdmon (file.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Erik Peterson\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/pt\/blog\/news\/razrabotchik-io_uring-vyyavil-v-qemu-problemu-v-50-80-raz-zamedlyavshuyu-fdmon-v-rezhime-prostoya\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"pt_PT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a io_uring \u0432\u044b\u044f\u0432\u0438\u043b \u0432 QEMU \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443, \u0432 50-80 \u0440\u0430\u0437 \u0437\u0430\u043c\u0435\u0434\u043b\u044f\u0432\u0448\u0443\u044e fdmon \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u044f | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0419\u0435\u043d\u0441 \u042d\u043a\u0441\u0431\u043e (Jens Axboe), \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044c io_uring \u0438 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u043e\u0432 \u0432\u0432\u043e\u0434\u0430\/\u0432\u044b\u0432\u043e\u0434\u0430 CFQ, Deadline \u0438 Noop, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b \u0434\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u0434\u043e\u0432\u0443\u044e \u0431\u0430\u0437\u0443 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430 QEMU \u043f\u0430\u0442\u0447, \u0432 50-80 \u0440\u0430\u0437 \u0441\u043e\u043a\u0440\u0430\u0449\u0430\u044e\u0449\u0438\u0439 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0438 \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 fdmon (file.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pt\/blog\/news\/razrabotchik-io_uring-vyyavil-v-qemu-problemu-v-50-80-raz-zamedlyavshuyu-fdmon-v-rezhime-prostoya\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-02-20T15:11:55+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-02-20T15:11:55+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47O desenvolvedor do io_uring identificou um problema no QEMU que desacelerou fdmon em 50-80 vezes no modo ocioso | ProHoster","description":"Jens Axboe, criador do io_uring e dos agendadores de entrada\/sa\u00edda CFQ, Deadline e Noop, prop\u00f4s a inclus\u00e3o no c\u00f3digo base do emulador QEMU de um patch que reduz em 50-80 vezes as lat\u00eancias ao trabalhar com fdmon (file.","canonical_url":"https:\/\/prohoster.info\/pt\/blog\/news\/razrabotchik-io_uring-vyyavil-v-qemu-problemu-v-50-80-raz-zamedlyavshuyu-fdmon-v-rezhime-prostoya","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pt_PT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a io_uring \u0432\u044b\u044f\u0432\u0438\u043b \u0432 QEMU \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443, \u0432 50-80 \u0440\u0430\u0437 \u0437\u0430\u043c\u0435\u0434\u043b\u044f\u0432\u0448\u0443\u044e fdmon \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u044f | ProHoster","og:description":"\u0419\u0435\u043d\u0441 \u042d\u043a\u0441\u0431\u043e (Jens Axboe), \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044c io_uring \u0438 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u043e\u0432 \u0432\u0432\u043e\u0434\u0430\/\u0432\u044b\u0432\u043e\u0434\u0430 CFQ, Deadline \u0438 Noop, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b \u0434\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u0434\u043e\u0432\u0443\u044e \u0431\u0430\u0437\u0443 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430 QEMU \u043f\u0430\u0442\u0447, \u0432 50-80 \u0440\u0430\u0437 \u0441\u043e\u043a\u0440\u0430\u0449\u0430\u044e\u0449\u0438\u0439 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0438 \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 fdmon (file.","og:url":"https:\/\/prohoster.info\/pt\/blog\/news\/razrabotchik-io_uring-vyyavil-v-qemu-problemu-v-50-80-raz-zamedlyavshuyu-fdmon-v-rezhime-prostoya","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2026-02-20T15:11:55+00:00","article:modified_time":"2026-02-20T15:11:55+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"161903","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-02-20 15:12:29","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-02-20 15:11:55","updated":"2026-02-20 15:12:29","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/161903","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/comments?post=161903"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/161903\/revisions"}],"predecessor-version":[{"id":164173,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/161903\/revisions\/164173"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media?parent=161903"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/categories?post=161903"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/tags?post=161903"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}