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

From: Andrew Morton
Date: Wed Feb 01 2017 - 17:12:18 EST


On Wed, 1 Feb 2017 19:35:40 +0530 Lokesh Vutla <lokeshvutla@xxxxxx> 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 and removes the call to flush_delayed_fput() in kernel_init()
> which happens very late after unpacking initramfs.

There's not really enough info here for others to be able to decide
which kernel versions need the fix. How serious is the bug? Given
that it's been there for 4 years, I assume "not very"?