All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sean Paul <sean@poorly.run>
To: dri-devel@lists.freedesktop.org
Cc: Hillf Danton <hdanton@sina.com>,
	Vincent Donnefort <Vincent.Donnefort@arm.com>,
	Sean Paul <sean@poorly.run>, Chenbo Feng <fengc@google.com>,
	Alistair Strachan <astrachan@google.com>,
	Liam Mark <lmark@codeaurora.org>,
	Christoph Hellwig <hch@infradead.org>,
	Sean Paul <seanpaul@chromium.org>,
	"Andrew F . Davis" <afd@ti.com>,
	Hridya Valsaraju <hridya@google.com>,
	Sudipto Paul <Sudipto.Paul@arm.com>,
	Pratik Patel <pratikp@codeaurora.org>
Subject: [PATCH 1/5] Revert "kselftests: Add dma-heap test"
Date: Wed, 30 Oct 2019 16:29:50 -0400	[thread overview]
Message-ID: <20191030203003.101156-2-sean@poorly.run> (raw)
In-Reply-To: <20191030203003.101156-1-sean@poorly.run>

From: Sean Paul <seanpaul@chromium.org>

This reverts commit ab87cc9754cdeb373c8ac030ac7aed92f450b767.

This patchset doesn't meet the UAPI requirements set out in [1] for the DRM
subsystem. Once the userspace component is reviewed and ready for merge
we can try again.

[1]- https://01.org/linuxgraphics/gfx-docs/drm/gpu/drm-uapi.html#open-source-userspace-requirements

Fixes: ab87cc9754cd ("kselftests: Add dma-heap test")
Cc: Benjamin Gaignard <benjamin.gaignard@linaro.org>
Cc: Sumit Semwal <sumit.semwal@linaro.org>
Cc: Liam Mark <lmark@codeaurora.org>
Cc: Pratik Patel <pratikp@codeaurora.org>
Cc: Brian Starkey <Brian.Starkey@arm.com>
Cc: Vincent Donnefort <Vincent.Donnefort@arm.com>
Cc: Sudipto Paul <Sudipto.Paul@arm.com>
Cc: Andrew F. Davis <afd@ti.com>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Chenbo Feng <fengc@google.com>
Cc: Alistair Strachan <astrachan@google.com>
Cc: Hridya Valsaraju <hridya@google.com>
Cc: Hillf Danton <hdanton@sina.com>
Cc: dri-devel@lists.freedesktop.org
Cc: Brian Starkey <brian.starkey@arm.com>
Cc: Laura Abbott <labbott@redhat.com>
Cc: John Stultz <john.stultz@linaro.org>
Cc: Sean Paul <seanpaul@chromium.org>
Signed-off-by: Sean Paul <sean@poorly.run>
---
 tools/testing/selftests/dmabuf-heaps/Makefile |   9 -
 .../selftests/dmabuf-heaps/dmabuf-heap.c      | 238 ------------------
 2 files changed, 247 deletions(-)
 delete mode 100644 tools/testing/selftests/dmabuf-heaps/Makefile
 delete mode 100644 tools/testing/selftests/dmabuf-heaps/dmabuf-heap.c

