Re: [PATCHv3 2/3] kernel: add support for live patching

From: Jiri Slaby
Date: Fri Nov 21 2014 - 12:35:56 EST


On 11/21/2014, 05:40 PM, Seth Jennings wrote:
>>> --- /dev/null
>>> +++ b/arch/x86/include/asm/livepatch.h
>>> @@ -0,0 +1,37 @@
...
>>> +#ifndef _ASM_X86_LIVEPATCH_H
>>> +#define _ASM_X86_LIVEPATCH_H
>>> +
>>> +#include <linux/module.h>
>>> +
>>> +#ifdef CONFIG_LIVE_PATCHING
>>> +extern int klp_write_module_reloc(struct module *mod, unsigned long type,
>>> + unsigned long loc, unsigned long value);
>>> +
>>> +#else
>>> +static int klp_write_module_reloc(struct module *mod, unsigned long type,
>>
>> static inline?
>
> I think the practice is to let the compiler handle inline determination
> unless you are sure that the compiler isn't inlining something you think
> it should.

Although you are right, it is a correct C, gcc specs (6.39) suggests to
use 'static inline' on such functions. gcc then shall inline such functions.

And if you look around in the kernel, we use that combination almost
everywhere.

thanks,
--
js
suse labs
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/