Hi Fenghua, The PASID width in KFD is currently limited to 16 bits. I believe this reflects what our hardware can handle. KFD will never allocate a PASID bigger than 16 bits. That said, I'm OK with changing this field in the kfd_process structure to unsigned int. Generally, I find uint16_t in structures not very useful except in tightly packed structures such as packet formats or ioctl arguments. Regards, Felix Am 2020-05-22 um 3:25 p.m. schrieb Fenghua Yu: > Hi, Yong, > > In commit: 6027b1bf6071fc61a5aa11b9922a2e0e91bff1ea > drm/amdkfd: Use hex print format for pasid > > pasid's type was change to "uint16_t" from "unsigned int" in > struct kfd_process. > > But, pasid is a 20-bit value according to PCIe spec and other places > in amdkfd (plus other iommu code) define pasid as "unsigned int". > If defined as uint16_t, pasid will overflow if its value is bigger than 16-bit. > > Did I miss anything? Should we change pasid's type back to "unsigned int"? > > [a little background: pasid is defined as various types including "int", > "unsigned int", "u32" in iommu. I'm changing pasid's types to "unsigned int" > so that the types are consistent in iommu] > > Thanks. > > -Fenghua _______________________________________________ amd-gfx mailing list amd-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/amd-gfx