drm/i915: Use a spinlock for i915_file_priv locking

* This is also what Linux uses

* Sync struct drm_i915_file_private and i915_gem_ring_throttle() a bit
  with Linux while I'm at it