Introduce a new host client state, MEI_FILE_UNINITIALIZED,
to distinguish client objects that was unlinked,
but not destroyed and can be linked again.
Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
        INIT_LIST_HEAD(&cl->rd_pending);
        INIT_LIST_HEAD(&cl->link);
        cl->writing_state = MEI_IDLE;
-       cl->state = MEI_FILE_INITIALIZING;
+       cl->state = MEI_FILE_UNINITIALIZED;
        cl->dev = dev;
 }
 
 
        list_del_init(&cl->link);
 
-       cl->state = MEI_FILE_INITIALIZING;
+       cl->state = MEI_FILE_UNINITIALIZED;
 
        return 0;
 }
        struct mei_device *dev = cl->dev;
 
        if (cl->state == MEI_FILE_DISCONNECTED ||
-           cl->state == MEI_FILE_INITIALIZING)
+           cl->state <= MEI_FILE_INITIALIZING)
                return;
 
        cl->state = MEI_FILE_DISCONNECTED;
 
 
 /* File state */
 enum file_state {
-       MEI_FILE_INITIALIZING = 0,
+       MEI_FILE_UNINITIALIZED = 0,
+       MEI_FILE_INITIALIZING,
        MEI_FILE_CONNECTING,
        MEI_FILE_CONNECTED,
        MEI_FILE_DISCONNECTING,