Gazebo 11.1 on Fedora 33 and X2Go extreme high CPU; Resource temporarily unavailable in strace
by Robert Kudyba
I posted this on Fedora's Bugzilla,
https://bugzilla.redhat.com/show_bug.cgi?id=1881488 but it was closed. Not
sure if X2Go or Gazebo is the problem.
Running the following:
gazebo-11.1.0-2.fc33.x86_64, 5.9.16-200.fc33.x86_64
From top:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
167977 myuser 20 0 19.6g 325912 148004 S 882.6 0.2 5:33.38 gzclient
And from strace, wouldn't all of the "Resource temporarily
unavailable" be troublesome?
futex(0x557771fbecec, FUTEX_WAIT_PRIVATE, 0, NULL) = 0
futex(0x557771fbec98, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=32, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=32, revents=POLLOUT}])
writev(32, [{iov_base="\201\3\n\0\4\0\200\2\3\0`\2\300\3@\2\0\0\0\0\300\3@\2\0\0\0\0\30\2\0\2"...,
iov_len=40}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3)
= 40
recvmsg(32, {msg_namelen=0}, 0) = -1 EAGAIN (Resource
temporarily unavailable)
recvmsg(32, {msg_namelen=0}, 0) = -1 EAGAIN (Resource
temporarily unavailable)
poll([{fd=37, events=POLLIN}, {fd=38, events=POLLIN}, {fd=45,
events=POLLIN}], 3, 0) = 0 (Timeout)
write(37, "\1\0\0\0\0\0\0\0", 8) = 8
write(37, "\1\0\0\0\0\0\0\0", 8) = 8
poll([{fd=37, events=POLLIN}, {fd=38, events=POLLIN}, {fd=45,
events=POLLIN}], 3, 0) = 1 ([{fd=37, revents=POLLIN}])
read(37, "\2\0\0\0\0\0\0\0", 16) = 8
futex(0x557771fbecec, FUTEX_WAIT_PRIVATE, 0, NULL) = 0
futex(0x557771fbec98, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=32, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=32, revents=POLLOUT}])
writev(32, [{iov_base="\16\3\2\0\4\0\200\2", iov_len=8},
{iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 8
poll([{fd=32, events=POLLIN}], 1, -1) = 1 ([{fd=32, revents=POLLIN}])
recvmsg(32, {msg_name=NULL, msg_namelen=0,
msg_iov=[{iov_base="\1\30=\5\0\0\0\0\236\0\0\0\0\0\0\0\254\3@\2\0\0\0\0\0\0\0\0\0\0\0\0",
iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
futex(0x557771fbecec, FUTEX_WAIT_PRIVATE, 0, NULL) = 0
futex(0x557771fbec98, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=32, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=32, revents=POLLOUT}])
writev(32, [{iov_base="\201\3\n\0\4\0\200\2\3\0`\2\300\3@\2\0\0\0\0\300\3@\2\0\0\0\0\30\2\0\2"...,
iov_len=40}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3)
= 40
recvmsg(32, {msg_namelen=0}, 0) = -1 EAGAIN (Resource
temporarily unavailable)
recvmsg(32, {msg_namelen=0}, 0) = -1 EAGAIN (Resource
temporarily unavailable)
poll([{fd=37, events=POLLIN}, {fd=38, events=POLLIN}, {fd=45,
events=POLLIN}], 3, 0) = 0 (Timeout)
write(37, "\1\0\0\0\0\0\0\0", 8) = 8
write(37, "\1\0\0\0\0\0\0\0", 8) = 8
poll([{fd=37, events=POLLIN}, {fd=38, events=POLLIN}, {fd=45,
events=POLLIN}], 3, 0) = 1 ([{fd=37, revents=POLLIN}])
read(37, "\2\0\0\0\0\0\0\0", 16) = 8
write(37, "\1\0\0\0\0\0\0\0", 8) = 8
futex(0x7f82a1f3f958, FUTEX_WAKE_PRIVATE, 2147483647) = 1
2 years, 4 months
New Contributor
by Suhaas Joshi
Hello everyone! My name is Suhaas. I will be applying to Fedora Project
under GSOC 2021 and would like to start contributing, hopefully to the
robotics SIG, since I am eager to explore robotics a bit. I am proficient
in C++ and linear and tree data structures. I also know the basics of
Python and supervised Machine Learning, though I am not quite as proficient
in them. My timezone is Indian Standard Time(IST).
Please let me know if and how I can start contributing :)
Thanks
Suhaas
2 years, 4 months
Gazebo 11 problem with protobuf version (3.12.4)
by Eric Masseran
Hi,
I am using gazebo on Fedora 33, I installed the version 11 from
https://copr.fedorainfracloud.org/coprs/g/robotics-sig/gazebo-latest/.
As I was following this tutorial to make a plugin (
http://gazebosim.org/tutorials?tut=plugins_hello_world&cat=write_plugin) I
got a compilation error:
```
|
AuxillaryParseTableField
Dans le fichier inclus depuis
/usr/include/gazebo-11/gazebo/msgs/MessageTypes.hh:135,
depuis /usr/include/gazebo-11/gazebo/msgs/msgs.hh:35,
depuis /usr/include/gazebo-11/gazebo/gazebo_core.hh:20,
depuis /usr/include/gazebo-11/gazebo/gazebo.hh:20,
depuis
/home/eric/GitGalaxy/robotics/gazebo/plugin_tutorial/hello_world.cc:1:
/usr/include/gazebo-11/gazebo/msgs/wrench_stamped.pb.h:58:51: erreur:
« AuxiliaryParseTableField » dans l'espace de noms
« google::protobuf::internal » ne nomme pas un type; vouliez-vous utiliser
« AuxillaryParseTableField » ?
58 | static const
::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[]
|
^~~~~~~~~~~~~~~~~~~~~~~~
|
AuxillaryParseTableField
```
After investigating, it seems that it is a protobuf problem.
This commit changed the spelling involved in the error:
https://github.com/protocolbuffers/protobuf/commit/2ae7cf0e03c3469973e592...
The commit is tagged with the version 3.12.3 (the version probably used for
the gazebo compilation). However, the tagging was wrong for 3.12.X and
should not include this commit. So the team released a 3.12.4 version
without this commit and some others. (
https://github.com/protocolbuffers/protobuf/issues/7632#issuecomment-6667...
)
Right now Fedora 33 has the protobuf version 3.12.4 in the official
repository so it seems incompatible.
So, my question is it possible to build the packages again in
https://copr.fedorainfracloud.org/coprs/g/robotics-sig/gazebo-latest with
the actual protobuf version in F33 repository (3.12.4) ?
Regards,
Eric
2 years, 4 months