Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp1493797pxb; Thu, 4 Mar 2021 12:50:06 -0800 (PST) X-Google-Smtp-Source: ABdhPJyc2IgQ2/WZ5qeT/O+uH+zo6UmPOrRj5Z33cXcAPfav3CnqRkvyNL8kZxylAb8onNYuzMgy X-Received: by 2002:a17:906:b20b:: with SMTP id p11mr6432546ejz.0.1614891006637; Thu, 04 Mar 2021 12:50:06 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1614891006; cv=none; d=google.com; s=arc-20160816; b=vGxd43v0yDQ7PUEH1AMMlXwmjq1NoyWLX3v6wA2NEz5kJmpJ2GBj/hAnAttwbAQh5U l9fFAu97h2qZdKtAdiTBEAwNlmbKtq8XnBW9//hIphW4X70y1V8ydCu1pPFQu8N7qnAe VoT4mccKN81HEUNKcSX4s5LLdXXv8oeI4TBhi7jsY5fvGbbWcJaF5mpIHneR+sN2Jvs4 0zyhVp94njQ51CE8R+mgL7IzcelwzUWjX3YhXhzEYwaGYqGm1HiFBybky86wmnjT/PfF V/8GUMDKTSgVmYRzrVy0LXZkhviR/IHZfF6yrdSTAYe9EDgUrx/jel+GsLcyUDh9e/f6 5Z0g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:to:in-reply-to:cc:references:message-id:date :subject:mime-version:from:content-transfer-encoding:dkim-signature; bh=s3c8ka2NxmqUACAecVla9DLrhMUmoHZHgqpBk3nSwE4=; b=OqLWzCDgpD3e7BT038UpcI5raNSjeyUEBGxeoWQGY30fuYLywJU84OyT38atFcDeMb giaeF0Xi0ERA5C4gDvnAdYcWMfglmrUZIbVzNukcWtkTV7FHQcd+OAgSmgEhwzo5qV6v GraY/3C+xDWJP4sAynR+ltGcWCidPnv8kNiXOwCvZrD03YEzMH1Rv1DOSJgg8RNf/WIg B46uVK3TyPRBL5ciOIejC8JWP4un6nFzvOLOrMas14T/sT8vOhFj9dpIfcl6M3wpYL0o Q38Fqvftk1ErRI1M0nEvwRIhkla1pp8zX7UIpWyhGaMiSCmFJrkjq89J3UT+fdWUJYes JCIg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amacapital-net.20150623.gappssmtp.com header.s=20150623 header.b=ey6P3q0L; 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 r18si488527edi.229.2021.03.04.12.49.43; Thu, 04 Mar 2021 12:50:06 -0800 (PST) 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=pass header.i=@amacapital-net.20150623.gappssmtp.com header.s=20150623 header.b=ey6P3q0L; 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 S244890AbhCCLVG (ORCPT + 99 others); Wed, 3 Mar 2021 06:21:06 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42702 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239697AbhCCBrQ (ORCPT ); Tue, 2 Mar 2021 20:47:16 -0500 Received: from mail-pl1-x635.google.com (mail-pl1-x635.google.com [IPv6:2607:f8b0:4864:20::635]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2E9F1C06178A for ; Tue, 2 Mar 2021 17:46:34 -0800 (PST) Received: by mail-pl1-x635.google.com with SMTP id s7so5946378plg.5 for ; Tue, 02 Mar 2021 17:46:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amacapital-net.20150623.gappssmtp.com; s=20150623; h=content-transfer-encoding:from:mime-version:subject:date:message-id :references:cc:in-reply-to:to; bh=s3c8ka2NxmqUACAecVla9DLrhMUmoHZHgqpBk3nSwE4=; b=ey6P3q0LbP8aXSAgr0U4Q4rU9RpbW5A6RQswB3UUyw0iAk3a3WCLPnOu8ZV5MrM85X 6Aj9ILxW0xe3pKs86YYWAVkiUE830LaKaCfRY8L2VU698rF397jifaJzmqNssqfNEzEw HC/cMeh1HqWwJ1xwnJzsElT3O6o7IOFq3e4Wd2vC41CdQOtCcOmKsunjPngKlPldfeH5 PHrpby8xcJe91t7e1s1nhNpLOON2LXZYrplFGVyE6WEIwjyrOzsP5tag5BrAxSYtoOob cXL6xngPB3D8tyk/1H1yy/L/gxq0uTMyY19QlL9oWjYdq8H2iayOnVfGdjaAY4D96sVM ishQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:content-transfer-encoding:from:mime-version :subject:date:message-id:references:cc:in-reply-to:to; bh=s3c8ka2NxmqUACAecVla9DLrhMUmoHZHgqpBk3nSwE4=; b=o1XZSYZJ7l5SLb/HW0c5cTJ0tcdKrEqpTkeyuZkBcb8hEj5bOk1vGkEDsCzwKredQT +bUR+D2TMtyyiqC2mRjZjdFUcIVOzwrenCTpM6+enIqZ0DGK84tFVGu3tBg+KjyHJ30F 6zTcs6dIb4Gb0ya6zhQ0OUDXpwB8yyfqsq1/ajIQD4jiq8oOiCMZTTyhp3lI/IcU+hbu OhLr1L/mxMP23uaWFDuiJdlNV8FtmafRgjNZuGKnA58OmmNp3DzupurcesaplP9KOBJK lTOdMflysiywG5S/pVJPBaxUVWM9lw4jSp3OpNaC5D7tC5yRKWXbMQbMRmVbEwSoDzqS qdNQ== X-Gm-Message-State: AOAM533umnbhJnr9s53C71+lwatBXo44G86rIMOMdWcndwbCoG/9JECu NHIx1hKJeCq2tMN9swY+ygAMXQ== X-Received: by 2002:a17:90a:cb0a:: with SMTP id z10mr2962028pjt.170.1614735993594; Tue, 02 Mar 2021 17:46:33 -0800 (PST) Received: from ?IPv6:2601:646:c200:1ef2:55b7:4147:bab7:e0dc? ([2601:646:c200:1ef2:55b7:4147:bab7:e0dc]) by smtp.gmail.com with ESMTPSA id j11sm4871155pjb.11.2021.03.02.17.46.32 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 02 Mar 2021 17:46:33 -0800 (PST) Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable From: Andy Lutomirski Mime-Version: 1.0 (1.0) Subject: Re: Why do kprobes and uprobes singlestep? Date: Tue, 2 Mar 2021 17:46:32 -0800 Message-Id: <968E85AE-75B8-42D7-844A-0D61B32063B3@amacapital.net> References: Cc: Andy Lutomirski , bpf , Oleg Nesterov , Masami Hiramatsu , Peter Zijlstra , LKML , Anil S Keshavamurthy , "David S. Miller" , X86 ML , Andrew Cooper In-Reply-To: To: Alexei Starovoitov X-Mailer: iPhone Mail (18D52) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org > On Mar 2, 2021, at 5:22 PM, Alexei Starovoitov wrote: >=20 > =EF=BB=BFOn Tue, Mar 2, 2021 at 1:02 PM Andy Lutomirski wrote: >>=20 >>=20 >>>> On Mar 2, 2021, at 12:24 PM, Alexei Starovoitov wrote: >>>=20 >>> =EF=BB=BFOn Tue, Mar 2, 2021 at 10:38 AM Andy Lutomirski wrote: >>>>=20 >>>> Is there something like a uprobe test suite? How maintained / >>>> actively used is uprobe? >>>=20 >>> uprobe+bpf is heavily used in production. >>> selftests/bpf has only one test for it though. >>>=20 >>> Why are you asking? >>=20 >> Because the integration with the x86 entry code is a mess, and I want to k= now whether to mark it BROKEN or how to make sure the any cleanups actually w= ork. >=20 > Any test case to repro the issue you found? > Is it a bug or just messy code? Just messy code. > Nowadays a good chunk of popular applications (python, mysql, etc) has > USDTs in them. > Issues reported with bcc: > https://github.com/iovisor/bcc/issues?q=3Dis%3Aissue+USDT > Similar thing with bpftrace. > Both standard USDT and semaphore based are used in the wild. > uprobe for containers has been a long standing feature request. > If you can improve uprobe performance that would be awesome. > That's another thing that people report often. We optimized it a bit. > More can be done. Wait... USDT is much easier to implement well. Are we talking just USDT or a= re we talking about general uprobes in which almost any instruction can get p= robed? If the only users that care about uprobes are doing USDT, we could v= astly simplify the implementation and probably make it faster, too.=