CHROMIUM: Revert "WIP: glretrace: use samples value recorded in trace to set MSAA samples"

This breaks some of our traces.

BUG=b:230794600
TEST=build in borealis and run plague_inc_evolved trace

This reverts commit 81dfede7f193567650894cabf2c54b1d35a370ce.

Change-Id: If8238620394db50b2ea1fe4e40191d538aaa78fd
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/apitrace/+/3630382
Commit-Queue: Ilja Friedel <ihf@chromium.org>
Tested-by: Po-Hsien Wang <pwang@chromium.org>
Auto-Submit: Po-Hsien Wang <pwang@chromium.org>
Commit-Queue: Po-Hsien Wang <pwang@chromium.org>
Reviewed-by: Ilja Friedel <ihf@chromium.org>
diff --git a/helpers/glfeatures.hpp b/helpers/glfeatures.hpp
index 93910f2..bd23c3a 100644
--- a/helpers/glfeatures.hpp
+++ b/helpers/glfeatures.hpp
@@ -49,7 +49,6 @@
 struct Profile {
     unsigned major:8;
     unsigned minor:8;
-    unsigned samples:8;
     unsigned api:1;
     unsigned core:1;
     unsigned forwardCompatible:1;
@@ -65,7 +64,6 @@
         api = _api;
         major = _major;
         minor = _minor;
-        samples = 1;
         core = _core;
         forwardCompatible = _forwardCompatible;
     }
diff --git a/retrace/glretrace.hpp b/retrace/glretrace.hpp
index eabe181..83f386c 100644
--- a/retrace/glretrace.hpp
+++ b/retrace/glretrace.hpp
@@ -132,9 +132,6 @@
 int
 parseAttrib(const trace::Value *attribs, int param, int default_ = 0, int terminator = 0);
 
-void
-setSamples(trace::Call& call, int samples);
-
 glfeatures::Profile
 parseContextAttribList(const trace::Value *attribs);
 
diff --git a/retrace/glretrace_cgl.cpp b/retrace/glretrace_cgl.cpp
index b790665..ce97489 100644
--- a/retrace/glretrace_cgl.cpp
+++ b/retrace/glretrace_cgl.cpp
@@ -90,15 +90,12 @@
 
 typedef std::map<unsigned long long, glws::Drawable *> DrawableMap;
 typedef std::map<unsigned long long, Context *> ContextMap;
-typedef std::map<unsigned long long, int> FBConfigMap;
 
 // sid -> Drawable* map
 static DrawableMap drawable_map;
 
 static DrawableMap pbuffer_map;
 
-static FBConfigMap fbconfig_map;
-
 // ctx -> Context* map
 static ContextMap context_map;
 
@@ -173,8 +170,6 @@
 
     bool singleBuffer = true;
     int profile = 0;
-    int sample_buffers = 0;
-    int samples = 0;
 
     const trace::Array * attribs = call.arg(0).toArray();
     if (attribs) {
@@ -231,18 +226,14 @@
             case kCGLPFAStencilSize:
             case kCGLPFAAuxBuffers:
             case kCGLPFAAccumSize:
+            case kCGLPFASampleBuffers:
+            case kCGLPFASamples:
             case kCGLPFARendererID:
             case kCGLPFADisplayMask:
             case kCGLPFAVirtualScreenCount:
                 ++i;
                 break;
 
-            case kCGLPFASampleBuffers:
-                sample_buffers = attribs->values[i++]->toSInt();
-                break;
-            case kCGLPFASamples:
-                samples = attribs->values[i++]->toSInt();
-                break;
             case kCGLPFAOpenGLProfile:
                 profile = attribs->values[i++]->toSInt();
                 break;
@@ -279,9 +270,6 @@
     // XXX: Generalize this, don't override command line options.
     retrace::doubleBuffer = !singleBuffer;
 
-    if (sample_buffers && samples > 0)
-        pixelFormat->profile.samples = samples;
-
     retrace::addObj(call, pix, pixelFormat);
 }
 
diff --git a/retrace/glretrace_egl.cpp b/retrace/glretrace_egl.cpp
index be2244e..e23b67a 100644
--- a/retrace/glretrace_egl.cpp
+++ b/retrace/glretrace_egl.cpp
@@ -146,9 +146,6 @@
         }
     }
 
