Whamcloud - gitweb
LU-5991 obd: fix mount error handing 59/12959/9
authorVladimir Saveliev <c17830@cray.com>
Thu, 15 Feb 2018 15:40:16 +0000 (18:40 +0300)
committerOleg Drokin <oleg.drokin@intel.com>
Tue, 6 Mar 2018 19:14:47 +0000 (19:14 +0000)
commitacabfb9594c956081b615d22cfc1bd39e8a3f331
tree3fa6e0c04056ee7fd9119344b71404c5a3293e73
parent28b8f3d9296d632a37e36c68c6000dc0c5e96e5a
LU-5991 obd: fix mount error handing

lustre_fill_super() allocates lsi and assumes that on failures lsi
will be freed by server_fill_super() or ll_fill_super().
- server_fill_super() does not free lsi when lsi_prepare() fails.
- ll_fill_super() does not free lsi when OBD_ALLOC_PTR(cfg) or
ll_init_sbi() fail.

osd_device_fini() needs osd_index_backup(). Otherwise
struct lustre_index_backup_unit-s leak if server_fill_super() fails
after osd_start().

Cray-bug-id: MRP-2229
Signed-off-by: Vladimir Saveliev <c17830@cray.com>
Change-Id: I366dc2b46a504a65b030bcbf687998dd0676f404
Reviewed-by: Sergey Cheremencev <c17829@cray.com>
Reviewed-by: Andriy Skulysh <c17819@cray.com>
Reviewed-on: https://review.whamcloud.com/12959
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
lustre/llite/llite_lib.c
lustre/obdclass/obd_mount_server.c
lustre/osd-ldiskfs/osd_handler.c