revise buffermanager