We whould not migrate linkto and commit-hash xattrs on tier promotion/demotion. If we do this, we risk referring to a subvolume that does not exist on the destination tier.
It does not appear the linkto xattr is transferred on file migration. /* remove the 'linkto' xattr from the destination */ ret = syncop_fremovexattr (to, dst_fd, conf->link_xattr_name, 0, NULL); if (ret) { gf_log (this->name, GF_LOG_WARNING, "%s: failed to perform removexattr on %s (%s)", loc->path, to->name, strerror (-ret)); ret = -1; }