diff --git a/tools/testing/selftests/dmabuf-heaps/Makefile b/tools/testing/selftests/dmabuf-heaps/Makefile
deleted file mode 100644
index 8c4c36e2972d..000000000000
--- a/tools/testing/selftests/dmabuf-heaps/Makefile
+++ /dev/null
@@ -1,9 +0,0 @@
-# SPDX-License-Identifier: GPL-2.0
-CFLAGS += -static -O3 -Wl,-no-as-needed -Wall
-#LDLIBS += -lrt -lpthread -lm
-
-# these are all "safe" tests that don't modify
-# system time or require escalated privileges
-TEST_GEN_PROGS = dmabuf-heap
-
-include ../lib.mk
diff --git a/tools/testing/selftests/dmabuf-heaps/dmabuf-heap.c b/tools/testing/selftests/dmabuf-heaps/dmabuf-heap.c
deleted file mode 100644
index b36dd9f35c19..000000000000
--- a/tools/testing/selftests/dmabuf-heaps/dmabuf-heap.c
+++ /dev/null
@@ -1,238 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0
-
-#include <dirent.h>
-#include <errno.h>
-#include <fcntl.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <stdint.h>
-#include <string.h>
-#include <unistd.h>
-#include <sys/ioctl.h>
-#include <sys/mman.h>
-#include <sys/types.h>
-
-#include <linux/dma-buf.h>
-#include <drm/drm.h>
-
-#include "../../../../include/uapi/linux/dma-heap.h"
-
-#define DEVPATH "/dev/dma_heap"
-
-static int check_vgem(int fd)
-{
-	drm_version_t version = { 0 };
-	char name[5];
-	int ret;
-
-	version.name_len = 4;
-	version.name = name;
-
-	ret = ioctl(fd, DRM_IOCTL_VERSION, &version);
-	if (ret)
-		return 0;
-
-	return !strcmp(name, "vgem");
-}
-
-static int open_vgem(void)
-{
-	int i, fd;
-	const char *drmstr = "/dev/dri/card";
-
-	fd = -1;
-	for (i = 0; i < 16; i++) {
-		char name[80];
-
-		snprintf(name, 80, "%s%u", drmstr, i);
-
-		fd = open(name, O_RDWR);
-		if (fd < 0)
-			continue;
-
-		if (!check_vgem(fd)) {
-			close(fd);
-			fd = -1;
-			continue;
-		} else {
-			break;
-		}
-	}
-	return fd;
-}
-
-static int import_vgem_fd(int vgem_fd, int dma_buf_fd, uint32_t *handle)
-{
-	struct drm_prime_handle import_handle = {
-		.fd = dma_buf_fd,
-		.flags = 0,
-		.handle = 0,
-	 };
-	int ret;
-
-	ret = ioctl(vgem_fd, DRM_IOCTL_PRIME_FD_TO_HANDLE, &import_handle);
-	if (ret == 0)
-		*handle = import_handle.handle;
-	return ret;
-}
-
-static void close_handle(int vgem_fd, uint32_t handle)
-{
-	struct drm_gem_close close = {
-		.handle = handle,
-	};
-
-	ioctl(vgem_fd, DRM_IOCTL_GEM_CLOSE, &close);
-}
-
-static int dmabuf_heap_open(char *name)
-{
-	int ret, fd;
-	char buf[256];
-
-	ret = snprintf(buf, 256, "%s/%s", DEVPATH, name);
-	if (ret < 0) {
-		printf("snprintf failed!\n");
-		return ret;
-	}
-
-	fd = open(buf, O_RDWR);
-	if (fd < 0)
-		printf("open %s failed!\n", buf);
-	return fd;
-}
-
-static int dmabuf_heap_alloc(int fd, size_t len, unsigned int flags,
-			     int *dmabuf_fd)
-{
-	struct dma_heap_allocation_data data = {
-		.len = len,
-		.fd_flags = O_RDWR | O_CLOEXEC,
-		.heap_flags = flags,
-	};
-	int ret;
-
-	if (!dmabuf_fd)
-		return -EINVAL;
-
-	ret = ioctl(fd, DMA_HEAP_IOC_ALLOC, &data);
-	if (ret < 0)
-		return ret;
-	*dmabuf_fd = (int)data.fd;
-	return ret;
-}
-
-static void dmabuf_sync(int fd, int start_stop)
-{
-	struct dma_buf_sync sync = {
-		.flags = start_stop | DMA_BUF_SYNC_RW,
-	};
-	int ret;
-
-	ret = ioctl(fd, DMA_BUF_IOCTL_SYNC, &sync);
-	if (ret)
-		printf("sync failed %d\n", errno);
-}
-
-#define ONE_MEG (1024 * 1024)
-
-static int do_test(char *heap_name)
-{
-	int heap_fd = -1, dmabuf_fd = -1, importer_fd = -1;
-	uint32_t handle = 0;
-	void *p = NULL;
-	int ret;
-
-	printf("Testing heap: %s\n", heap_name);
-
-	heap_fd = dmabuf_heap_open(heap_name);
-	if (heap_fd < 0)
-		return;
-
-	printf("Allocating 1 MEG\n");
-	ret = dmabuf_heap_alloc(heap_fd, ONE_MEG, 0, &dmabuf_fd);
-	if (ret) {
-		printf("Allocation Failed!\n");
-		ret = -1;
-		goto out;
-	}
-	/* mmap and write a simple pattern */
-	p = mmap(NULL,
-		 ONE_MEG,
-		 PROT_READ | PROT_WRITE,
-		 MAP_SHARED,
-		 dmabuf_fd,
-		 0);
-	if (p == MAP_FAILED) {
-		printf("mmap() failed: %m\n");
-		ret = -1;
-		goto out;
-	}
-	printf("mmap passed\n");
-
-	dmabuf_sync(dmabuf_fd, DMA_BUF_SYNC_START);
-	memset(p, 1, ONE_MEG / 2);
-	memset((char *)p + ONE_MEG / 2, 0, ONE_MEG / 2);
-	dmabuf_sync(dmabuf_fd, DMA_BUF_SYNC_END);
-
-	importer_fd = open_vgem();
-	if (importer_fd < 0) {
-		ret = importer_fd;
-		printf("Failed to open vgem\n");
-		goto out;
-	}
-
-	ret = import_vgem_fd(importer_fd, dmabuf_fd, &handle);
-	if (ret < 0) {
-		printf("Failed to import buffer\n");
-		goto out;
-	}
-	printf("import passed\n");
-
-	dmabuf_sync(dmabuf_fd, DMA_BUF_SYNC_START);
-	memset(p, 0xff, ONE_MEG);
-	dmabuf_sync(dmabuf_fd, DMA_BUF_SYNC_END);
-	printf("syncs passed\n");
-
-	close_handle(importer_fd, handle);
-	ret = 0;
-
-out:
-	if (p)
-		munmap(p, ONE_MEG);
-	if (importer_fd >= 0)
-		close(importer_fd);
-	if (dmabuf_fd >= 0)
-		close(dmabuf_fd);
-	if (heap_fd >= 0)
-		close(heap_fd);
-
-	return ret;
-}
-
-int main(void)
-{
-	DIR *d;
-	struct dirent *dir;
-	int ret = -1;
-
-	d = opendir(DEVPATH);
-	if (!d) {
-		printf("No %s directory?\n", DEVPATH);
-		return -1;
-	}
-
-	while ((dir = readdir(d)) != NULL) {
-		if (!strncmp(dir->d_name, ".", 2))
-			continue;
-		if (!strncmp(dir->d_name, "..", 3))
-			continue;
-
-		ret = do_test(dir->d_name);
-		if (ret)
-			break;
-	}
-	closedir(d);
-
-	return ret;
-}
-- 
Sean Paul, Software Engineer, Google / Chromium OS

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  reply	other threads:[~2019-10-30 20:30 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-30 20:29 [PATCH 0/5] Revert "DMA-BUF Heaps (destaging ION)" Sean Paul
2019-10-30 20:29 ` Sean Paul [this message]
2019-10-30 20:29 ` [PATCH 2/5] Revert "dma-buf: heaps: Add CMA heap to dmabuf heaps" Sean Paul
2019-10-30 20:29   ` Sean Paul
2019-10-30 20:29 ` [PATCH 3/5] Revert "dma-buf: heaps: Add system " Sean Paul
2019-10-30 20:29   ` Sean Paul
2019-10-30 20:29 ` [PATCH 4/5] Revert "dma-buf: heaps: Add heap helpers" Sean Paul
2019-10-30 20:29   ` Sean Paul
2019-10-30 20:29 ` [PATCH 5/5] Revert "dma-buf: Add dma-buf heaps framework" Sean Paul
2019-10-30 20:29   ` Sean Paul
2019-10-30 20:54 ` [PATCH 0/5] Revert "DMA-BUF Heaps (destaging ION)" Sean Paul

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=20191030203003.101156-2-sean@poorly.run \
    --to=sean@poorly.run \
    --cc=Sudipto.Paul@arm.com \
    --cc=Vincent.Donnefort@arm.com \
    --cc=afd@ti.com \
    --cc=astrachan@google.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=fengc@google.com \
    --cc=hch@infradead.org \
    --cc=hdanton@sina.com \
    --cc=hridya@google.com \
    --cc=lmark@codeaurora.org \
    --cc=pratikp@codeaurora.org \
    --cc=seanpaul@chromium.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.