public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
From: David Woodhouse <dwmw2@infradead.org>
To: Jesse Barnes <jbarnes@virtuousgeek.org>, intel-gfx@lists.freedesktop.org
Subject: Re: [RFC] Page table sharing and bufferless execbuf
Date: Sat, 26 Sep 2015 15:55:06 +0100	[thread overview]
Message-ID: <1443279306.4674.58.camel@infradead.org> (raw)
In-Reply-To: <1441385943-11508-1-git-send-email-jbarnes@virtuousgeek.org>


[-- Attachment #1.1: Type: text/plain, Size: 3810 bytes --]

On Fri, 2015-09-04 at 09:58 -0700, Jesse Barnes wrote:
> I've been carrying something looking rougly like this patchset around
> internally for a long time now, and with SKL out there now, I figured
> it's time to get it posted and start the process of integration.
> 
> David is working on pulling over most of the "driver based PASID
> handling" and other code into the IOMMU layer, but the integration with
> the rest of the driver needs some careful thought (handling task
> referencing along with context referencing, context creation, etc.)

I've pushed an early version of that to
http://git.infradead.org/users/dwmw2/linux-svm.git/shortlog/refs/heads/i915-svm

I don't have page fault handling yet, but I've at least got it to the
point where gem_svm_sanity will succeed. I'll work on page faults next.

However, I couldn't get your current tree to work (even with driver
-mode SVM); I did this based on an older internal (svm-on-iommu-fences)
branch and have blindly ported the patch across.

I get this:

 # ./gem_svm_sanity
using GPU to write 0xdead0000 to 0xca4860
value mismatch: read 0x00000000, expected 0xdead0000

And this:

[  105.490459] ------------[ cut here ]------------
[  105.495756] WARNING: CPU: 2 PID: 1254 at drivers/gpu/drm/i915/intel_ringbuffer.c:2214 intel_ring_reserved_space_reserve+0x47/0x80 [i915]()
[  105.509917] WARN_ON(ringbuf->reserved_size)
[  105.514497] Modules linked in: tun nf_conntrack_netbios_ns nf_conntrack_broadcast ip6t_rpfilter ip6t_REJECT nf_reject_ipv6 nf_conntrack_ipv6 nf_defrag_ipv6 nf_conntrack_ipv4 nf_defrag_ipv4 xt_conntrack nf_conntrack ebtable_nat ebtable_broi
[  105.614355] CPU: 2 PID: 1254 Comm: gem_svm_sanity Tainted: G        W I     4.2.0-rc8+ #2
[  105.623680] Hardware name: Intel Corporation Skylake Client platform/Skylake Y LPDDR3 RVP3, BIOS SKLSE2R1.R00.X090.B01.1506290657 06/29/2015
[  105.638023]  ffffffffa026ed38 ffff880080093b98 ffffffff81703e35 0000000000000000
[  105.646566]  ffff880080093be8 ffff880080093bd8 ffffffff810916a6 ffff880169e40000
[  105.655100]  ffff88003f96a400 00000000000000a0 ffff880080093ce0 ffff88003f45b200
[  105.663598] Call Trace:
[  105.666392]  [<ffffffff81703e35>] dump_stack+0x45/0x57
[  105.672252]  [<ffffffff810916a6>] warn_slowpath_common+0x86/0xc0
[  105.679119]  [<ffffffff81091726>] warn_slowpath_fmt+0x46/0x50
[  105.685705]  [<ffffffffa01e7c57>] intel_ring_reserved_space_reserve+0x47/0x80 [i915]
[  105.694567]  [<ffffffffa01e23bf>] intel_logical_ring_reserve_space+0x1f/0x30 [i915]
[  105.703303]  [<ffffffffa01d0ef7>] i915_gem_request_alloc+0x107/0x1b0 [i915]
[  105.711274]  [<ffffffffa0226c8d>] i915_fence_create_ring+0x2d/0x190 [i915]
[  105.719121]  [<ffffffffa024f334>] intel_exec_mm_ioctl+0x224/0x3a0 [i915]
[  105.726806]  [<ffffffffa00d7409>] drm_ioctl+0x129/0x4d0 [drm]
[  105.733372]  [<ffffffffa024f110>] ? i915_getparam+0x260/0x260 [i915]
[  105.740601]  [<ffffffff810bef2c>] ? __enqueue_entity+0x6c/0x70
[  105.747282]  [<ffffffff810c4afe>] ? set_next_entity+0x6e/0x400
[  105.753976]  [<ffffffff81209645>] do_vfs_ioctl+0x285/0x460
[  105.760233]  [<ffffffff812f711d>] ? selinux_file_ioctl+0x4d/0xc0
[  105.767079]  [<ffffffff812eecc3>] ? security_file_ioctl+0x43/0x60
[  105.774026]  [<ffffffff81209899>] SyS_ioctl+0x79/0x90
[  105.779812]  [<ffffffff81709c2e>] entry_SYSCALL_64_fastpath+0x12/0x71
[  105.787152] ---[ end trace 633908b4ba32bd71 ]---

