[Disksim-users] Getting FlashSim to work with DiskSim3.0

Jonathan Tjioe jontjioe at gmail.com
Mon Dec 6 00:42:58 EST 2010


I got it working! I'll write up the instructions for what I had to do and
send it out later this week.

Thanks!
Jonathan

On Sun, Dec 5, 2010 at 10:26 AM, Jonathan Tjioe <jontjioe at gmail.com> wrote:

> All,
>
> Here is an update with the exact error message I get. So after I have
> DiskSim 3.0 working, I backed up the DiskSim src directory:
> cd ~/disksim/disksim-3.0
> mv src src_orig
>
> I then put src.release (from FlashSim) to src (in DiskSim directory):
> cp -pR /tmp/src.release ~/disksim/disksim-3.0/src
>
> I updated my .paths and .paths.in accordingly inside
> ~/disksim/disksim-3.0/src:
> #update the LIBPARAM_PREFIX and LIBDDBG_PREFIX in the .paths.in file to
> have path of disksim directory
> export LIBPARAM_PREFIX=/home/jontjioe/disksim/disksim-3.0/libparam
> export LIBDDBG_PREFIX=/home/jontjioe/disksim/disksim-3.0/libddbg
> export DISKMODEL_PREFIX=/home/jontjioe/disksim/disksim-3.0/diskmodel
>
> cp .paths.in .paths
>
> And then, I run the patch which updates dftl.c, disksim_logorg.c, fast.c,
> flash.c, pagemap.c, and syssim_driver.c:
>  cd ~/disksim/disksim-3.0/src
> patch -p1 -i flashsim-20100324.patch
>
> I then attempted to compile the src directory:
> cd ~/disksim/disksim-3.0/src
> make
>
>  This is the error I get:
> <<
> jontjioe at ubuntu:~/disksim/disksim-3.0/src$ make
> make -C modules
> make[1]: Entering directory
> `/home/jontjioe/disksim/disksim-3.0/src/modules'
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim bus.modspec
> indent disksim_bus_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim ctlr.modspec
> indent disksim_ctlr_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim
> iodriver.modspec
> indent disksim_iodriver_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim ioqueue.modspec
>
> indent disksim_ioqueue_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim disk.modspec
> indent disksim_disk_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim
> simpledisk.modspec
> indent disksim_simpledisk_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim
> simpleflash.modspec
> indent disksim_simpleflash_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim
> device_stats.modspec
> indent disksim_device_stats_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim
> bus_stats.modspec
> indent disksim_bus_stats_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim
> ctlr_stats.modspec
> indent disksim_ctlr_stats_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim
> iodriver_stats.modspec
> indent disksim_iodriver_stats_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim
> pf_stats.modspec
> indent disksim_pf_stats_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim global.modspec
> indent disksim_global_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim stats.modspec
> indent disksim_stats_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim syncset.modspec
>
> indent disksim_syncset_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim
> synthgen.modspec
> indent disksim_synthgen_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim synthio.modspec
>
> indent disksim_synthio_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim logorg.modspec
> indent disksim_logorg_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim pf.modspec
> indent disksim_pf_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim
> cachemem.modspec
> indent disksim_cachemem_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim
> cachedev.modspec
> indent disksim_cachedev_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim device.modspec
> indent disksim_device_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim iosim.modspec
> indent disksim_iosim_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/mod.pl disksim iomap.modspec
> indent disksim_iomap_param.c || true
> /bin/sh: indent: not found
> /home/jontjioe/disksim/disksim-3.0/libparam/make_modules_h.pl disksim
> *.modspec > modules.h
> make[1]: Leaving directory `/home/jontjioe/disksim/disksim-3.0/src/modules'
> gcc -Wall -Wno-unused -MD
> -I/home/jontjioe/disksim/disksim-3.0/diskmodel/include
> -I/home/jontjioe/disksim/disksim-3.0/libparam/include
> -I/home/jontjioe/disksim/disksim-3.0/libddbg/include -g -DASSERTS
> -D_INLINE -DFSIM_DEBUG -g   -c -o disksim_main.o disksim_main.c
> In file included from disksim_global.h:107,
>                  from disksim_main.c:58:
> inline.h:41:8: warning: extra tokens at end of #endif directive
> inline.h:43:8: warning: extra tokens at end of #endif directive
> In file included from fast.h:11,
>                  from ssd_interface.h:14,
>                  from disksim_main.c:60:
> type.h:8:1: warning: "ASSERT" redefined
> In file included from disksim_global.h:141,
>                  from disksim_main.c:58:
> disksim_assertlib.h:116:1: warning: this is the location of the previous
> definition
> disksim_main.c: In function `warmFlashsynth':
> disksim_main.c:70: warning: implicit declaration of function
> `opagemap_reset'
> disksim_main.c: In function `warmFlash':
> disksim_main.c:91: warning: int format, long int arg (arg 5)
> gcc -Wall -Wno-unused -MD -c
> -I/home/jontjioe/disksim/disksim-3.0/diskmodel/include
> -I/home/jontjioe/disksim/disksim-3.0/libparam/include
> -I/home/jontjioe/disksim/disksim-3.0/libddbg/include -g -DASSERTS
> -D_INLINE -DFSIM_DEBUG -g disksim.c -o disksim.o
> In file included from disksim_global.h:107,
>                  from disksim.c:101:
> inline.h:41:8: warning: extra tokens at end of #endif directive
> inline.h:43:8: warning: extra tokens at end of #endif directive
> In file included from config.h:36,
>                  from disksim.c:105:
> /home/jontjioe/disksim/disksim-3.0/libddbg/include/libddbg/libddbg.h:106:7:
> warning: extra tokens at end of #else directive
> In file included from fast.h:11,
>                  from ssd_interface.h:14,
>                  from disksim.c:120:
> type.h:8:1: warning: "ASSERT" redefined
> In file included from disksim_global.h:141,
>                  from disksim.c:101:
> disksim_assertlib.h:116:1: warning: this is the location of the previous
> definition
> In file included from disksim.c:493:
> modules/disksim_global_param.c:106:23: missing terminating " character
> modules/disksim_global_param.c:107:1: missing terminating " character
> In file included from disksim.c:493:
> modules/disksim_global_param.c: In function `disksim_global_loadparams':
> modules/disksim_global_param.c:108: error: syntax error before "return"
> modules/disksim_global_param.c:113:1: warning: no newline at end of file
> disksim.c: In function `disksim_setup_disksim':
> disksim.c:942: warning: implicit declaration of function
> `iosim_initialize_iosim_info'
> make: *** [disksim.o] Error 1
> >>
>
> Thanks in advance for your help,
> Jonathan
>
>
> On Sat, Dec 4, 2010 at 11:45 AM, Jonathan Tjioe <jontjioe at gmail.com>wrote:
>
>> All,
>>
>> I am trying to use FlashSim in conjunction with DiskSim3.0. High-level
>> procedures to set this up are described here:
>>
>> http://csl.cse.psu.edu/?q=node/322
>>
>> This will provide me with an environment to simulate DFTL, Page Mapping
>> FTL, and FAST.
>>
>> The first step is to get DiskSim3.0 installed and working. I was able to
>> get DiskSim3.0 installed, configured, and compiled successfully using the
>> procedures that are posted here:
>>
>> http://www.pdl.cmu.edu/DiskSim/Compiling_DiskSim3.0_v1.0.pdf
>>
>> However, I was not sure how to complete the remaining steps on
>> http://csl.cse.psu.edu/?q=node/322 to get FlashSim working correctly. The
>> instructions say to extract src.release.tar.gz which I did. But am I
>> supposed to get rid of my existing (and correctly functioning)
>> ~/disksim-3.0/src directory and replace it with the src.release directory? I
>> wasn't sure if I should get rid of it or copy over it with the new
>> src.release contents.
>>
>> Also, after that is resolved, what is the proper command I should use to
>> correctly "make" the files?
>>
>> Any help is greatly appreciated.
>>
>> Thanks.
>> Jonathan
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.andrew.cmu.edu/pipermail/disksim-users/attachments/20101205/f3c8b95c/attachment.html>


More information about the Disksim-users mailing list