> +#ifndef SYNC_IOC_MAGIC
> +/* duplicated from linux/sync_file.h to avoid build-time depnedency
> + * on new (v4.7) kernel headers.  Once distro's are mostly using
> + * something newer than v4.7 drop this and #include <linux/sync_file.h>
> + * instead.
> + */
> +struct sync_merge_data {
> +   char  name[32];
> +   __s32 fd2;
> +   __s32 fence;
> +   __u32 flags;
> +   __u32 pad;
> +};
> +
> +#define SYNC_IOC_MAGIC '>'
> +#define SYNC_IOC_MERGE _IOWR(SYNC_IOC_MAGIC, 3, struct sync_merge_data)
> +#endif
> +
> +int
> +anv_gem_sync_file_merge(struct anv_device *device, int fd1, int fd2)
> +{
> +   const char name[] = "anv merge fence";
> +   struct sync_merge_data args = {
> +      .fd2 = fd2,
> +      .fence = -1,
> +   };
> +   memcpy(args.name, name, sizeof(name));
> +
> +   int ret = anv_ioctl(device->fd, SYNC_IOC_MERGE, &args);
> +   if (ret == -1)
> +      return -1;
> +
> +   return args.fence;
> +}

This seems wrong, surely device->fd should be fd1 here?

Dave.
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to