backport to 2.10
merge branch