unsigned long when_sent; /* time when smb send finished */
        unsigned long when_received; /* when demux complete (taken off wire) */
 #endif
-       struct cifsSesInfo *ses;        /* smb was sent to this server */
        struct task_struct *tsk;        /* task waiting for response */
        struct smb_hdr *resp_buf;       /* response buffer */
        int midState;   /* wish this were enum but can not pass to wait_event */
 
 extern struct kmem_cache *cifs_oplock_cachep;
 
 static struct mid_q_entry *
-AllocMidQEntry(const struct smb_hdr *smb_buffer, struct cifsSesInfo *ses)
+AllocMidQEntry(const struct smb_hdr *smb_buffer, struct TCP_Server_Info *server)
 {
        struct mid_q_entry *temp;
 
-       if (ses == NULL) {
-               cERROR(1, ("Null session passed in to AllocMidQEntry"));
-               return NULL;
-       }
-       if (ses->server == NULL) {
+       if (server == NULL) {
                cERROR(1, ("Null TCP session in AllocMidQEntry"));
                return NULL;
        }
        /*      do_gettimeofday(&temp->when_sent);*/ /* easier to use jiffies */
                /* when mid allocated can be before when sent */
                temp->when_alloc = jiffies;
-               temp->ses = ses;
                temp->tsk = current;
        }
 
        spin_lock(&GlobalMid_Lock);
-       list_add_tail(&temp->qhead, &ses->server->pending_mid_q);
+       list_add_tail(&temp->qhead, &server->pending_mid_q);
        atomic_inc(&midCount);
        temp->midState = MID_REQUEST_ALLOCATED;
        spin_unlock(&GlobalMid_Lock);
                        return -EAGAIN;
                /* else ok - we are setting up session */
        }
-       *ppmidQ = AllocMidQEntry(in_buf, ses);
+       *ppmidQ = AllocMidQEntry(in_buf, ses->server);
        if (*ppmidQ == NULL)
                return -ENOMEM;
        return 0;