From nobody Tue Dec 2 02:42:12 2025 Received: from mail-io1-f45.google.com (mail-io1-f45.google.com [209.85.166.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id EAC8D3002C6 for ; Tue, 18 Nov 2025 20:19:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.166.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763497151; cv=none; b=t3zdSarzsniqYiAXp2LOapN3VLHzyl0gUn/ixtrLHmcJSkFW/Kj1CE8Y+z98syeauz+z031W47avUYSNvl9LSfIESCcscvUKvuNA8D+5L0ED2SHpVww1/T55SVBFlCKsn+anT2Nb/g7+rClm1adJFXevbuYVAi8PkkKEdBgQwXg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763497151; c=relaxed/simple; bh=YiavUBFlby9+q7R3jVOye6yVNiX9SzeQZ+DB+RZTe/8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=iagHsrBTlTMuja8VBY0WotoduOLeLH945gPvlrwuWb9pmmksl9gBWY6P3lqcjJZiJpOxLCerHpmgf0waeHM3eVcWL7bUKbMRqg/KFcTikHHlH/VLuNJDFcQTObt5w8JpQg9+/4x84CsUNa/dVzo0/pRsVwnEEGFSOr5U0BJbhKM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=iKW4jfDa; arc=none smtp.client-ip=209.85.166.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="iKW4jfDa" Received: by mail-io1-f45.google.com with SMTP id ca18e2360f4ac-88703c873d5so216686539f.3 for ; Tue, 18 Nov 2025 12:19:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1763497145; x=1764101945; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=LLlQvuuD9MiSXKGka7d4IYEwieMdPmkGOdzcDHTOiMk=; b=iKW4jfDaJowZKfuyuNxHJ4us1Cwfy+9jnmit3sOgYDqRdlKlILwGQNBmgy7vJDLEd/ y/Id8FL8VtuBvth+7BpyXX9vaNms4+xPRG2ubFFA34bdiYyWYt/v79bMAqGEau3172NU 1TpAhpJjc7Kxl0u/5PJk1VQLH9dUPrr/FH3FAVllw4V5YIugHXjJ5/zWmUKDC8hnDJyQ zWtAfDOtn+zsjU2zNej1mFNqb1TZcDpCXN35MjECtJqyT1Xma+xzvENkQU1Ur39tDbZL tLtzywLnxHF+O3hoyhmU2fVcW7v6nX5Lev+hC6mr+tqtNnE4+bIZJmXnM64hq42qpHqj GnEw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763497145; x=1764101945; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=LLlQvuuD9MiSXKGka7d4IYEwieMdPmkGOdzcDHTOiMk=; b=vpSYuAtcH1d+hUysazKepKU+ZTsS3NnWxEn5VVVaAfzXwFOIrHz/ynyNJwGUZgK26z zkyaYmeIfG6RMAzE2yW7oDyUcx/xzfVLq90L3uP9uEQqE/YVv6J35TRNsumQxo/7fKfi cZ0w+jPlfwRR9uQm7TXnGsfy/9BxfpGL4xnHR17nyRv06KZzMX39YwwitAol13PgbWgq zajlIfdyJ2gtG6ptqhukOKf867sFM3xWSE4pymtmeOxe4bIvAh14JD3PjWjjspm8RSjb zXd9e3qzQIyYCs6Q3JV+qFxL20eiZ1HEjNdIJHwCVMDx6idm4yXekWOAbZVbcGJgw9ky t5jw== X-Gm-Message-State: AOJu0YzqwO4V0CFQlIc3GcUBo1drl4Ij6eJtqeQ1UCRaKXXqJgDs9ZVb JcyXx37FWbvhz6galTfjNidpCjGHmEJjntx3akf9tTd2OJozNq1+Wx5lYdco6tfz X-Gm-Gg: ASbGncvWPxhlwGA++55aGl10rKmOhPs6oXA/b6OQWmQ3IqmqyDxY/ZYvpbeU0xHK0j4 adoqk9sMQ7hi4qwIx+OZRyI2zfoavuhUxoBZIwUpEGhCE7JhWGQ0FzPDSzTHwPXkJLhrF60icB/ RJEGFCaGZN5NBt0lRKn3+wIAc+qaklnwLxn6Jbk1RZsEcAXtibu7q9K4jm1kgV5N4LVnxqu5jT7 kaEEjyz4kScq2Ews+jPglgMk5kUzcknhOmmUDSXS5p0ZvcfCgFCseWI2qtrgLdMiuN//Kg4F64Z n5nYab5OEGxDd5pf5bMnb/lvTwc0sfzwxfOJwcxe5IlKx7+KsDDc6ZD1MnkehFmvY9vaJznD0S5 Rz71zyH1zRKzYgr86GAa9UvtOKszsXRQOylBDP3TpPFK5fDopLwHSVsOi5I2U29ZyFot2eEq8tT AvKnaTGMpHgpbXIzt6eXXEHmgo2Mdie8dpm0uqCHPljMlrrlyGcgMShH/GNcg57kfABxs= X-Google-Smtp-Source: AGHT+IEIscdoyaRBlf+VL0JUqG2kMnrPA8EkFzQ/Jz5eax8vm0Cs6+BH6q+0DbWPfuhn3YzO7H5xxQ== X-Received: by 2002:a05:6602:1587:b0:92f:20b8:7e22 with SMTP id ca18e2360f4ac-948e0de1a6bmr2212655939f.18.1763497144913; Tue, 18 Nov 2025 12:19:04 -0800 (PST) Received: from godzilla.raven-morpho.ts.net (c-98-38-17-99.hsd1.co.comcast.net. [98.38.17.99]) by smtp.googlemail.com with ESMTPSA id ca18e2360f4ac-948fd4c273bsm419823939f.18.2025.11.18.12.19.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 18 Nov 2025 12:19:04 -0800 (PST) From: Jim Cromie To: linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, gregkh@linuxfoundation.org, jbaron@akamai.com Cc: ukaszb@chromium.org, louis.chauvet@bootlin.com, Jim Cromie , linux-doc@vger.kernel.org Subject: [PATCH v6 04/31] docs/dyndbg: explain flags parse 1st Date: Tue, 18 Nov 2025 13:18:14 -0700 Message-ID: <20251118201842.1447666-5-jim.cromie@gmail.com> X-Mailer: git-send-email 2.51.1 In-Reply-To: <20251118201842.1447666-1-jim.cromie@gmail.com> References: <20251118201842.1447666-1-jim.cromie@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" When writing queries to >control, flags are parsed 1st, since they are the only required field, and they require specific compositions. So if the flags draw an error (on those specifics), then keyword errors aren't reported. This can be mildly confusing/annoying, so explain it instead. cc: linux-doc@vger.kernel.org Signed-off-by: Jim Cromie Reviewed-by: Louis Chauvet --- Documentation/admin-guide/dynamic-debug-howto.rst | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/Documentation/admin-guide/dynamic-debug-howto.rst b/Documentat= ion/admin-guide/dynamic-debug-howto.rst index 4ac18c0a1d95..63a511f2337b 100644 --- a/Documentation/admin-guide/dynamic-debug-howto.rst +++ b/Documentation/admin-guide/dynamic-debug-howto.rst @@ -109,9 +109,18 @@ The match-spec's select *prdbgs* from the catalog, upo= n which to apply the flags-spec, all constraints are ANDed together. An absent keyword is the same as keyword "*". =20 - -A match specification is a keyword, which selects the attribute of -the callsite to be compared, and a value to compare against. Possible +Note: because the match-spec can be empty, the flags are checked 1st, +then the pairs of keyword values. Flag errs will hide keyword errs: + + bash-5.2# ddcmd mod bar +foo + dyndbg: read 13 bytes from userspace + dyndbg: query 0: "mod bar +foo" mod:* + dyndbg: unknown flag 'o' + dyndbg: flags parse failed + dyndbg: processed 1 queries, with 0 matches, 1 errs + +So a match-spec is a keyword, which selects the attribute of the +callsite to be compared, and a value to compare against. Possible keywords are::: =20 match-spec ::=3D 'func' string | --=20 2.51.1