US oil tops $90 a barrel for the first time since late July.