improvements for BufferStorage