Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

32 bit alignment issues #257

Closed
stonier opened this issue May 15, 2013 · 4 comments
Closed

32 bit alignment issues #257

stonier opened this issue May 15, 2013 · 4 comments
Labels
Milestone

Comments

@stonier
Copy link
Member

stonier commented May 15, 2013

Seem to have a problem in 32 bit alignment for eigen classes in bumper2pc. Probably missing that eigen macro in a class somewhere.

Bug reported by caroline on ros answers.

Error output:

nodelet: /usr/include/eigen3/Eigen/src/Core/DenseStorage.h:69: Eigen::internal::plain_array<T, Size, MatrixOrArrayOptions, 16>::plain_array() [with T = float, int Size = 4, int MatrixOrArrayOptions = 0]: Assertion `(reinterpret_cast<size_t>(array) & 0xf) == 0 && "this assertion is explained here: " "http://eigen.tuxfamily.org/dox-devel/TopicUnalignedArrayAssert.html" " **** READ THIS WEB PAGE !!! ****"' failed.
[FATAL] [1368451090.542690660]: Service call failed!
[FATAL] [1368451090.544932863]: Service call failed!
[FATAL] [1368451090.544932853]: Service call failed!
[mobile_base_nodelet_manager-5] process has died [pid 26924, exit code -6, cmd /opt/ros/groovy/lib/nodelet/nodelet manager __name:=mobile_base_nodelet_manager __log:=/home/turtlebot/.ros/log/687078bc-bbcf-11e2-97f0-446d57c545ae/mobile_base_nodelet_manager-5.log].
log file: /home/turtlebot/.ros/log/687078bc-bbcf-11e2-97f0-446d57c545ae/mobile_base_nodelet_manager-5*.log
[bumper2pointcloud-9] process has died [pid 27236, exit code 255, cmd /opt/ros/groovy/lib/nodelet/nodelet load kobuki_bumper2pc/Bumper2PcNodelet mobile_base_nodelet_manager bumper2pointcloud/pointcloud:=mobile_base/sensors/bumper_pointcloud bumper2pointcloud/cliff_events:=mobile_base/events/cliff bumper2pointcloud/bumper_events:=mobile_base/events/bumper __name:=bumper2pointcloud __log:=/home/turtlebot/.ros/log/687078bc-bbcf-11e2-97f0-446d57c545ae/bumper2pointcloud-9.log].
@ghost ghost assigned corot May 15, 2013
@stonier
Copy link
Member Author

stonier commented May 15, 2013

Usually from cause 1 or 2 on http://eigen.tuxfamily.org/dox/TopicUnalignedArrayAssert.html

corot pushed a commit that referenced this issue May 20, 2013
@corot
Copy link
Collaborator

corot commented May 20, 2013

Case 1: Structures having Eigen objects as members
Adding EIGEN_MAKE_ALIGNED_OPERATOR_NEW to class declaration solves the problem

@corot corot closed this as completed May 20, 2013
corot pushed a commit that referenced this issue May 20, 2013
@corot corot reopened this Jul 19, 2013
@corot
Copy link
Collaborator

corot commented Jul 19, 2013

Believe or not, this is still alive: still can fail for very, very unlucky people.

Looks like a deeper problem in ecl. By now, the only way to suppress it is to remove the eigen-inheritor attribute.

corot added a commit that referenced this issue Aug 12, 2013
eigen-inheritor attribute, as it's not really needed. It was already
commented in a previous commit; here I just cleanup and provide a
description of the fix.

But the fact is that something is wrong on ecl. We keep track on
stonier/ecl_core#30.
@corot
Copy link
Collaborator

corot commented Aug 12, 2013

The root of the problem remains, but now it's an ecl problem.

Btw, auto-docking code is a bit messy and should be cleanuped at the first opportunity.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants