Re: REGRESSION?: debugfs: inode: debugfs_create_dir uses mode permission from parent

From: Kees Cook
Date: Tue Jun 12 2018 - 18:52:25 EST


On Tue, Jun 12, 2018 at 3:40 PM, John Stultz <john.stultz@xxxxxxxxxx> wrote:
> Hey all,
> I noticed recently that linus/master (plus patches) stopped booting
> to UI on HiKey960, and I bisected the issue down to:
> 92170b62f1c1 ("debugfs: inode: debugfs_create_dir uses mode permission
> from parent")
>
> On the HiKey960 board, we mount debugfs via:
> mount debugfs /sys/kernel/debug /sys/kernel/debug mode=755
>
> But since the change, it seems most of the nodes in /sys/kernel/debug
> are: drwx------
>
> Which ends up breaking the egl library, keeping it from loading.
>
> This seems to be the expected behavior of the patch, but I'm surprised
> the mode override is now ignored. It seems like the potential fix here
> would be to set the /sys/kernel/debug dir to 755 prior to mounting? Or
> is there some other advised solution?

This change has already be reverted from other people reporting the
problem. Perhaps the root cause is the lack of propagation of the
mode= value?

-Kees

--
Kees Cook
Pixel Security