It turns out that the optimized vrestore on syscall path has not been merged yet. I think this patch has not gotten enough attention and was lost long ago. It seems not able to apply directly on current head. I can resend on top of the tree after we settle down the discussion.