[Intel-gfx] [PATCH v4 2/5] drm: Add private data field to trace control block
Patrik Jakobsson
patrik.r.jakobsson at gmail.com
Mon Sep 7 18:23:57 UTC 2015
On Mon, Sep 7, 2015 at 6:51 PM, Dmitry V. Levin <ldv at altlinux.org> wrote:
> On Mon, Aug 31, 2015 at 02:37:07PM +0200, Patrik Jakobsson wrote:
> [...]
>> Here's my take on it (I assume it needs some discussion):
>>
>> int
>> set_tcb_priv_data(struct tcb *tcp, void *priv_data)
>> {
>> /* A free callback is required before setting private data and private
>> * data must be set back to NULL before being set again.
>> */
>
> I think a single function initializing both _priv_data and _free_priv_data
> would suffice:
>
> int
> set_tcb_priv_data(struct tcb *tcp, void *priv_data,
> void (*free_priv_data)(void *))
> {
> if (tcp->_priv_data)
> return -1;
>
> tcp->_free_priv_data = free_priv_data;
> tcp->_priv_data = priv_data;
>
> return 0;
> }
Sure, and since they always come in a pairs it might be even better. If it turns
out we need it split up it is easily done later.
Thanks
Patrik
More information about the Strace-devel
mailing list