On 3/15/23 2:38 PM, Jens Axboe wrote: > On 3/15/23 2:07?PM, Helge Deller wrote: >> On 3/15/23 21:03, Helge Deller wrote: >>> Hi Jens, >>> >>> Thanks for doing those fixes! >>> >>> On 3/14/23 18:16, Jens Axboe wrote: >>>> One issue that became apparent when running io_uring code on parisc is >>>> that for data shared between the application and the kernel, we must >>>> ensure that it's placed correctly to avoid aliasing issues that render >>>> it useless. >>>> >>>> The first patch in this series is from Helge, and ensures that the >>>> SQ/CQ rings are mapped appropriately. This makes io_uring actually work >>>> there. >>>> >>>> Patches 2..4 are prep patches for patch 5, which adds a variant of >>>> ring mapped provided buffers that have the kernel allocate the memory >>>> for them and the application mmap() it. This brings these mapped >>>> buffers in line with how the SQ/CQ rings are managed too. >>>> >>>> I'm not fully sure if this ONLY impacts archs that set SHM_COLOUR, >>>> of which there is only parisc, or if SHMLBA setting archs (of which >>>> there are others) are impact to any degree as well... >>> >>> It would be interesting to find out. I'd assume that other arches, >>> e.g. sparc, might have similiar issues. >>> Have you tested your patches on other arches as well? >> >> By the way, I've now tested this series on current git head on an >> older parisc box (with PA8700 / PCX-W2 CPU). >> >> Results of liburing testsuite: >> Tests timed out (1): <send-zerocopy.t> - (may not be a failure) >> Tests failed (5): <buf-ring.t> <file-verify.t> <poll-race-mshot.t> <ringbuf-read.t> <send_recvmsg.t> If you update your liburing git copy, switch to the ring-buf-alloc branch, then all of the above should work: axboe@c8000 ~/g/liburing (ring-buf-alloc)> test/buf-ring.t axboe@c8000 ~/g/liburing (ring-buf-alloc)> test/send_recvmsg.t axboe@c8000 ~/g/liburing (ring-buf-alloc)> test/ringbuf-read.t axboe@c8000 ~/g/liburing (ring-buf-alloc)> test/poll-race-mshot.t axboe@c8000 ~/g/liburing (ring-buf-alloc)> git describe liburing-2.3-245-g8534193 -- Jens Axboe