Upstream backports. Signed-off-by: Rosen Penev <rosenp@gmail.com> (cherry picked from commit 54266c99b2)
54266c99b2