trinity.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Tommi Rantala <tt.rantala@gmail.com>
To: Intel Graphics Development <intel-gfx@lists.freedesktop.org>
Cc: DRI Development <dri-devel@lists.freedesktop.org>,
	trinity@vger.kernel.org
Subject: intel_sprite_get_colorkey oops
Date: Thu, 26 Mar 2015 21:56:25 +0200	[thread overview]
Message-ID: <CA+ydwtr+bCo7LJ44JFmUkVRx144UDFgOS+aJTfK6KHtvBDVuAw@mail.gmail.com> (raw)

Hello,

Trinity discovered oopses with the i915 colorkey ioctls, reproducible
on my system with this:

#include <unistd.h>
#include <inttypes.h>
#include <drm/i915_drm.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <stdio.h>

#define GET DRM_IOWR(DRM_COMMAND_BASE + DRM_I915_GET_SPRITE_COLORKEY,
struct drm_intel_sprite_colorkey)

int main(int argc, char **argv)
{
        int fd = open(argv[1], O_RDWR);
        if (fd < 0) {
                perror("open");
                return 1;
        }
        for (int i=0; i < 128; ++i) {
                printf("get=%d\n", i);
                struct drm_intel_sprite_colorkey colorkey = { .plane_id = i };
                ioctl(fd, GET, &colorkey);
        }
        for (int i=0; i < 128; ++i) {
                printf("set=%d\n", i);
                struct drm_intel_sprite_colorkey colorkey = { .plane_id = i };
                ioctl(fd, DRM_IOCTL_I915_SET_SPRITE_COLORKEY, &colorkey);
        }
        return 0;
}

$ ./main /dev/dri/card0
get=0
get=1
get=2
get=3
get=4
get=5
get=6
get=7
get=8
get=9
get=10
get=11
get=12
get=13
get=14
get=15
get=16
get=17

[   40.467123] BUG: unable to handle kernel NULL pointer dereference
at           (null)
[   40.475012] IP: [<          (null)>]           (null)
[   40.480094] PGD 1728cd067 PUD 17163c067 PMD 0
[   40.484589] Oops: 0010 [#1] SMP KASAN
[   40.488297] CPU: 0 PID: 2198 Comm: main Not tainted 4.0.0-rc5+ #87
[   40.501666] task: ffff8800c66cd380 ti: ffff880172790000 task.ti:
ffff880172790000
[   40.509179] RIP: 0010:[<0000000000000000>]  [<          (null)>]
       (null)
[   40.516702] RSP: 0018:ffff880172797d30  EFLAGS: 00010246
[   40.522037] RAX: ffffed002e7acbe2 RBX: ffff88017401d000 RCX: 0000000000000007
[   40.529200] RDX: 0000000000000000 RSI: ffff880172797dd8 RDI: ffff880173d65c00
[   40.536361] RBP: ffff880172797d68 R08: 0000000000000000 R09: 0000000000000000
[   40.543523] R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000
[   40.550686] R13: ffff880173d65cd8 R14: ffff880172797dd8 R15: ffff880173d65c00
[   40.557852] FS:  00007f09a72e6700(0000) GS:ffff880175c00000(0000)
knlGS:0000000000000000
[   40.565976] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   40.571744] CR2: 0000000000000000 CR3: 000000017261c000 CR4: 00000000000406f0
[   40.578907] Stack:
[   40.580926]  ffffffff81b4a437 ffff880172797d68 ffff88017401d000
ffff880171470000
[   40.588394]  0000000000000014 fffffffffffffff2 ffffffff8271c400
ffff880172797e88
[   40.595864]  ffffffff818acbbc ffff880172797e18 ffffffff8165d7c2
ffffffff8165d660
[   40.603335] Call Trace:
[   40.605797]  [<ffffffff81b4a437>] ? intel_sprite_get_colorkey+0x97/0xc0
[   40.612438]  [<ffffffff818acbbc>] drm_ioctl+0x27c/0x890
[   40.617687]  [<ffffffff8165d7c2>] ? avc_has_perm+0x182/0x320
[   40.623371]  [<ffffffff8165d660>] ? avc_has_perm+0x20/0x320
[   40.628966]  [<ffffffff81b4a3a0>] ? intel_sprite_set_colorkey+0x260/0x260
[   40.635785]  [<ffffffff8165ffac>] ? inode_has_perm.isra.28+0x7c/0xa0
[   40.642169]  [<ffffffff825dfe5b>] ? _raw_spin_unlock_irq+0x2b/0x40
[   40.648376]  [<ffffffff812f8caf>] do_vfs_ioctl+0x3cf/0x720
[   40.653887]  [<ffffffff81660caa>] ? selinux_file_ioctl+0x6a/0x130
[   40.660008]  [<ffffffff812f9081>] SyS_ioctl+0x81/0xa0
[   40.665083]  [<ffffffff825e0ab2>] system_call_fastpath+0x12/0x17
[   40.671112] Code:  Bad RIP value.
[   40.674465] RIP  [<          (null)>]           (null)
[   40.679634]  RSP <ffff880172797d30>
[   40.683134] CR2: 0000000000000000
[   40.686498] ---[ end trace 9292d9b4aba8dfe9 ]---
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel

                 reply	other threads:[~2015-03-26 19:56 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=CA+ydwtr+bCo7LJ44JFmUkVRx144UDFgOS+aJTfK6KHtvBDVuAw@mail.gmail.com \
    --to=tt.rantala@gmail.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=trinity@vger.kernel.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 read-only IMAP folder(s) and NNTP newsgroup(s).