I'm trying to compile Yaffs direct on a 64-bit linux machine in the
emulation mode, using the Makefile in the direct sub-directory.
1. When I tried to run the default test in direct/dtest.c-
resize_stress_test_no_grow("/flash/flash",20);
I got an error message: "yaffs_Tnode should be 32 but is 64."
When I change the following line
#define YAFFS_NTNODES_INTERNAL (YAFFS_NTNODES_LEVEL0 / 2)
to
#define YAFFS_NTNODES_INTERNAL (YAFFS_NTNODES_LEVEL0 / 4)
the test executes fine. Could the problem have something to do with
the fact my machine is 64-bit?
2. Even after this I'm still having problems with all the following
tests (last tests in dtest.c) -
long_test_on_path("/ram2k");
long_test_on_path("/flash");
simple_rw_test("/flash/flash");
fill_disk_test("/flash/flash");
rename_over_test("/flash");
...
I keep getting a segmentation fault, and trying to trace it led me to
the return statement of yaffs_write for no apparent reason.
What could be the reason? can it be it's again related to the 64-bit issue?
thank you