src/disksim_logorg.c ------------------------- @@ -105,6 +105,7 @@ #include "modules/modules.h" #define MAX_QUEUE_LENGTH 10000 +#define SSD_LOGORG 0 /* read-only globals used during readparams phase */ @@ -759,6 +754,7 @@ /* Every request must be covered by a logorg */ if (logorgno == -1) { - fprintf (stderr, "unexpected request location: devno %x, blkno %d, bcount %d\n", curr->devno, curr->blkno, curr->bcount); + //fprintf (stderr, "unexpected request location: devno %x, blkno %d, bcount %d\n", curr->devno, curr->blkno, curr->bcount); + logorgno = SSD_LOGORG; } ASSERT(logorgno != -1); maptype = logorgs[logorgno]->maptype; @@ -942,6 +938,9 @@ } } } + if(logorgno == -1) { + logorgno = SSD_LOGORG; + } ASSERT(logorgno != -1); tmp = logorg_show_buf_from_outstandq(logorgs[logorgno], buf, opid); if (tmp) { ssdmodel/ssd.c ------------------------- @@ -22,6 +22,8 @@ #define _strdup strdup #endif +#define MAXDEVICES 2 + static void ssd_request_complete(ioreq_event *curr); static void ssd_media_access_request(ioreq_event *curr); @@ -30,8 +32,8 @@ struct ssd *s; ASSERT1((devno >= 0) && (devno < MAXDEVICES), "devno", devno); - s = disksim->ssdinfo->ssds[devno]; - return (disksim->ssdinfo->ssds[devno]); + s = disksim->ssdinfo->ssds[0]; + return (disksim->ssdinfo->ssds[0]); } int ssd_set_depth (int devno, int inbusno, int depth, int slotno) @@ -876,7 +878,7 @@ static void ssd_completion_done (ioreq_event *curr) { ssd_t *currdisk = getssd (curr->devno); - ssd_assert_current_activity(currdisk, curr); + //ssd_assert_current_activity(currdisk, curr); // fprintf (outputfile, "Entering ssd_completion for disk %d: %12.6f\n", currdisk->devno, simtime); @@ -1401,7 +1403,7 @@ diskcnt = 0; queuecnt = 0; - for (i=0; iqueue; @@ -1421,7 +1423,7 @@ ioqueue_printstats(queueset, queuecnt, prefix); diskcnt = 0; - for (i=0; i