From: "Michael S. Tsirkin" <mst-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: Jean-Philippe Brucker
<jean-philippe.brucker-5wv7dgnIgG8@public.gmane.org>
Cc: "kvm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<kvm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
"jasowang-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org"
<jasowang-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
Will Deacon <Will.Deacon-5wv7dgnIgG8@public.gmane.org>,
"virtualization-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org"
<virtualization-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org>,
"tnowicki-M3mlKVOIwJVv6pq1l3V1OdBPR1lH4CV8@public.gmane.org"
<tnowicki-M3mlKVOIwJVv6pq1l3V1OdBPR1lH4CV8@public.gmane.org>,
"jintack-eQaUEPhvms7ENvBUuze7eA@public.gmane.org"
<jintack-eQaUEPhvms7ENvBUuze7eA@public.gmane.org>,
"eric.auger.pro-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org"
<eric.auger.pro-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
"virtio-dev-sDuHXQ4OtrM4h7I2RyI4rWD2FQJk+8+b@public.gmane.org"
<virtio-dev-sDuHXQ4OtrM4h7I2RyI4rWD2FQJk+8+b@public.gmane.org>,
"jayachandran.nair-YGCgFSpz5w/QT0dZR+AlfA@public.gmane.org"
<jayachandran.nair-YGCgFSpz5w/QT0dZR+AlfA@public.gmane.org>,
kbuild test robot <lkp-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>,
"kvmarm-FPEHb7Xf0XXUo1n7N8X6UoWGPAHP3yOg@public.gmane.org"
<kvmarm-FPEHb7Xf0XXUo1n7N8X6UoWGPAHP3yOg@public.gmane.org>,
Marc Zyngier <Marc.Zyngier-5wv7dgnIgG8@public.gmane.org>,
"iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org"
<iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org>,
"kbuild-all-JC7UmRfGjtg@public.gmane.org"
<kbuild-all-JC7UmRfGjtg@public.gmane.org>
Subject: Re: [PATCH 1/4] iommu: Add virtio-iommu driver
Date: Tue, 27 Feb 2018 16:47:22 +0200 [thread overview]
Message-ID: <20180227164510-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <e5ffc52f-4510-f757-aa83-2a99af3ae06b-5wv7dgnIgG8@public.gmane.org>
On Thu, Feb 22, 2018 at 11:04:30AM +0000, Jean-Philippe Brucker wrote:
> On 21/02/18 20:12, kbuild test robot wrote:
> [...]
> > config: arm64-allmodconfig (attached as .config)
> [...]
> > aarch64-linux-gnu-ld: arch/arm64/kernel/head.o: relocation R_AARCH64_ABS32 against `_kernel_offset_le_lo32' can not be used when making a shared object
> > arch/arm64/kernel/head.o: In function `kimage_vaddr':
> > (.idmap.text+0x0): dangerous relocation: unsupported relocation
>
> Is this related?
>
> > arch/arm64/kernel/head.o: In function `__primary_switch':
> > (.idmap.text+0x340): dangerous relocation: unsupported relocation
> > (.idmap.text+0x348): dangerous relocation: unsupported relocation
> > drivers/iommu/virtio-iommu.o: In function `viommu_probe':
> > virtio-iommu.c:(.text+0xbdc): undefined reference to `virtio_check_driver_offered_feature'
> > virtio-iommu.c:(.text+0xcfc): undefined reference to `virtio_check_driver_offered_feature'
> > virtio-iommu.c:(.text+0xe10): undefined reference to `virtio_check_driver_offered_feature'
> > drivers/iommu/virtio-iommu.o: In function `viommu_send_reqs_sync':
> > virtio-iommu.c:(.text+0x130c): undefined reference to `virtqueue_add_sgs'
> > virtio-iommu.c:(.text+0x1398): undefined reference to `virtqueue_kick'
> > virtio-iommu.c:(.text+0x14d4): undefined reference to `virtqueue_get_buf'
> > drivers/iommu/virtio-iommu.o: In function `virtio_iommu_drv_init':
> > virtio-iommu.c:(.init.text+0x1c): undefined reference to `register_virtio_driver'
> > drivers/iommu/virtio-iommu.o: In function `virtio_iommu_drv_exit':
> >>> virtio-iommu.c:(.exit.text+0x14): undefined reference to `unregister_virtio_driver'
>
> Right. At the moment CONFIG_VIRTIO_IOMMU is a bool instead of tristate,
> because the IOMMU subsystem isn't entirely ready to have IOMMU drivers
> built as modules. In addition to exporting symbols it would also needs to
> hold off probing endpoints behind the IOMMU until the IOMMU driver is
> loaded. At the moment (I think) it gives up once userspace is reached (see
> of_iommu_driver_present).
>
> The above report is due to VIRTIO=m and VIRTIO_IOMMU=y. To solve it we could:
>
> a) Allow VIRTIO_IOMMU to be built as module by exporting a dozen IOMMU
> symbols. It would be a lie. The driver wouldn't be usable because of the
> probe issue discussed above, but it would build.
>
> b) Actually make any IOMMU driver work as module. Whilst it would
> certainly be a nice feature, it's a bigger problem and I don't think it
> has its place in this series.
>
> c) Make VIRTIO_IOMMU depend on VIRTIO_MMIO=y instead of VIRTIO_MMIO, which
> I think is the sanest for now (and does work), even though distro kernels
> probably all have VIRTIO=m.
>
> I prefer doing c) now and experiment with b) once I got some time.
>
> Thanks,
> Jean
It kind of means it's a toy for now though. So fine as long
as it's out of tree.
--
MST
next prev parent reply other threads:[~2018-02-27 14:47 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-14 14:53 [PATCH 0/4] Add virtio-iommu driver Jean-Philippe Brucker
2018-02-14 14:53 ` [PATCH 1/4] iommu: " Jean-Philippe Brucker
[not found] ` <20180214145340.1223-2-jean-philippe.brucker-5wv7dgnIgG8@public.gmane.org>
2018-02-19 12:23 ` Tomasz Nowicki
2018-02-20 11:30 ` Jean-Philippe Brucker
2018-02-21 20:12 ` kbuild test robot
[not found] ` <201802220455.lMEb6LLi%fengguang.wu-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2018-02-22 11:04 ` Jean-Philippe Brucker
[not found] ` <e5ffc52f-4510-f757-aa83-2a99af3ae06b-5wv7dgnIgG8@public.gmane.org>
2018-02-27 14:47 ` Michael S. Tsirkin [this message]
2018-02-21 21:08 ` kbuild test robot
2018-03-21 6:43 ` Tian, Kevin
[not found] ` <AADFC41AFE54684AB9EE6CBC0274A5D19108B0FE-0J0gbvR4kThpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2018-03-21 13:14 ` Jean-Philippe Brucker
2018-03-21 14:23 ` Robin Murphy
2018-03-22 10:06 ` Tian, Kevin
[not found] ` <AADFC41AFE54684AB9EE6CBC0274A5D19108DC42@SHSMSX101.ccr.corp.intel.com>
[not found] ` <AADFC41AFE54684AB9EE6CBC0274A5D19108DC42-0J0gbvR4kThpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2018-03-23 8:27 ` Tian, Kevin
2018-04-11 18:35 ` Jean-Philippe Brucker
2018-03-23 14:48 ` Robin Murphy
2018-04-11 18:33 ` Jean-Philippe Brucker
2018-02-14 14:53 ` [PATCH 2/4] iommu/virtio: Add probe request Jean-Philippe Brucker
[not found] ` <20180214145340.1223-3-jean-philippe.brucker-5wv7dgnIgG8@public.gmane.org>
2018-03-23 15:00 ` Robin Murphy
2018-04-11 18:33 ` Jean-Philippe Brucker
2018-02-14 14:53 ` [PATCH 3/4] iommu/virtio: Add event queue Jean-Philippe Brucker
[not found] ` <20180214145340.1223-4-jean-philippe.brucker-5wv7dgnIgG8@public.gmane.org>
2018-02-22 1:35 ` kbuild test robot
2018-02-14 14:53 ` [PATCH 4/4] vfio: Allow type-1 IOMMU instantiation with a virtio-iommu Jean-Philippe Brucker
[not found] ` <20180214145340.1223-5-jean-philippe.brucker-5wv7dgnIgG8@public.gmane.org>
2018-02-14 15:26 ` Alex Williamson
[not found] ` <20180214082639.54556efb-DGNDKt5SQtizQB+pC5nmwQ@public.gmane.org>
2018-02-14 15:35 ` Robin Murphy
2018-02-15 13:53 ` Jean-Philippe Brucker
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180227164510-mutt-send-email-mst@kernel.org \
--to=mst-h+wxahxf7alqt0dzr+alfa@public.gmane.org \
--cc=Marc.Zyngier-5wv7dgnIgG8@public.gmane.org \
--cc=Will.Deacon-5wv7dgnIgG8@public.gmane.org \
--cc=eric.auger.pro-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
--cc=jasowang-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=jayachandran.nair-YGCgFSpz5w/QT0dZR+AlfA@public.gmane.org \
--cc=jean-philippe.brucker-5wv7dgnIgG8@public.gmane.org \
--cc=jintack-eQaUEPhvms7ENvBUuze7eA@public.gmane.org \
--cc=kbuild-all-JC7UmRfGjtg@public.gmane.org \
--cc=kvm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=kvmarm-FPEHb7Xf0XXUo1n7N8X6UoWGPAHP3yOg@public.gmane.org \
--cc=lkp-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
--cc=tnowicki-M3mlKVOIwJVv6pq1l3V1OdBPR1lH4CV8@public.gmane.org \
--cc=virtio-dev-sDuHXQ4OtrM4h7I2RyI4rWD2FQJk+8+b@public.gmane.org \
--cc=virtualization-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).