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

Jonathan Tjioe jontjioe at gmail.com
Sun Dec 5 13:26:43 EST 2010


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/56498433/attachment.html>


More information about the Disksim-users mailing list