-    if (parseAttrib(attrib_array, EGL_SAMPLE_BUFFERS))
-        profile.samples = parseAttrib(attrib_array, EGL_SAMPLES);
-
     unsigned num_config = num_config_ptr->values[0]->toUInt();
     for (unsigned i = 0; i < num_config; ++i) {
         unsigned long long orig_config = config_array->values[i]->toUIntPtr();
diff --git a/retrace/glretrace_glx.cpp b/retrace/glretrace_glx.cpp
index d61343a..1464825 100644
--- a/retrace/glretrace_glx.cpp
+++ b/retrace/glretrace_glx.cpp
@@ -32,8 +32,6 @@
 
 #define GLX_PBUFFER_HEIGHT 0x8040
 #define GLX_PBUFFER_WIDTH 0x8041
-#define GLX_SAMPLE_BUFFERS_ARB 100000
-#define GLX_SAMPLES_ARB 100001
 
 #endif /* !HAVE_X11 */
 
@@ -43,11 +41,9 @@
 
 typedef std::map<unsigned long, glws::Drawable *> DrawableMap;
 typedef std::map<unsigned long long, Context *> ContextMap;
-typedef std::map<unsigned long long, int> FBConfigMap;
-
 static DrawableMap drawable_map;
 static ContextMap context_map;
-static FBConfigMap fbconfig_map;
+
 
 static glws::Drawable *
 getDrawable(unsigned long drawable_id, Context *ctx) {
@@ -103,9 +99,6 @@
     const trace::Value * attrib_list = &call.arg(4);
     glfeatures::Profile profile = parseContextAttribList(attrib_list);
 
-    auto it = fbconfig_map.find(call.arg(1).toUInt());
-    if (it != fbconfig_map.end())
-        profile.samples = it->second;
     Context *context = glretrace::createContext(share_context, profile);
     context_map[orig_context] = context;
 }
@@ -179,14 +172,7 @@
 
     Context *share_context = getContext(call.arg(3).toUIntPtr());
 
-    glfeatures::Profile profile = defaultProfile;
-
-    auto it = fbconfig_map.find(call.arg(1).toUInt());
-    if (it != fbconfig_map.end())
-        profile.samples = it->second;
-
-
-    Context *context = glretrace::createContext(share_context, profile);
+    Context *context = glretrace::createContext(share_context);
     context_map[orig_context] = context;
 }
 
@@ -231,34 +217,6 @@
     glretrace::makeCurrent(call, new_drawable, new_readable, new_context);
 }
 
-static void retrace_glXChooseFBConfig(trace::Call &call) {
-    auto attrib_list = call.arg(2).toArray();
-    if (!parseAttrib(attrib_list, GLX_SAMPLE_BUFFERS_ARB))
-        return;
-
-    int samples = parseAttrib(attrib_list, GLX_SAMPLES_ARB);
-
-    if (samples > 0) {
-        const auto ids = call.ret->toArray();
-        for (auto& v : ids->values)
-            fbconfig_map[v->toUInt()] = samples;
-    }
-}
-
-static void retrace_glXGetFBConfigAttrib(trace::Call &call) {
-    if (call.arg(2).toUInt() == GLX_SAMPLES_ARB) {
-        auto retval = call.arg(3).toArray();
-        if (retval->size() != 1) {
-            std::cerr << "Warning: got more than one samples value from glXGetFBConfigAttrib\n";
-        }
-        if (retval->size() > 0) {
-            fbconfig_map[call.arg(1).toUInt()] = retval->values[0]->toUInt();
-        } else {
-            std::cerr << "Warning: glXGetFBConfigAttrib didn't provide any samples value\n";
-        }
-    }
-}
-
 const retrace::Entry glretrace::glx_callbacks[] = {
     //{"glXBindChannelToWindowSGIX", &retrace_glXBindChannelToWindowSGIX},
     //{"glXBindSwapBarrierNV", &retrace_glXBindSwapBarrierNV},
@@ -266,7 +224,7 @@
     {"glXBindTexImageEXT", &retrace::ignore},
     //{"glXChannelRectSGIX", &retrace_glXChannelRectSGIX},
     //{"glXChannelRectSyncSGIX", &retrace_glXChannelRectSyncSGIX},
-    {"glXChooseFBConfig", &retrace_glXChooseFBConfig},
+    {"glXChooseFBConfig", &retrace::ignore},
     {"glXChooseFBConfigSGIX", &retrace::ignore},
     {"glXChooseVisual", &retrace::ignore},
     //{"glXCopyContext", &retrace_glXCopyContext},
@@ -300,8 +258,8 @@
     {"glXGetCurrentDrawable", &retrace::ignore},
     {"glXGetCurrentReadDrawable", &retrace::ignore},
     {"glXGetCurrentReadDrawableSGI", &retrace::ignore},
-    {"glXGetFBConfigAttrib", &retrace_glXGetFBConfigAttrib},
-    {"glXGetFBConfigAttribSGIX", &retrace_glXGetFBConfigAttrib},
+    {"glXGetFBConfigAttrib", &retrace::ignore},
+    {"glXGetFBConfigAttribSGIX", &retrace::ignore},
     {"glXGetFBConfigFromVisualSGIX", &retrace::ignore},
     {"glXGetFBConfigs", &retrace::ignore},
     {"glXGetMscRateOML", &retrace::ignore},
diff --git a/retrace/glretrace_wgl.cpp b/retrace/glretrace_wgl.cpp
index c45af68..d3e543e 100644
--- a/retrace/glretrace_wgl.cpp
+++ b/retrace/glretrace_wgl.cpp
@@ -36,12 +36,10 @@
 
 typedef std::map<unsigned long long, glws::Drawable *> DrawableMap;
 typedef std::map<unsigned long long, Context *> ContextMap;
-typedef std::map<unsigned long long, int> FBConfigMap;
-
 static DrawableMap drawable_map;
 static DrawableMap pbuffer_map;
 static ContextMap context_map;
-static FBConfigMap fbconfig_map;
+
 
 static glws::Drawable *
 getDrawable(unsigned long long hdc) {
@@ -228,8 +226,6 @@
 #define WGL_AUX7_ARB                        0x208E
 #define WGL_AUX8_ARB                        0x208F
 #define WGL_AUX9_ARB                        0x2090
-#define WGL_SAMPLE_BUFFERS_ARB              0x2041
-#define WGL_SAMPLES_ARB                     0x2042
 
 static void retrace_wglCreatePbufferARB(trace::Call &call) {
     unsigned long long orig_pbuffer = call.ret->toUIntPtr();
@@ -313,10 +309,6 @@
     const trace::Value * attribList = &call.arg(2);
     glfeatures::Profile profile = parseContextAttribList(attribList);
 
-    auto it = fbconfig_map.find(call.arg(0).toUInt());
-    if (it != fbconfig_map.end())
-        profile.samples = it->second;
-
     Context *context = glretrace::createContext(share_context, profile);
     context_map[orig_context] = context;
 }
@@ -460,23 +452,14 @@
     }
 }
 
