[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] pre Sandy bridge IOMMU support (gm45)





LeÂlun. 1 fÃvr. 2016 ÃÂ07:35, Jan Beulich <JBeulich@xxxxxxxx> a ÃcritÂ:
>>> On 01.02.16 at 13:28, <marmarek@xxxxxxxxxxxxxxxxxxxxxx> wrote:
> On Mon, Feb 01, 2016 at 12:59:00AM -0700, Jan Beulich wrote:
>> >>> On 30.01.16 at 02:47, <marmarek@xxxxxxxxxxxxxxxxxxxxxx> wrote:
>> > On Tue, Jan 26, 2016 at 04:37:05AM -0700, Jan Beulich wrote:
>> >> (re-adding xen-devel)
>> >>
>> >> >>> On 26.01.16 at 12:28, <thierry.laurion@xxxxxxxxx> wrote:
>> >> > Iommu=0 let the whole Qubes system work, without enforcing hardware
>> >> > compartimentalisation (iommu is enforced in software mode)
>> >> >
>> >> > When iommu=no-igfx is enforced, shell console boot up works flawlessly.
> All
>> >> > domu machines get booted up. A system hang will happen at the moment a
> domu
>> >> > machine does graphic rendering,
>> >>
>> >> And this is (other than I originally implied) without passing through
>> >> the IGD to the DomU? If so, I can't see the difference between a
>> >> guest rendering to its display (and vncviewer or whatever frontend
>> >> you use converting this to rendering on the host) and rendering
>> >> which originates in the host.
>> >
>> > Not sure if relevant, but window content is mapped from PV domU directly
>> > into X server (in dom0) address space, using xc_map_foreign_pages. It is
>> > done by hacking XShmAttach function. Not sure what graphics driver do
>> > with it next. Theoretically it could be possible that driver will direct IGD
>> > to do DMA directly from that place, but I guess it does not.
>>
>> Interesting. This then really needs to be investigated from the
>> Qubes end rather than here. Possible resulting patches, if
>> relevant outside of that unusual setup, would then of course be
>> appreciated to be sent here.
>
Interesting fact: kde corrupts video buffer and make system hang faster then it's xfce counterparts.
> Note that Thierry said "The point is the iommu=no-igfx doesn't fix the
> issue", so either it is totally unrelated issue, or iommu=no-igfx is
> broken. Does iommu=no-igfx have any meaning when IDG is _not_ passed
> through to some domU?

Yes: Iirc that option turns off the IOMMU responsible for IGD.

ÂI suppose passing iommu=dom0-passthrough to hypervisor and passing intel_iommu=igfx_off to dom0 may be what is desired here, but hypervisor refuses to boot without iommu=no-igfx flag.

> And generally - is IOMMU used in any way for dom0
> devices?

Of course; by how much depends on what options you use (see
the command line doc).
Qubes does't use any specifics.

> Is Linux kernel able to utilize it for its own purposes (my
> guess: no)?

Under Xen? If so - indeed, no.
Wouldn't it be more natural if i915 iommu would be deactivated in kernel with intel_iommu=igfx_off option being passed to dom0?

> Somehow unrelated: I've tried to get p2m iommu mapping using `xl
> debug-key o`, but it's too long (and xenconsoled isn't fast enough to
> catch it into hypervisor.log). Is is possible to enlarge console ring
> buffer at runtime?

No.

> If not, is `conring_size` the right option?

Yes.

> How large
> it should be (aprox) for `xl debug-key o` output?

Depends on the amount of memory page tables need to be created
for as well as how fragmented memory was at the time memory
allocation for domains happens. I'm afraid you can only try it out.

Jan

Would it be possible to lend a x200 laptop to the most interested/motivated developer in making i915/iommu work correctly for this laptop? I don't see how I can troubleshoot this deeper by myself alone.

Thierry
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.