Quoting Daniel Latypov (2022-07-11 09:27:13) > CONFIG_UML_PCI_OVER_VIRTIO=y is needed to enable CONFIG_PCI=y on UML. > However, this causes test failures when running the clk tests, i.e. > $ ./tools/testing/kunit/kunit.py run --kunitconfig=drivers/clk > > A snippet of the particular error is: > > ok 1 - clk_gate_test_parent_rate > > ------------[ cut here ]------------ > > WARNING: CPU: 0 PID: 45 at lib/logic_iomem.c:141 __raw_readl+0x9f/0xd0 > > This is triggered by this cast in the test: > 143 ctx->fake_mem = (void __force __iomem *)&ctx->fake_reg; > this seems to work except when logic iomem is enabled, i.e. > CONFIG_INDIRECT_IOMEM=y. > > As a short-term fix, explicitly disable CONFIG_UML_PCI_OVER_VIRTIO in > drivers/clk/.kunitconfig so we can enable it for everyone else by > default in kunit.py. > > The long-term fix probably requires something more complicated, like > #ifdef CONFIG_INDIRECT_IOMEM > logic_iomem_add_region(...); > #endif If this is how platform IO is mocked then yes we'll have to implement that. > > Signed-off-by: Daniel Latypov <dlatypov@xxxxxxxxxx> > Reported-by: Maxime Ripard <maxime@xxxxxxxxxx> > Tested-by: Maxime Ripard <maxime@xxxxxxxxxx> > --- > Note: this targeting the -kselftest kunit branch. > There's a commit that triggers this by enabling logic iomem by default > [1] and there's also a commit that lets disable it via kunitconfig file > [2], which this fix relies on. > > [1] https://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest.git/commit/?h=kunit&id=6fc3a8636a7b0f7dbd6d0a4e450e765dc17518d4 > [2] https://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest.git/commit/?h=kunit&id=8a7c6f859a20ca36a9e3ce71662de697898c9ef5 > --- Acked-by: Stephen Boyd <sboyd@xxxxxxxxxx>