]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
DEVEL15-windows-buf-overquota-20080728
authorJeffrey Altman <jaltman@secure-endpoints.com>
Tue, 29 Jul 2008 03:55:41 +0000 (03:55 +0000)
committerJeffrey Altman <jaltman@secure-endpoints.com>
Tue, 29 Jul 2008 03:55:41 +0000 (03:55 +0000)
LICENSE MIT

propagate overquota errors through buf_Write() and cm_FSync().

(cherry picked from commit 8cce5d2a61227da8623dcd08b11d997c66815cf1)

src/WINNT/afsd/cm_buf.c

index a305d12c219f31ac32e3c4ff22d9371fd9859ac9..e09d4e5fa93085e74ef32ad638b74be0692abb87 100644 (file)
@@ -714,7 +714,9 @@ long buf_CleanAsyncLocked(cm_buf_t *bp, cm_req_t *reqp)
         * because we aren't going to be able to write this data to the file
         * server.
         */
-       if (code == CM_ERROR_NOSUCHFILE || code == CM_ERROR_BADFD || code == CM_ERROR_NOACCESS){
+       if (code == CM_ERROR_NOSUCHFILE || code == CM_ERROR_BADFD || code == CM_ERROR_NOACCESS || 
+            code == CM_ERROR_QUOTA || code == CM_ERROR_SPACE || code == CM_ERROR_TOOBIG || 
+            code == CM_ERROR_READONLY || code == CM_ERROR_NOSUCHPATH){
            bp->flags &= ~CM_BUF_DIRTY;
            bp->flags |= CM_BUF_ERROR;
             bp->dirty_offset = 0;
@@ -722,6 +724,7 @@ long buf_CleanAsyncLocked(cm_buf_t *bp, cm_req_t *reqp)
            bp->error = code;
            bp->dataVersion = CM_BUF_VERSION_BAD; /* bad */
            bp->dirtyCounter++;
+            break;
        }
 
 #ifdef DISKCACHE95