i915 NULL pointer dereference in get_driver_name
This is an unpatched, upstream 5.5-rc1 kernel.
$ uname -m x86_64 $ uname -r 5.5.0-rc1 $ cat /etc/issue Ubuntu 16.04.6 LTS \n \l
Hardware is a Lenovo Thinkpad x260.
It appears to be a NULL f->ops in get_timeline_name():
static const char *get_timeline_name(struct dma_fence *fence)
{
struct dma_fence_work *f = container_of(fence, typeof(*f), dma);
return f->ops->name ?: "work";
}
It's quite reproducible if I just enable a bunch of ftrace events:
cd /sys/kernel/debug/tracing/; for i in events//enable; do echo $i; echo 1 > $i; ls -l /home/ > /dev/null; echo 0 > $i; done
Doing that 3 or 4 times, sometimes making the "ls -l" do a bit more work makes it happen faster.i915-crash-2019-12-13.log