I'm afraid we have a serious communication problem.
So I assume you have a list of render-able objects and you null them as a result of frustum culling.
Ok, fine, what about the various draw-buffers... you create one each visible object? Every frame? Yikes.
You cannot just say "I have this macro", I call it "somewhere" and conclude "it doesn't work". You claim to "release buffer in realtime" but we don't see any release call being issued in the code you provided, if not in complete isolation in line 2.