From: sashiko-bot@kernel.org
To: "Jiri Pirko" <jiri@resnulli.us>
Cc: kvm@vger.kernel.org
Subject: Re: [PATCH RFC 13/20] Documentation: ctlv: Describe how to write a family
Date: Thu, 15 Oct 2026 15:20:32 +0000 [thread overview]
Message-ID: <sashiko-outbox-173053@kernel.org> (raw)
In-Reply-To: <20261015145053.3664509-14-jiri@resnulli.us>
Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:
- [Low] docs: Incorrect function ctlv_op_emit() in ctlv.rst example
- [Low] docs: Incorrect generated family descriptor name in ctlv.rst example
--
commit 44307a0d2c96bec6fed10bf4f0610aa2e3baf41c
Author: Jiri Pirko <jiri@resnulli.us>
Documentation: ctlv: Describe how to write a family
Describe the YAML language, generated family descriptors, lifecycle,
operations, events, blobs, inheritance and compatible extension rules.
> diff --git a/Documentation/driver-api/ctlv.rst b/Documentation/driver-api/ctlv.rst
> new file mode 100644
> index 0000000000000..461e2977a4839
> --- /dev/null
> +++ b/Documentation/driver-api/ctlv.rst
[ ... ]
> + struct ctlv_example_vendor_init_info info = {
> + .dev = dev,
> + };
> + struct ctlv_device *ctlvdev;
> +
> + ctlvdev = ctlv_create(dev, &ctlv_example_vendor_ctlv_family, &info);
[Severity: Low]
Does this code use the correct generated family descriptor name? Based on the
YAML family name ctlv-example-vendor, the expected generated C struct name
would be ctlv_example_vendor_family. It seems the _ctlv part is improperly
inserted here.
> + if (IS_ERR(ctlvdev))
[ ... ]
> + if (IS_ERR(ctx)) {
> + if (PTR_ERR(ctx) == -ENOMEM)
> + ctlv_event_lost(ctlvdev,
> + CTLV_EXAMPLE_OP_THING_HAPPENED);
> + return;
> + }
> + ctlv_example_generation_put(event, priv->generation);
> + ctlv_op_emit(ctx);
[Severity: Low]
Is ctlv_op_emit() the correct API call here? Earlier in the documentation,
event emission is shown using ctlv_event_emit(). Using an incorrect API
name here could lead to compile-time errors for driver authors attempting to
follow the guide.
> +
> +ctlv_event_lost() allocates nothing and does not sleep. For each subscribed
> +file description it advances the event sequence and aggregates the loss into
> +the preallocated EVENT_OVERFLOW record. The caller keeps the device alive
> +and serializes the report with normal emission of that event. Like event
> +emission, it is not called from interrupt context. It is only for an event that
> +actually occurred but could not be constructed: do not call it for an aborted
> +event or for copy-allocation and full-queue drops already accounted for by
> +ctlv_op_emit(). Reports after event shutdown or the terminal
[Severity: Low]
Should this text reference ctlv_event_emit() instead of the non-existent
ctlv_op_emit() function?
> +DEVICE_REMOVED record are ignored.
--
Sashiko AI review · https://sashiko.dev/#/patchset/20261015145053.3664509-1-jiri@resnulli.us?part=13
next prev parent reply other threads:[~2026-10-15 15:20 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-15 14:50 [PATCH RFC 00/20] attestation: Add a common subsystem and TDX support Jiri Pirko
2026-10-15 14:50 ` [PATCH RFC 01/20] ctlv: Add the schema language and generator Jiri Pirko
2026-10-15 14:58 ` sashiko-bot
2026-10-15 14:50 ` [PATCH RFC 02/20] ctlv: Add the UAPI wire format and family API Jiri Pirko
2026-10-15 14:50 ` [PATCH RFC 03/20] ctlv: Add the root family specification and generated files Jiri Pirko
2026-10-15 14:50 ` [PATCH RFC 04/20] Documentation: ctlv: Add userspace ABI Jiri Pirko
2026-10-15 14:50 ` [PATCH RFC 05/20] ctlv: Prepare message input handling Jiri Pirko
2026-10-15 15:06 ` sashiko-bot
2026-10-15 14:50 ` [PATCH RFC 06/20] ctlv: Prepare blob descriptor validation Jiri Pirko
2026-10-15 14:50 ` [PATCH RFC 07/20] ctlv: Prepare schema validation Jiri Pirko
2026-10-15 15:14 ` sashiko-bot
2026-10-15 14:50 ` [PATCH RFC 08/20] ctlv: Prepare message output handling Jiri Pirko
2026-10-15 14:50 ` [PATCH RFC 09/20] ctlv: Prepare VA blob handling Jiri Pirko
2026-10-15 15:14 ` sashiko-bot
2026-10-15 14:50 ` [PATCH RFC 10/20] ctlv: Prepare event queue support Jiri Pirko
2026-10-15 15:22 ` sashiko-bot
2026-10-15 14:50 ` [PATCH RFC 11/20] ctlv: Prepare runtime introspection Jiri Pirko
2026-10-15 14:50 ` [PATCH RFC 12/20] ctlv: Add device and operation dispatch Jiri Pirko
2026-10-15 15:28 ` sashiko-bot
2026-10-15 14:50 ` [PATCH RFC 13/20] Documentation: ctlv: Describe how to write a family Jiri Pirko
2026-10-15 15:20 ` sashiko-bot [this message]
2026-10-15 14:50 ` [PATCH RFC 14/20] attestation: Add the base family specification and generated files Jiri Pirko
2026-10-15 14:50 ` [PATCH RFC 15/20] attestation: Prepare provider and instance core Jiri Pirko
2026-10-15 15:30 ` sashiko-bot
2026-10-15 14:50 ` [PATCH RFC 16/20] attestation: Prepare measurement register journal Jiri Pirko
2026-10-15 14:50 ` [PATCH RFC 17/20] attestation: Add CTLV operation handling Jiri Pirko
2026-10-15 15:33 ` sashiko-bot
2026-10-15 14:50 ` [PATCH RFC 18/20] tdx-guest: Expose the native attestation service API Jiri Pirko
2026-10-15 14:50 ` [PATCH RFC 19/20] attestation: Add the TDX family specification and generated files Jiri Pirko
2026-10-15 14:50 ` [PATCH RFC 20/20] attestation: Add the TDX family implementation Jiri Pirko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=sashiko-outbox-173053@kernel.org \
--to=sashiko-bot@kernel.org \
--cc=jiri@resnulli.us \
--cc=kvm@vger.kernel.org \
--cc=sashiko-reviews@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox