Message ID | 0-v2-318ed5f6983b+198f-smmuv3_tidy_jgg@nvidia.com (mailing list archive) |
---|---|
Headers | show |
Series | Tidy some minor things in the stream table/cd table area | expand |
On Mon, Jun 10, 2024 at 09:31:09PM -0300, Jason Gunthorpe wrote: > Will pointed out that two places referring to the CD/STE struct did not > get the new types. While auditing this code a few more oddities were > noticed. Based on a feedback from Mostafa and Nicolin a few more things > were fixed up too > > - Use types for all the HW structures everywhere even for the L1 > descriptors that are just a single 8 bytes. This helps with clarity of > what everthing is pointing at > - Use indexing helpers for the STE/CD two level calculations > - Use sizeof(struct X) instead of open coded math on constants. The sizeof > naturally follows the type of the related variable in almost all cases > - Remove redundant dma_addr_t's and save some memory > - Remove redundant devm usage > - Use the modern rbtree API > > Parts of this have been sitting in my tree for a while now, it grew a bit > since v1, but nothing is particularly profound here. Enough is merged now > that they can be cleanly based and are seperate from my other series. > > v2: > - Add a patch to add structs for the L1/L2 HW layouts and use their > sizeof and type instead of constants and generic __le64 *. > - Add a patch for L1/L2 indexing helpers for clarity > - Reorder patches > - Redo the union layout in the cfg for both cases > - Fully remove some more defines For the entire series, Tested-by: Nicolin Chen <nicolinc@nvidia.com>
On Mon, 10 Jun 2024 21:31:09 -0300, Jason Gunthorpe wrote: > Will pointed out that two places referring to the CD/STE struct did not > get the new types. While auditing this code a few more oddities were > noticed. Based on a feedback from Mostafa and Nicolin a few more things > were fixed up too > > - Use types for all the HW structures everywhere even for the L1 > descriptors that are just a single 8 bytes. This helps with clarity of > what everthing is pointing at > - Use indexing helpers for the STE/CD two level calculations > - Use sizeof(struct X) instead of open coded math on constants. The sizeof > naturally follows the type of the related variable in almost all cases > - Remove redundant dma_addr_t's and save some memory > - Remove redundant devm usage > - Use the modern rbtree API > > [...] Applied first two to will (for-joerg/arm-smmu/updates), thanks! [01/10] iommu/arm-smmu-v3: Do not zero the strtab twice https://git.kernel.org/will/c/c84c5ab76c9c [02/10] iommu/arm-smmu-v3: Shrink the strtab l1_desc array https://git.kernel.org/will/c/a4d75360f7a6 Cheers,