Received: by 2002:a25:e74b:0:0:0:0:0 with SMTP id e72csp390051ybh; Wed, 15 Jul 2020 04:53:39 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyGZuZf/nhzJcqxkrD/Cw6FQKEnPkJvp/bg21zKeT/zEL65hdCwrvj0pP3nVi4HDJaPV8f3 X-Received: by 2002:a50:b026:: with SMTP id i35mr9257828edd.158.1594814019624; Wed, 15 Jul 2020 04:53:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1594814019; cv=none; d=google.com; s=arc-20160816; b=n3v59NcpNJf8pmATA/Uta/zuOMwL0orOoDBh6R1+bGpl1xqmPTankMlymw4/b4G/w+ 1MEsYpmgkQ/FZb87jMFerXwiyLsI1DYe7K7sKcXPs6uC4fEAw/1MlFFB+KT5+A/VHjzH DM0lbMplDX9Ru/rFzn5hwSOxm9cSvQgerxmwSA/B2Ajni6v/++7JHsSnRgExg/eD93AV s4GiJq/XJpHLgLl91SgK3S5LZJ0jLZ53zbC7QI08FLXh8kv9EY404X0OIofmq3+ATUuv eV0G86Fk/gKGsqNfqfCJvM2gEEjyr6v1V+KSzctIbFBX/5sHMjfgF6Aps04xgLlyuHk/ it8A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :mime-version:dkim-signature; bh=GNZTlebsq0eWIwEljX2xeBdZEHRs2k6AtH87hm9Zwgg=; b=HiM0604pGPGYquEskEuFpsGOw1EpVOCZZ/mIl1m7bN5RqQXVB23hz6SOaF7GGp0kkG aA1ahjY5LFe8kOTj2tPV+KOA75eeRmQQSiVSdKwoTrYi8JRU92gOr1DTywKejTqqeRvK SUvL76OzZlWJRTLMIBiMl3Y+AzsJaRV8AdxCkUE3iZDFsZxVPGcpyPndnNTuGdThY2Ki otxtaRMO7v67wPlWYZ+kBZNpHUN0mdby7ympVgm1AolebtrjXLzOwQosNH0s4Z1yFOo8 M3RTJ5szOiHNzVnuFHPgd/9KfRn+MBw4JfVq9uBnYrYIdrxe0Zw+BNdJUDFuduiaXD2Z m8JQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=temperror (no key for signature) header.i=@szeredi.hu header.s=google header.b=JZLRSBhW; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id bx8si1066725edb.170.2020.07.15.04.53.16; Wed, 15 Jul 2020 04:53:39 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=temperror (no key for signature) header.i=@szeredi.hu header.s=google header.b=JZLRSBhW; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727049AbgGOLMZ (ORCPT + 99 others); Wed, 15 Jul 2020 07:12:25 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49242 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728095AbgGOLMW (ORCPT ); Wed, 15 Jul 2020 07:12:22 -0400 Received: from mail-ej1-x632.google.com (mail-ej1-x632.google.com [IPv6:2a00:1450:4864:20::632]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7C786C08C5DB for ; Wed, 15 Jul 2020 04:12:22 -0700 (PDT) Received: by mail-ej1-x632.google.com with SMTP id a1so1717139ejg.12 for ; Wed, 15 Jul 2020 04:12:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=szeredi.hu; s=google; h=mime-version:from:date:message-id:subject:to:cc; bh=GNZTlebsq0eWIwEljX2xeBdZEHRs2k6AtH87hm9Zwgg=; b=JZLRSBhWm0oHxV3fok6cxthIXvhjAenz53D8fezRJjLbsEGzev4V175VrT5tTOPQ0L XAnaq/Ov0CMEsnpV/F+V8rK7u1bIHghoUkChEQwbMY9tpBz4kn9ZGAYdf+rjrsnXqUDy +MzGC5vqoZD/qK6UbJ4A75mLpvNLy6Zar3ArQ= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to:cc; bh=GNZTlebsq0eWIwEljX2xeBdZEHRs2k6AtH87hm9Zwgg=; b=Xl7r89TCiN1NPVwdOG0nPRmZ2rJmKZqQrGaYA6d8pVx+wIzTPoX4bCpPCyzeT3vgOz tXkOto8qWhpkYW+BSJNEP1xPxCgQfejCIAsuu+cNCc6l17/NHl35r4++86cSgeR7f5Bp rVefNLaP7BfNqR/N4ozNVU/oSt6tJ+FQG2l8FDE1z4inILA9mXpkiNtgUc0MsGRR/tmC 7+QQbWy3UePi7ngcwpABt1pv5F+ftLiqO5ZLVb7AAVQwbowb9olMAAQKWYuE0en7JB8h nPHKGiZa8Zprh4U7+j26+eLG6G298cBspKhzPEj+EzDvZjBhlezGKvg0xRqVy3rAzaXo joDw== X-Gm-Message-State: AOAM5313U0w4Vfm7pmfeNRt57qQv6Fhaawfk8X7f9lqaAD+661NbZ7RG tl7Ho8dHF8pC9V7oZKAr7eF46U3ZMHlFvIvmWT1+xg== X-Received: by 2002:a17:906:b74e:: with SMTP id fx14mr8403146ejb.202.1594811541019; Wed, 15 Jul 2020 04:12:21 -0700 (PDT) MIME-Version: 1.0 From: Miklos Szeredi Date: Wed, 15 Jul 2020 13:12:09 +0200 Message-ID: Subject: strace of io_uring events? To: strace-devel@lists.strace.io, io-uring@vger.kernel.org Cc: Pavel Begunkov , Linux API , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, This thread is to discuss the possibility of stracing requests submitted through io_uring. I'm not directly involved in io_uring development, so I'm posting this out of interest in using strace on processes utilizing io_uring. io_uring gives the developer a way to bypass the syscall interface, which results in loss of information when tracing. This is a strace fragment on "io_uring-cp" from liburing: io_uring_enter(5, 40, 0, 0, NULL, 8) = 40 io_uring_enter(5, 1, 0, 0, NULL, 8) = 1 io_uring_enter(5, 1, 0, 0, NULL, 8) = 1 ... What really happens are read + write requests. Without that information the strace output is mostly useless. This loss of information is not new, e.g. calls through the vdso or futext fast paths are also invisible to strace. But losing filesystem I/O calls are a major blow, imo. What do people think? From what I can tell, listing the submitted requests on io_uring_enter() would not be hard. Request completion is asynchronous, however, and may not require io_uring_enter() syscall. Am I correct? Is there some existing tracing infrastructure that strace could use to get async completion events? Should we be introducing one? Thanks, Miklos