Does glTexImage2D use or copy the pixel data pointed to by the last parameter?
I think it copies the data. At least in my apps on Windows with nVidia drivers I can discard or reuse the memory allocated to load a texture. And these apps also run on Matrox, S3 and ATI implementations of OGL. There is also nothing written in the OGL Reference that you have to keep the texture in memory by yourself.