On Sun, Apr 27, 2014 at 01:06:35PM -0400, Oleg Drokin wrote:
> diff --git a/drivers/staging/lustre/lustre/ptlrpc/ptlrpc_module.c 
> b/drivers/staging/lustre/lustre/ptlrpc/ptlrpc_module.c
> index 0efd358..251ae75 100644
> --- a/drivers/staging/lustre/lustre/ptlrpc/ptlrpc_module.c
> +++ b/drivers/staging/lustre/lustre/ptlrpc/ptlrpc_module.c
> @@ -73,29 +73,34 @@ __init int ptlrpc_init(void)
>               return rc;
>  
>       cleanup_phase = 1;
> +     rc = ptlrpc_request_cache_init();
> +     if (rc)
> +             GOTO(cleanup, rc);
>  
> +     cleanup_phase = 2;
>       rc = ptlrpc_init_portals();
>       if (rc)
>               GOTO(cleanup, rc);
> -     cleanup_phase = 2;
> +
> +     cleanup_phase = 3;
>  
>       rc = ptlrpc_connection_init();
>       if (rc)
>               GOTO(cleanup, rc);
> -     cleanup_phase = 3;
>  
> +     cleanup_phase = 4;
>       ptlrpc_put_connection_superhack = ptlrpc_connection_put;
>  
>       rc = ptlrpc_start_pinger();
>       if (rc)
>               GOTO(cleanup, rc);
> -     cleanup_phase = 4;
>  
> +     cleanup_phase = 5;
>       rc = ldlm_init();
>       if (rc)
>               GOTO(cleanup, rc);
> -     cleanup_phase = 5;
>  
> +     cleanup_phase = 6;
>       rc = sptlrpc_init();
>       if (rc)
>               GOTO(cleanup, rc);
> @@ -115,19 +120,29 @@ cleanup:
>       switch (cleanup_phase) {
>       case 8:
>               ptlrpc_nrs_fini();
> +             /* Fall through */
>       case 7:
>               sptlrpc_fini();
> -     case 5:
> +             /* Fall through */
> +     case 6:
>               ldlm_exit();
> -     case 4:
> +             /* Fall through */
> +     case 5:
>               ptlrpc_stop_pinger();
> -     case 3:
> +             /* Fall through */
> +     case 4:
>               ptlrpc_connection_fini();
> -     case 2:
> +             /* Fall through */
> +     case 3:
>               ptlrpc_exit_portals();
> +             /* Fall through */
> +     case 2:
> +             ptlrpc_request_cache_fini();
> +             /* Fall through */
>       case 1:
>               ptlrpc_hr_fini();
>               req_layout_fini();
> +             /* Fall through */
>       default: ;
>       }
>  

Heh.  Oh wow.  That's horrible.  :P

Hopefully next time someone will fix this pile of monkey poo instead
just renumbering all the grains of corn.

regards,
dan carpenter


_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to