On 11/27/18 2:50 PM, Kees Cook wrote:
> On Mon, Nov 19, 2018 at 9:06 AM, Dave Hansen <[email protected]> wrote:
>> On 11/19/18 7:43 AM, Yangtao Li wrote:
>>> -static const struct file_operations ptdump_curusr_fops = {
>>> -     .owner          = THIS_MODULE,
>>> -     .open           = ptdump_open_curusr,
>>> -     .read           = seq_read,
>>> -     .llseek         = seq_lseek,
>>> -     .release        = single_release,
>>> -};
>>> +DEFINE_SHOW_ATTRIBUTE(ptdump_curusr);
>>
>> FWIW, I rather dislike this conversion and the DEFINE_SHOW_ATTRIBUTE()
>> approach in general.  It makes it basically impossible to go from
>> ptdump_curusr to ptdump_open_curusr without opening up the macro and
>> reverse-engineering it.
>>
>> My test is that for these macros to be sane, I need to be able to find
>> "ptdump_open_curusr" by grepping for "ptdump_curusr".  This fails the test.
> 
> Er, "ptdump_curusr" matches the generated name "ptdump_curusr_show",
> is that what you mean?

Ahh, I also missed some of the renames to make this OK, like:

> -static int ptdump_show_efi(struct seq_file *m, void *v)
> +static int ptdump_efi_show(struct seq_file *m, void *v)

I thought there was some macro magic going on that screwed the names up.

This looks fine to me.

Reviewed-by: Dave Hansen <[email protected]>

Reply via email to