And as we discussed a little while ago, I always see this:
     ioctl(5, SYNC_IOC_WAIT, 0xffffffff)     = -1 EFAULT (Bad address)
... so I've just stuck a sleep(5) in there to get the test to succeed.

-- 
David Woodhouse                            Open Source Technology Centre
David.Woodhouse@intel.com                              Intel Corporation


[-- Attachment #1.2: smime.p7s --]
[-- Type: application/x-pkcs7-signature, Size: 5691 bytes --]

[-- Attachment #2: Type: text/plain, Size: 159 bytes --]

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

      parent reply	other threads:[~2015-09-26 14:55 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-04 16:58 [RFC] Page table sharing and bufferless execbuf Jesse Barnes
2015-09-04 16:58 ` [PATCH 1/9] mm: move mmu_find_ops to mmu_notifier.c Jesse Barnes
2015-09-04 16:58 ` [PATCH 2/9] signal: export force_sig_info Jesse Barnes
2015-09-04 16:58 ` [PATCH 3/9] android/sync: add sync_fence_create_dma Jesse Barnes
2015-09-04 16:58 ` [PATCH 4/9] android/sync: hack: enable fence signaling in Android Native Sync implementation Jesse Barnes
2015-09-04 16:58 ` [PATCH 5/9] drm/i915: add create_context2 ioctl Jesse Barnes
2015-09-04 16:59 ` [PATCH 6/9] drm/i915: driver based PASID handling Jesse Barnes
2015-10-07 13:00   ` David Woodhouse
2015-10-07 15:16     ` Jesse Barnes
2015-10-07 16:14       ` Daniel Vetter
2015-10-07 16:28         ` Jesse Barnes
2015-10-07 17:17           ` David Woodhouse
2015-10-07 17:26             ` Jesse Barnes
2015-10-08  8:12               ` Daniel Vetter
2015-10-08 10:28         ` Tomas Elf
2015-10-08 11:29         ` Tomas Elf
2015-10-08 22:46           ` David Woodhouse
2015-10-09  7:28             ` Daniel Vetter
2015-10-09  7:52               ` Daniel Vetter
2015-10-09  7:56               ` David Woodhouse
2015-10-09  8:47                 ` Daniel Vetter
2015-10-09  9:07                   ` David Woodhouse
2015-10-09 16:20                     ` Jesse Barnes
2015-10-08 15:57   ` Chris Wilson
2015-10-09  7:24     ` David Woodhouse
2015-09-04 16:59 ` [PATCH 7/9] drm/i915: add fences to the request struct Jesse Barnes
2015-10-09 13:29   ` David Woodhouse
2015-10-09 16:11     ` Jesse Barnes
2015-09-04 16:59 ` [PATCH 8/9] drm/i915: Android sync points for i915 v4 (obsolete) Jesse Barnes
2015-09-04 16:59 ` [PATCH 9/9] drm/i915: add bufferless execbuf ioctl Jesse Barnes
2015-09-04 17:37   ` Chris Wilson
2015-09-04 19:09     ` Jesse Barnes
2015-10-08 10:34   ` David Woodhouse
2015-09-04 17:23 ` [RFC] Page table sharing and bufferless execbuf Chris Wilson
2015-09-04 19:08   ` Jesse Barnes
2015-09-26 14:55 ` David Woodhouse [this message]

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=1443279306.4674.58.camel@infradead.org \
    --to=dwmw2@infradead.org \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=jbarnes@virtuousgeek.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