-static void retrace_wglChoosePixelFormat(trace::Call &call) {
-    auto attrib_list = call.arg(1).toArray();
-    if (!parseAttrib(attrib_list, WGL_SAMPLE_BUFFERS_ARB))
-        return;
 
-    int samples = parseAttrib(attrib_list, WGL_SAMPLES_ARB);
-
-    if (samples > 0)
-        fbconfig_map[call.arg(0).toUInt()] = samples;
-}
 
 const retrace::Entry glretrace::wgl_callbacks[] = {
     {"glAddSwapHintRectWIN", &retrace::ignore},
     {"wglBindTexImageARB", &retrace_wglBindTexImageARB},
-    {"wglChoosePixelFormat", &retrace_wglChoosePixelFormat},
-    {"wglChoosePixelFormatARB", &retrace_wglChoosePixelFormat},
-    {"wglChoosePixelFormatEXT", &retrace_wglChoosePixelFormat},
+    {"wglChoosePixelFormat", &retrace::ignore},
+    {"wglChoosePixelFormatARB", &retrace::ignore},
+    {"wglChoosePixelFormatEXT", &retrace::ignore},
     {"wglCreateContext", &retrace_wglCreateContext},
     {"wglCreateContextAttribsARB", &retrace_wglCreateContextAttribsARB},
     {"wglCreateLayerContext", &retrace_wglCreateLayerContext},
diff --git a/retrace/glretrace_ws.cpp b/retrace/glretrace_ws.cpp
index a11cc50..4ac716c 100644
--- a/retrace/glretrace_ws.cpp
+++ b/retrace/glretrace_ws.cpp
@@ -53,9 +53,7 @@
     std::map<glfeatures::Profile, glws::Visual *>::iterator it = visuals.find(profile);
     if (it == visuals.end()) {
         glws::Visual *visual = NULL;
-        unsigned requested_samples = retrace::samples > 1 ? retrace::samples :
-                                                            (profile.samples ? profile.samples : 1);
-        unsigned samples = requested_samples;
+        unsigned samples = retrace::samples;
         /* The requested number of samples might not be available, try fewer until we succeed */
         while (!visual && samples > 0) {
             visual = glws::createVisual(retrace::doubleBuffer, samples, profile);
@@ -67,8 +65,8 @@
             std::cerr << "error: failed to create OpenGL visual\n";
             exit(1);
         }
-        if (samples != requested_samples) {
-            std::cerr << "warning: Using " << samples << " samples instead of the requested " << requested_samples << "\n";
+        if (samples != retrace::samples) {
+            std::cerr << "warning: Using " << samples << " samples instead of the requested " << retrace::samples << "\n";
         }
         visuals[profile] = visual;
         return visual;
@@ -302,20 +300,6 @@
     return default_;
 }
 
-void
-setSamples(trace::Call& call, int samples)
-{
-    if (samples > 0)  {
-        if (retrace::samples == 1)
-            retrace::samples = samples;
-        else {
-            retrace::warning(call) << "Overriding samples value " << samples
-                                   << " found in trace with command line parameter "
-                                   << retrace::samples << "\n";
-        }
-    }
-}
-
 
 /**
  * Parse GLX/WGL_ARB_create_context attribute list.