/* set fid protocol-specific info */
        void (*set_fid)(struct cifsFileInfo *, struct cifs_fid *, __u32);
        /* close a file */
-       int (*close)(const unsigned int, struct cifs_tcon *, struct cifs_fid *);
+       void (*close)(const unsigned int, struct cifs_tcon *,
+                     struct cifs_fid *);
        /* send a flush request to the server */
        int (*flush)(const unsigned int, struct cifs_tcon *, struct cifs_fid *);
        /* async read from the server */
 
        if (!tcon->need_reconnect && !cifs_file->invalidHandle) {
                struct TCP_Server_Info *server = tcon->ses->server;
                unsigned int xid;
-               int rc = -ENOSYS;
 
                xid = get_xid();
                if (server->ops->close)
-                       rc = server->ops->close(xid, tcon, &cifs_file->fid);
-               free_xid(xid);
+                       server->ops->close(xid, tcon, &cifs_file->fid);
+               _free_xid(xid);
        }
 
        cifs_del_pending_open(&open);
 
        cinode->can_cache_brlcks = cinode->clientCanCacheAll;
 }
 
-static int
+static void
 cifs_close_file(const unsigned int xid, struct cifs_tcon *tcon,
                struct cifs_fid *fid)
 {
-       return CIFSSMBClose(xid, tcon, fid->netfid);
+       CIFSSMBClose(xid, tcon, fid->netfid);
 }
 
 static int
 
        cinode->can_cache_brlcks = cinode->clientCanCacheAll;
 }
 
-static int
+static void
 smb2_close_file(const unsigned int xid, struct cifs_tcon *tcon,
                struct cifs_fid *fid)
 {
-       return SMB2_close(xid, tcon, fid->persistent_fid, fid->volatile_fid);
+       SMB2_close(xid, tcon, fid->persistent_fid, fid->volatile_fid);
 }
 
 static int