On Mon, 1 Nov 2021 17:35:14 +0800 Muchun Song <songmuchun@xxxxxxxxxxxxx> wrote: > I found a bug [1] some days ago, which is because we want to use > inode->i_private to pass user private data. However, this is wrong > on proc fs. We provide a specific function PDE_DATA() to get user > private data. Actually, we can hide this detail by storing > PDE()->data into inode->i_private and removing PDE_DATA() completely. > The user could use inode->i_private to get user private data just > like debugfs does. This series is trying to remove PDE_DATA(). Why can't we do /* * comment goes here */ static inline void *PDE_DATA(struct inode *inode) { return inode->i_private; } to abstract things a bit and to reduce the patch size? otoh, that upper-case thing needs to go, so the patch size remains the same anyway. And perhaps we should have a short-term #define PDE_DATA(i) pde_data(i) because new instances are sure to turn up during the development cycle. But I can handle that by staging the patch series after linux-next and reminding myself to grep for new PDE_DATA instances prior to upstreaming.