VirtualBox

Changeset 20429 in vbox for trunk/src/VBox/VMM


Ignore:
Timestamp:
Jun 9, 2009 11:45:08 AM (15 years ago)
Author:
vboxsync
Message:

tstPDMAsyncCompletion.cpp: Fixed header and a couple of variable names.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/testcase/tstPDMAsyncCompletion.cpp

    r20205 r20429  
    11/* $Id$ */
    22/** @file
    3  * Async completion Testcase.
    4  */
    5 
    6 /*
    7  * Copyright (C) 2008 Sun Microsystems, Inc.
    8  *
    9  * Sun Microsystems, Inc. confidential
    10  * All rights reserved
    11  */
    12 
    13 /*
     3 * PDM Asynchronous Completion Testcase.
     4 *
    145 * This testcase is for testing the async completion interface.
    156 * It implements a file copy program which uses the interface to copy the data.
    167 *
    178 * Use: ./tstPDMAsyncCompletion <source> <destination>
     9 */
     10
     11/*
     12 * Copyright (C) 2008-2009 Sun Microsystems, Inc.
     13 *
     14 * This file is part of VirtualBox Open Source Edition (OSE), as
     15 * available from http://www.virtualbox.org. This file is free software;
     16 * you can redistribute it and/or modify it under the terms of the GNU
     17 * General Public License (GPL) as published by the Free Software
     18 * Foundation, in version 2 as it comes in the "COPYING" file of the
     19 * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
     20 * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
     21 *
     22 * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
     23 * Clara, CA 95054 USA or visit http://www.sun.com if you need
     24 * additional information or have any questions.
    1825 */
    1926
     
    8087    {
    8188        RTPrintf(TESTCASE ": Usage is ./tstPDMAsyncCompletion <source> <dest>\n");
    82         rcRet++;
    83         return rcRet;
     89        return 1;
    8490    }
    8591
     
    104110        {
    105111            RTPrintf(TESTCASE ": Error while creating the template!! rc=%d\n", rc);
    106             rcRet++;
    107             return rcRet;
     112            return 1;
    108113        }
    109114
     
    136141        {
    137142            RTPrintf(TESTCASE ": Error while creating the destination!! rc=%d\n", rc);
     143            return 1;
    138144            rcRet++;
    139145            return rcRet;
     
    155161                int fReadPass = true;
    156162                uint64_t cbSrc, cbLeft;
    157                 size_t   uOffsetSrc = 0;
    158                 size_t   uOffsetDst = 0;
     163                size_t   offSrc = 0;
     164                size_t   offDst = 0;
    159165                uint32_t cTasksUsed = 0;
    160166
     
    167173                        if (fReadPass)
    168174                        {
    169                             cTasksUsed = (BUFFER_SIZE * NR_TASKS) <= (cbSrc - uOffsetSrc)
     175                            cTasksUsed = (BUFFER_SIZE * NR_TASKS) <= (cbSrc - offSrc)
    170176                                         ? NR_TASKS
    171                                          :   ((cbSrc - uOffsetSrc) / BUFFER_SIZE)
    172                                            +   ((cbSrc - uOffsetSrc) % BUFFER_SIZE) > 0
    173                                              ? 1
    174                                              : 0;
     177                                         :   ((cbSrc - offSrc) / BUFFER_SIZE)
     178                                           + ((cbSrc - offSrc) % BUFFER_SIZE) > 0
     179                                         ? 1
     180                                         : 0;
    175181
    176182                            g_cTasksLeft = cTasksUsed;
    177183
    178                             for (unsigned i = 0; i < cTasksUsed; i++)
     184                            for (uint32_t i = 0; i < cTasksUsed; i++)
    179185                            {
    180                                 size_t cbRead = ((size_t)uOffsetSrc + BUFFER_SIZE) <= cbSrc ? BUFFER_SIZE : cbSrc - uOffsetSrc;
     186                                size_t cbRead = ((size_t)offSrc + BUFFER_SIZE) <= cbSrc ? BUFFER_SIZE : cbSrc - offSrc;
    181187                                PDMDATASEG DataSeg;
    182188
     
    184190                                DataSeg.cbSeg = cbRead;
    185191
    186                                 rc = PDMR3AsyncCompletionEpRead(pEndpointSrc, uOffsetSrc, &DataSeg, 1, cbRead, NULL,
     192                                rc = PDMR3AsyncCompletionEpRead(pEndpointSrc, offSrc, &DataSeg, 1, cbRead, NULL,
    187193                                                                &g_AsyncCompletionTasks[i]);
    188194                                AssertRC(rc);
    189                                 uOffsetSrc += cbRead;
    190                                 if (uOffsetSrc == cbSrc)
     195                                offSrc += cbRead;
     196                                if (offSrc == cbSrc)
    191197                                    break;
    192198                            }
     
    196202                            g_cTasksLeft = cTasksUsed;
    197203
    198                             for (unsigned i = 0; i < cTasksUsed; i++)
     204                            for (uint32_t i = 0; i < cTasksUsed; i++)
    199205                            {
    200                                 size_t cbWrite = (uOffsetDst + BUFFER_SIZE) <= cbSrc ? BUFFER_SIZE : cbSrc - uOffsetDst;
     206                                size_t cbWrite = (offDst + BUFFER_SIZE) <= cbSrc ? BUFFER_SIZE : cbSrc - offDst;
    201207                                PDMDATASEG DataSeg;
    202208
     
    204210                                DataSeg.cbSeg = cbWrite;
    205211
    206                                 rc = PDMR3AsyncCompletionEpWrite(pEndpointDst, uOffsetDst, &DataSeg, 1, cbWrite, NULL,
     212                                rc = PDMR3AsyncCompletionEpWrite(pEndpointDst, offDst, &DataSeg, 1, cbWrite, NULL,
    207213                                                                 &g_AsyncCompletionTasks[i]);
    208214                                AssertRC(rc);
    209                                 uOffsetDst += cbWrite;
    210                                 if (uOffsetDst == cbSrc)
     215                                offDst += cbWrite;
     216                                if (offDst == cbSrc)
    211217                                    break;
    212218                            }
     
    216222                        AssertRC(rc);
    217223
    218                         if (!fReadPass && (uOffsetDst == cbSrc))
     224                        if (!fReadPass && (offDst == cbSrc))
    219225                            break;
    220226                        else if (fReadPass)
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette