-
Notifications
You must be signed in to change notification settings - Fork 142
Conversation
b0a858e
to
8bfd2c5
Compare
All UTs pass now. |
|
7649c7f
to
dc2e369
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Hello @andriytk do you have a Ubuntu-18.4 OVA? |
https://github.com/andriytk/cortx-motr/releases/tag/ubuntu18ova I got it. |
@huanghua78, yes - updated the description with the note about it. |
c428e52
to
bd6513f
Compare
libtool: link: gcc -fno-common -pipe -Wall -Werror -Wno-attributes -fno-strict-aliasing -fno-omit-frame-pointer -g -O2 -rdynamic -o be/tool/.libs/m0beck be/tool/be_tool_m0beck-beck.o ./motr/.libs/libmotr.so -pthread /usr/bin/ld: be/tool/be_tool_m0beck-beck.o: undefined reference to symbol 'yaml_parser_delete' //usr/lib/x86_64-linux-gnu/libyaml-0.so.2: error adding symbols: DSO missing from command line collect2: error: ld returned 1 exit status Solution: add YAML_LIBS to LDADD. Signed-off-by: Andriy Tkachuk <andriy.tkachuk@seagate.com>
/home/ant/motr/be/extmap.c: In function ‘emap_dump’: /home/ant/motr/be/extmap.c:158:1: error: the frame size of 1456 bytes is larger than 1024 bytes [-Werror=frame-larger-than=] /home/ant/motr/be/extmap.c: In function ‘be_emap_invariant’: /home/ant/motr/be/extmap.c:1051:1: error: the frame size of 1400 bytes is larger than 1024 bytes [-Werror=frame-larger-than=] /home/ant/motr/be/extmap.c: In function ‘m0_be_emap_dump’: /home/ant/motr/be/extmap.c:223:1: error: the frame size of 1480 bytes is larger than 1024 bytes [-Werror=frame-larger-than=] /home/ant/motr/be/extmap.c: In function ‘m0_be_emap_obj_delete’: /home/ant/motr/be/extmap.c:695:1: error: the frame size of 1408 bytes is larger than 1024 bytes [-Werror=frame-larger-than=] Solution: allocate large structs from heap. Signed-off-by: Andriy Tkachuk <andriy.tkachuk@seagate.com>
/home/ant/motr/conf/db.c: In function ‘confx_obj_dup’: /home/ant/motr/conf/db.c:245:1: error: the frame size of 1160 bytes is larger than 1024 bytes [-Werror=frame-larger-than=] /home/ant/motr/conf/db.c: In function ‘__confdb_free’: /home/ant/motr/conf/db.c:429:1: error: the frame size of 1192 bytes is larger than 1024 bytes [-Werror=frame-larger-than=] Solution: allocate large structs from heap. Signed-off-by: Andriy Tkachuk <andriy.tkachuk@seagate.com>
CC [M] /home/ant/motr/mdservice/md_fops.o /home/ant/motr/mdservice/md_fops.c: In function ‘m0_mdservice_fopts_init’: /home/ant/motr/mdservice/md_fops.c:255:1: error: the frame size of 1088 bytes is larger than 1024 bytes [-Werror=frame-larger-than=] /home/ant/motr/mdservice/md_fops.c: In function ‘m0_mdservice_rep_fopts_init’: /home/ant/motr/mdservice/md_fops.c:335:1: error: the frame size of 1088 bytes is larger than 1024 bytes [-Werror=frame-larger-than=] Solution: introduce and use M0_FOP_TYPE_INIT2() and M0_FOP_TYPE_INIT2_DECL macro which re-use the same variable on each M0_FOP_TYPE_INIT2() call instead of defining the new one on the stack each time it's called. Signed-off-by: Andriy Tkachuk <andriy.tkachuk@seagate.com>
CC [M] /home/ant/motr/rpc/item.o /home/ant/motr/rpc/item.c: In function ‘m0_rpc_item_module_init’: /home/ant/motr/rpc/item.c:133:1: error: the frame size of 1568 bytes is larger than 1024 bytes [-Werror=frame-larger-than=] Problem: the big m0_xcode_ctx local vars are used several times. Solution: restructure the usage of local vars and use several int vars to store different xcode_lengths for different items instead of several m0_xcode_ctx vars. Signed-off-by: Andriy Tkachuk <andriy.tkachuk@seagate.com>
CC [M] /home/ant/motr/addb2/ut/consumer.o /home/ant/motr/addb2/ut/consumer.c: In function ‘data_label’: /home/ant/motr/addb2/ut/consumer.c:202:1: error: the frame size of 1248 bytes is larger than 1024 bytes [-Werror=frame-larger-than=] Solution: decrease the size of small_record::ar_label[] array from 10 to 4. Signed-off-by: Andriy Tkachuk <andriy.tkachuk@seagate.com>
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Signed-off-by: Andriy Tkachuk <andriy.tkachuk@seagate.com>
Explicitly use the 'dummy' pointer to emphasise the point that the pointer is not used by the code. Signed-off-by: Andriy Tkachuk <andriy.tkachuk@seagate.com>
sns-cm-repair-ut service-startstop 0.47 sec 81 MiB service-init-fail 0.43 sec 78 MiB service-start-fail 0.46 sec 78 MiB iter-repair-single-file 2.68 sec 92 MiB iter-repair-multi-file 2.75 sec 103 MiB iter-repair-large-file-with-large-unit-size motr[46351]: dcf0 FATAL [lib/assert.c:50:m0_panic] panic: (({ typeof (timer->t_state) __x = (timer->t_state); ((__x) == (M0_TIMER_STOPPED) || ((__x) == (M0_TIMER_INITED))); })) at m0_timer_fini() (lib/timer.c:68) [git: sage-base-1.0-349-gacd623125] /var/motr/m0ut/m0trace.46351 Motr panic: (({ typeof (timer->t_state) __x = (timer->t_state); ((__x) == (M0_TIMER_STOPPED) || ((__x) == (M0_TIMER_INITED))); })) at m0_timer_fini() lib/timer.c:68 (errno: 4) (last failed: none) [git: sage-base-1.0-349-gacd623125] pid: 46351 /var/motr/m0ut/m0trace.46351 motr/.libs/libmotr.so.2(m0_arch_backtrace+0x2f)[0x7fc9fb47899f] motr/.libs/libmotr.so.2(m0_arch_panic+0xe5)[0x7fc9fb478b75] motr/.libs/libmotr.so.2(+0x365f4c)[0x7fc9fb466f4c] motr/.libs/libmotr.so.2(m0_timer_fini+0x8e)[0x7fc9fb46f0de] ut/.libs/libmotr-ut.so.0(+0x25d93f)[0x7fc9fc52493f] ut/.libs/libmotr-ut.so.0(+0x25de92)[0x7fc9fc524e92] ut/.libs/libmotr-ut.so.0(m0_ut_run+0x234)[0x7fc9fc5448e4] ut/.libs/m0ut(main+0x1312)[0x562a4cdb36c2] There is bug in the ut/cm.c code which may leave the timer uninitialised sometimes when iter_ut_fom_tick() immediately proceeds from the ITER_COMPLETE state to M0_FOM_PHASE_FINISH state without waiting. Solution: always initialise the timer unconditionally in the same function where it is finalised - at iter_run(). Signed-off-by: Andriy Tkachuk <andriy.tkachuk@seagate.com>
What is the equivalent file of "/var/log/messages" in Ubuntu?
|
Signed-off-by: Andriy Tkachuk <andriy.tkachuk@seagate.com>
|
Signed-off-by: Andriy Tkachuk <andriy.tkachuk@seagate.com>
Signed-off-by: Andriy Tkachuk <andriy.tkachuk@seagate.com>
This comment has been minimized.
This comment has been minimized.
@andriytk: Have you got the chance to check on ubuntu 20.04 version, |
@madhavemuri, no. Ubuntu-20 ships with 5.4 kernel version and might require a lot of porting work in our kernel space. |
The 02motr-single-node test passing usually takes 11 mins (according to the Jenkins history) and sometimes it fails due to the timeout, which is also happens to be 11 mins for this test. Increase the timeout to 15 mins to avoid the bogus failures. Signed-off-by: Andriy Tkachuk <andriy.tkachuk@seagate.com>
Signed-off-by: Andriy Tkachuk <andriy.tkachuk@seagate.com>
43b545e
to
4e879b0
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Jenkins CI Result : Motr#378Motr Test Summary
CppCheck SummaryCppcheck: No new warnings found 👍 |
"./scripts/m0 run-st 52*" passed locally in DevVM.
|
Yes, I've updated the OVA with genders also. |
Motr can be built and run on Ubuntu-18.04 server now.
The steps:
Install Lustre client:
a) download and install 3 packages from
https://downloads.whamcloud.com/public/lustre/lustre-2.12.6/ubuntu1804/client/ : source, modules and utils (last two are optional, see the note below);
b) unpack
/usr/src/lustre.tar.bz2
,configure --without-servers
and build it (make
).Note: if you wish, you can install Lustre bins after you build them with
make install
command instead of installing pre-built packages from Whamcloud. If you do so, don't forget to runsudo depmod
, otherwise the wrong lnet.ko might be taken from the standard linux-modules-extra package when the module is loaded. And it won't work with Motr.Install Motr deps:
Note: you can take the ready VM from here and skip the above two steps.
Build Motr:
Note: in the command above the Lustre sources were placed and built at /usr/src/lustre-2.12.6 directory, specify your directory there.
Now you can try to run some tests:
scripts/m0 run-ut
.scripts/m0 run-st 26motr-user-kernel-tests
.