Re: [RFC PATCH 5/6] debugfs: Manual fixes for incomplete Coccinelle conversions

David Reaver
2025-02-10T17:53:44Z

Steven Rostedt <rostedt@goodmis.org> writes:
>
> Why are you adding these defines?
>
> All files should be just including <linux/debugfs.h>
>
> so that they can use either "dentry" or "debugfs_node" while you do he
> conversion.
>
> Then the last patch should just modify debugfs and debugfs.h and no other
> file should be touched.
>
> I'll comment on the last patch to explain what I was expecting to be done
> that should satisfy Al.
>
> -- Steve

Hey Steve, there are two reasons for the temporary defines:

1. There are a few files touched in this series where replacing the
define or later forward declaration with an include <linux/debugfs.h>
caused errors related to circular includes.

2. The heuristic of adding a define or forward declaration wherever a
struct dentry declaration existed was far easier to automate than
conditionally adding an #include <linux/debugfs.h>. It is harder for
Coccinelle figure out where to put the #include if there multiple
#include blocks, no #includes in the file, etc.

However, I'm having trouble reproducing point 1. I'd be happy to use
#include <linux/debugfs.h> instead of forward declarations. I'll see if
I can find a way to mostly automate that. There are "only" 56 additions
of struct dentry forward declarations so far in this patch series, so
even if I have to eyeball these #includes by hand that might be okay.

Thanks,
David Reaver