On Tue, Sep 17, 2024 at 09:31:00AM -0500, Wei Huang wrote: > > > On 9/17/24 02:32, Simon Horman wrote: > > On Mon, Sep 16, 2024 at 03:51:00PM -0500, Wei Huang wrote: > ... > >> + val = readl(vec_ctrl); > >> + mask = PCI_MSIX_ENTRY_CTRL_ST_LOWER | PCI_MSIX_ENTRY_CTRL_ST_UPPER; > >> + val &= ~mask; > >> + val |= FIELD_PREP(mask, (u32)tag); > > > > Hi Wei Huang, > > > > Unfortunately clang-18 (x86_64, allmodconfig, W=1, when applied to net-next) > > complains about this. I think it is because it expects FIELD_PREP to be > > used with a mask that is a built-in constant. > > I thought I fixed it, but apparently not enough for clang-18. I will > address this problem, along with other comments from you and Bjorn (if any). > > BTW there is another code in drivers/gpu/drm/ using a similar approach. Thanks, I will run some checks over drivers/gpu/drm/ and let you know if they find anything.