[PATCH 1/7] selftest: sync: basic tests for sw_sync framework

Emilio López emilio.lopez at collabora.co.uk
Thu Sep 22 14:23:51 UTC 2016


Hi Michael,

El 22/09/16 a las 06:43, Michael Ellerman escribió:
> Emilio López <emilio.lopez at collabora.co.uk> writes:
>> +CFLAGS += -I../../../../include/uapi/
>
> Please don't include the unprocessed uapi headers, they are not meant to
> be directly included in userspace programs.
>
> They even say so:
>
> include/uapi/linux/types.h:#warning "Attempt to use kernel headers from user space, see http://kernelnewbies.org/KernelHeaders"
>
>> +CFLAGS += -I../../../../include/
>
> Please don't include the *kernel* headers, they're really not meant to
> be used in userspace programs :)
>
>> +CFLAGS += -I../../../../usr/include/
>
> That is the correct place to get them from. They'll have been put there
> by 'make headers_install'.
>
>> +CFLAGS += -I../../../../drivers/dma-buf/
>
> That's also a bit fishy.

My inspiration here has been tools/testing/selftests/memfd/Makefile, 
which does it this way. If I only include the ones on usr then it 
doesn't build, as there's no sync_file.h available, even after running 
make headers_install. How am I supposed to use the ioctls from there?

The dma-buf include path is a leftover from the previous version, 
there's no longer any headers there. I've fixed the other things you 
pointed out, the new Makefile is below if you want to take another look.

Thanks for the review! :)
Emilio

---

CFLAGS += -O2 -g -std=gnu89 -pthread -Wall -Wextra
CFLAGS += -I../../../../usr/include/
LDFLAGS += -pthread

TEST_PROGS = sync_test

all: $(TEST_PROGS)

include ../lib.mk

OBJS = sync_test.o sync.o

TESTS += sync_alloc.o
TESTS += sync_fence.o
TESTS += sync_merge.o
TESTS += sync_wait.o
TESTS += sync_stress_parallelism.o
TESTS += sync_stress_consumer.o
TESTS += sync_stress_merge.o

sync_test: $(OBJS) $(TESTS)

clean:
	$(RM) sync_test $(OBJS) $(TESTS)


More information about the dri-devel mailing list