[CRIU] [PATCH 1/3] libcriu: use criu_opts structure to keep all the options
Ruslan Kuprieiev
kupruser at gmail.com
Thu Jul 16 05:29:33 PDT 2015
On 07/16/2015 03:27 PM, Pavel Emelyanov wrote:
> On 07/16/2015 03:24 PM, Ruslan Kuprieiev wrote:
>>
>> On 07/16/2015 03:15 PM, Pavel Emelyanov wrote:
>>> On 07/16/2015 03:11 PM, Ruslan Kuprieiev wrote:
>>>> On 07/16/2015 03:01 PM, Pavel Emelyanov wrote:
>>>>> On 07/16/2015 02:44 PM, Ruslan Kuprieiev wrote:
>>>>>> On 07/16/2015 02:40 PM, Pavel Emelyanov wrote:
>>>>>>> On 07/16/2015 02:40 PM, Ruslan Kuprieiev wrote:
>>>>>>>> On 07/16/2015 02:31 PM, Pavel Emelyanov wrote:
>>>>>>>>> On 07/15/2015 04:45 AM, Ruslan Kuprieiev wrote:
>>>>>>>>>> ---
>>>>>>>>>> Makefile | 2 +-
>>>>>>>>>> lib/criu.c | 469 ++++++++++++++++++++++++-------------------------------------
>>>>>>>>>> lib/criu.h | 81 ++++++-----
>>>>>>>>>> 3 files changed, 228 insertions(+), 324 deletions(-)
>>>>>>>>>>
>>>>>>>>>> diff --git a/Makefile b/Makefile
>>>>>>>>>> index 6ed4c90..d67ed0b 100644
>>>>>>>>>> --- a/Makefile
>>>>>>>>>> +++ b/Makefile
>>>>>>>>>> @@ -161,7 +161,7 @@ SYSCALL-LIB := $(ARCH_DIR)/syscalls.built-in.o
>>>>>>>>>> ARCH-LIB := $(ARCH_DIR)/crtools.built-in.o
>>>>>>>>>> CRIU-SO := libcriu
>>>>>>>>>> CRIU-LIB := lib/$(CRIU-SO).so
>>>>>>>>>> -CRIU-INC := lib/criu.h include/criu-plugin.h include/criu-log.h protobuf/rpc.proto
>>>>>>>>>> +CRIU-INC := lib/criu.h include/criu-plugin.h include/criu-log.h protobuf/rpc.proto protobuf/rpc.pb-c.h
>>>>>>>>> Why is this required?
>>>>>>>> Because we now include rpc.pb-c.h into libcriu header, so we need to
>>>>>>>> install it too.
>>>>>>> Any why do we include it?
>>>>>>>
>>>>>> To keep CriuOpts in criu_opts structure, so we don't hide it behind void
>>>>>> pointer,
>>>>>> which makes everything a lot more clear for both libcriu user and
>>>>>> developer =).
>>>>> But the libcriu user doesn't need to know the internals of CriuOpts, he
>>>>> only needs a pointer Plz, find a way not to reveal this structure to public
>>>>> use.
>>>>>
>>>> Could you please explain why is it a problem?
>>> No problem, just don't want to ship extra header with unneeded info.
>>>
>> But we ship rpc.proto file and rpc.pb-c.h can be compiled from it, so why
>> hide it? Btw, we could also ship rpc.pb-c._c_ file to make it easier for
>> users,
>> what do you think?
> Without real need -- I think we shouldn't :)
I agree =).
>> If the reason is to just not provide yet another file, I'm totally ok
>> with that,
>> I could easily switch to void*.
> Not void. Just declare typedef struct _CriuOpts *CriuOpts in the header
> and that's it.
Oh, ok, I see. Will send a patch soon. Thanks!
> -- Pavel
More information about the CRIU
mailing list