glBufferData performance quirk

I just found a strange performance quirk. When using VBOs, as in the simple GL example, and you supply a pointer to glBufferData, performance drops significantly (compared with supplying a NULL pointer, meaning only allocating, no actual buffering).
Is there any explanation for this behaviour?