{
struct drm_gem_object *obj = (struct drm_gem_object *)ptr;
struct vc4_gem_info_data *gem_info_data = data;
- struct drm_vc4_file_private *file_priv =
- gem_info_data->filp->driver_priv;
+ struct vc4_file *vc4file = gem_info_data->filp->driver_priv;
+ struct drm_vc4_file_private *file_priv = &vc4file->priv;
if (!obj) {
DRM_ERROR("failed to get drm_gem_object\n");
static void vc4_gem_register_pid(struct drm_file *file_priv)
{
- struct drm_vc4_file_private *driver_priv = file_priv->driver_priv;
+ struct vc4_file *vc4file = file_priv->driver_priv;
+ struct drm_vc4_file_private *driver_priv = &vc4file->priv;
if (!driver_priv->pid && !driver_priv->tgid) {
driver_priv->pid = task_pid_nr(current);
struct vc4_perfmon *perfmon;
};
+struct drm_vc4_file_private {
+ pid_t pid;
+ pid_t tgid;
+};
+
/* Per-open file private data. Any driver-specific resource that has to be
* released when the DRM file is closed should be placed here.
*/
struct idr idr;
struct mutex lock;
} perfmon;
+ struct drm_vc4_file_private priv;
};
static inline struct vc4_exec_info *
struct vc4_validated_shader_info *
vc4_validate_shader(struct drm_gem_cma_object *shader_obj);
-struct drm_vc4_file_private {
- pid_t pid;
- pid_t tgid;
-};
-
int vc4_debugfs_gem_info(struct seq_file *m, void *data);
int vc4_drm_gem_prime_fd_to_handle(struct drm_device *dev,
struct drm_file *file_priv, int prime_fd, uint32_t *handle);