On Thu, Mar 07, 2024 at 07:49:16PM -0800, Alexei Starovoitov wrote: > On Thu, Mar 7, 2024 at 9:54 AM Alexei Starovoitov > <alexei.starovoitov@xxxxxxxxx> wrote: > > > > On Thu, Mar 7, 2024 at 9:42 AM Miguel Ojeda > > <miguel.ojeda.sandonis@xxxxxxxxx> wrote: > > > > > > Hi arm64/bpf/pci, > > > > > > In today's next-20240307 with a defconfig LLVM=1 I am seeing [1] under > > > QEMU virt, i.e. from > > > https://lore.kernel.org/all/20240305030516.41519-2-alexei.starovoitov@xxxxxxxxx/ > > > applied to the bpf-next tree. > > > > > > Cheers, > > > Miguel > > > > > > [1] > > > > > > [ 0.425177] pci-host-generic 4010000000.pcie: host bridge > > > /pcie@10000000 ranges: > > > [ 0.425886] pci-host-generic 4010000000.pcie: IO > > > 0x003eff0000..0x003effffff -> 0x0000000000 > > > [ 0.426534] pci-host-generic 4010000000.pcie: MEM > > > 0x0010000000..0x003efeffff -> 0x0010000000 > > > [ 0.426764] pci-host-generic 4010000000.pcie: MEM > > > 0x8000000000..0xffffffffff -> 0x8000000000 > > > [ 0.427324] ------------[ cut here ]------------ > > > [ 0.427456] vm_area at addr ffffffffc0800000 is not marked as VM_IOREMAP > > > [ 0.427944] WARNING: CPU: 0 PID: 1 at mm/vmalloc.c:315 > > > ioremap_page_range+0x25c/0x2bc > > > > Great. Thanks for flagging. > > Looks like this check found some misuse of ioremap_page_range. > > > > Note that without marking the address range as VM_IOREMAP > > the vread_iter() will be bulk reading over IO and might > > cause hard hangs and what not. > > pci drivers need to mark their range as VM_IOREMAP. > > That was the reason for the warning. > > > > I'll try to figure out which piece of code missed passing > > VM_IOREMAP into vm_area. > > I'm not familiar with pci, so help is greatly appreciated. > > Ok. I think I figured it out. > Please try the attached patch. I tested the attached patch on Qcom SDM845 based dev board and it fixes the issue. So, Tested-by: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx> On a side note, PCI is the only driver making use of this API. If I'm making such an API change, I would've made sure that the callers are unaffected by the change. - Mani -- மணிவண்ணன் சதாசிவம்