]> git.ipfire.org Git - thirdparty/mdadm.git/commit
FIX: Close unused handle in child process during reshape restart
authorAdam Kwolek <adam.kwolek@intel.com>
Wed, 26 Oct 2011 16:16:55 +0000 (18:16 +0200)
committerNeilBrown <neilb@suse.de>
Thu, 27 Oct 2011 04:49:51 +0000 (15:49 +1100)
commit9ad6f6e65a535f77f180e87393043a8ffcfb30d8
tree1e1f36e58c77a171f800f437ac511968b93227b6
parente9ef57a816de7bd2eada5a5eecb53ea7f2c9dba1
FIX: Close unused handle in child process during reshape restart

When array reshape (e.g. raid0->raid5 migration) is restarted during
array assembly, file system placed on this array cannot be mounted until
reshape is finished due to "busy" error.

This is caused when reshape is executed on array for external metadata
and array handle is cloned /forked/ to child process environment but not
closed.

Handle can't be closed before executing Grow_continue() because it is
used later in code.

Close unused handle in child process /reshape_container()/.
It is similar to close fd handle in reshape_array() before calling
manage_reshape()/child_monitor() in Grow.c:2290.

Signed-off-by: Adam Kwolek <adam.kwolek@intel.com>
Signed-off-by: NeilBrown <neilb@suse.de>
Grow.c