Re: [PATCH libdrm] add libsync.h helper

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 31 October 2016 at 16:39, Rob Clark <robdclark@xxxxxxxxx> wrote:
> On Mon, Oct 31, 2016 at 11:25 AM, Emil Velikov <emil.l.velikov@xxxxxxxxx> wrote:
>> On 31 October 2016 at 13:44, Rob Clark <robdclark@xxxxxxxxx> wrote:
>>> From: Rob Clark <robclark@xxxxxxxxxxxxxxx>
>>>
>>> Rather than cut/pasting these couple ioctl wrappers everywhere, just
>>> stuff them as static-inline into a header.
>>>
>>> Signed-off-by: Rob Clark <robclark@xxxxxxxxxxxxxxx>
>>> ---
>>> This is probably mostly used from mesa, but some drivers, test apps, etc
>>> may also want to use it from libdrm.
>>>
>> It makes sense imho. To avoid fun experiences we want the header
>> synced in an identical manner (make headers_install) to the
>> include/drm ones. One might as well move it there, so make its "more"
>> obvious.
>>
>
> hmm, not sure I understand, but '#include <libsync.h>' seems to work
> in either case..
>
The file is from the kernel UAPI, correct ? If so store it alongside
the other UAPI ones include/drm/ and import `make headers_install'
(see git log -- include/drm for examples).

We should add a README with the above specifics to include/drm/ one of
these days :-)

>>
>>> +static inline int sync_wait(int fd, int timeout)
>>> +{
>>> +       struct pollfd fds;
>>> +
>>> +       fds.fd = fd;
>>> +       fds.events = POLLIN | POLLERR;
>> IIRC the API does not mention (forbid even) additional members of the
>> pollfd struct.
>> Let's zero init fds, and the compiler will drop it if/where applicable ?
>
>
> hmm, and I guess if this gets #include'd from c++ code, does it get
> more fun?  I thought there were some different rules about struct
> initializers in c++?  Or maybe that was just with certain compilers?
>
Initializers are fun in C++ indeed. Having the extern C wrappers (as
per your v2) helps.

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




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux