[PATCH v2] initramfs: finish fput() before accessing any binary from initramfs

Al Viro viro at ZenIV.linux.org.uk
Wed Feb 1 04:28:38 PST 2017


On Tue, Jan 24, 2017 at 11:06:36AM +0530, Lokesh Vutla wrote:
> commit 4a9d4b024a31 ("switch fput to task_work_add") implements a
> schedule_work() for completing fput(), but did not guarantee calling
> __fput() after unpacking initramfs. Because of this, there is a
> possibility that during boot a driver can see ETXTBSY when it tries
> to load a binary from initramfs as fput() is still pending on that
> binary. This patch makes sure that fput() is completed after unpacking
> initramfs.

Umm...  Do we want it done in kernel_init(), then?  I have no objections
against calling it in populate_rootfs(), and it looks like a sane place
for that, but I wonder if the old callsite would remain needed after that...



More information about the linux-arm-kernel mailing list