Re: Help with atomic fallback

From: Jason Gunthorpe
Date: Tue Dec 03 2024 - 09:50:20 EST


On Tue, Dec 03, 2024 at 02:40:15PM +0000, Mark Rutland wrote:
> > Which expands to:
> >
> > old = ({ typeof(ptep) __ai_ptr = (ptep); instrument_atomic_read_write(__ai_ptr, sizeof(*__ai_ptr)); raw_cmpxchg64_relaxed_not_implemented(); });
> >
> > And no compiler error. Presumably it doesn't link, but my compiler
> > ICE's before it gets that far.
>
> I don't think that "my compiler ICE's" implies "compiles OK".

Well, it ICE's later. I'm using the 0-day instructions with
make.cross

during RTL pass: mach
../drivers/iommu/of_iommu.c: In function 'of_iommu_configure':
../drivers/iommu/of_iommu.c:163:1: internal compiler error: in arc_ifcvt, at config/arc/arc.cc:9703
163 | }
| ^

> When building io-pgtable-arm.c for ARC (with your tree!) I see the same error:

Okay, I think I see it too, it got lost in all the other noise :\

Jason