Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider: - [Low] The centralized DMA-BUF locking conventions documentation was not updated for the new `get_pci_tph` API. --
commit 558f8ccf1c7e2c892ffa9049e917832eaa82ea77 Author: Zhiping Zhang <[email protected]> dma-buf: add optional get_pci_tph() callback This commit introduces an optional get_pci_tph callback in dma_buf_ops and a wrapper function dma_buf_get_pci_tph() to retrieve PCIe TLP Processing Hints. This allows importers to request TPH namespaces that exporters can emit. The wrapper function requires the DMA-buf reservation lock to be held. > diff --git a/drivers/dma-buf/dma-buf.c b/drivers/dma-buf/dma-buf.c > index d504c636dc294..7a4c9b0d5dab4 100644 > --- a/drivers/dma-buf/dma-buf.c > +++ b/drivers/dma-buf/dma-buf.c > @@ -1144,6 +1144,31 @@ void dma_buf_unpin(struct dma_buf_attachment *attach) > } > EXPORT_SYMBOL_NS_GPL(dma_buf_unpin, "DMA_BUF"); > > +/** > + * dma_buf_get_pci_tph - Retrieve PCIe TLP Processing Hint (TPH) metadata > + * @dmabuf: DMA buffer to query > + * @extended: false for 8-bit ST, true for 16-bit Extended ST > + * @steering_tag: returns the raw steering tag for the requested namespace > + * @ph: returns the TPH processing hint > + * > + * Wrapper for the optional &dma_buf_ops.get_pci_tph callback. > + * > + * Must be called with &dma_buf.resv held. Returns -EOPNOTSUPP if the > + * exporter does not implement the callback or has no metadata for the > + * requested namespace. > + */ > +int dma_buf_get_pci_tph(struct dma_buf *dmabuf, bool extended, > + u16 *steering_tag, u8 *ph) > +{ > + dma_resv_assert_held(dmabuf->resv); [Severity: Low] Since this wrapper and the new get_pci_tph() callback require the dma-buf reservation lock to be held, should they be added to the centralized "DOC: locking convention" list in drivers/dma-buf/dma-buf.c? The documentation under "Convention for importers" and "Convention for exporters" lists other functions that require this lock, but the new get_pci_tph API was omitted. > + > + if (!dmabuf->ops->get_pci_tph) > + return -EOPNOTSUPP; > + > + return dmabuf->ops->get_pci_tph(dmabuf, extended, steering_tag, ph); > +} -- Sashiko AI review ยท https://sashiko.dev/#/patchset/[email protected]?part=2
