OpenGL Performance Regression (lp:#1784923)

[Original report](https://bugs.launchpad.net/bugs/1784923) created by **Seth Hillbrand (sethh)**
```
Steps to reproduce:

1) Open modedit
2) Select BGA-400_21.0x21.0mm_Layout20x20_P1.0mm
3) Select the whole footprint
4) Hit 'M' to move the footprint

This was instantaneous (mostly) in v5.  Currently, in master, it is instant
in Legacy, slightly slow (0.5s delay) in Fallback and takes ~7s in
Accelerated.

Stopping the system while waiting in gdb gives this backtrace:

00007ffff357a67d in poll () at ../sysdeps/unix/syscall-template.S:84
84      ../sysdeps/unix/syscall-template.S: No such file or directory.
(gdb) bt
#0  0x00007ffff357a67d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007fffe35f2455 in ?? () from /usr/lib/x86_64-linux-
gnu/libGLX_nvidia.so.0
#2  0x00007fffe2614ec0 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-
glcore.so.384.130
#3  0x00007fffe253a68e in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-
glcore.so.384.130
#4  0x00007fffe35e8f7e in ?? () from /usr/lib/x86_64-linux-
gnu/libGLX_nvidia.so.0
#5  0x00007ffff7bd2373 in wxGLCanvasX11::SwapBuffers() () from
/usr/lib/x86_64-linux-gnu/libwx_gtk2u_gl-3.0.so.0
#6  0x00007fffe50d5605 in KIGFX::OPENGL_GAL::EndDrawing
(this=0x55555d171f30)
    at /home/seth/code/kicad/kicad-
launchpad/common/gal/opengl/opengl_gal.cpp:482
#7  0x00007fffe50aff04 in EDA_DRAW_PANEL_GAL::onPaint (this=0x55555766a450)
    at /home/seth/code/kicad/kicad-launchpad/common/draw_panel_gal.cpp:187
#8  0x00007ffff634440e in wxAppConsoleBase::CallEventHandler(wxEvtHandler*,
wxEventFunctor&, wxEvent&) const ()
   from /usr/lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0
#9  0x00007ffff64c9ea5 in
wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&,
wxEvtHandler*, wxEvent&) ()
   from /usr/lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0
#10 0x00007ffff64ca29d in wxEvtHandler::SearchDynamicEventTable(wxEvent&)
() from /usr/lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0
#11 0x00007ffff64ca31f in wxEvtHandler::TryHereOnly(wxEvent&) () from
/usr/lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0
#12 0x00007ffff64ca3d3 in wxEvtHandler::ProcessEventLocally(wxEvent&) ()
from /usr/lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0
#13 0x00007ffff64ca435 in wxEvtHandler::ProcessEvent(wxEvent&) () from
/usr/lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0
#14 0x00007ffff64caef3 in wxEvtHandler::ProcessPendingEvents() () from
/usr/lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0
#15 0x00007ffff6346bff in wxAppConsoleBase::ProcessPendingEvents() () from
/usr/lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0
#16 0x00007ffff6c21e0a in wxApp::DoIdle() () from /usr/lib/x86_64-linux-
gnu/libwx_gtk2u_core-3.0.so.0
#17 0x00007ffff6c21ef3 in ?? () from /usr/lib/x86_64-linux-
gnu/libwx_gtk2u_core-3.0.so.0
#18 0x00007ffff1ed06aa in g_main_context_dispatch () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#19 0x00007ffff1ed0a60 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#20 0x00007ffff1ed0d82 in g_main_loop_run () from /lib/x86_64-linux-
gnu/libglib-2.0.so.0
#21 0x00007ffff2f813b7 in gtk_main () from /usr/lib/x86_64-linux-
gnu/libgtk-x11-2.0.so.0
#22 0x00007ffff6c41e65 in wxGUIEventLoop::DoRun() () from
/usr/lib/x86_64-linux-gnu/libwx_gtk2u_core-3.0.so.0
#23 0x00007ffff638627b in wxEventLoopBase::Run() () from
/usr/lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0
#24 0x00007ffff634b776 in wxAppConsoleBase::MainLoop() () from
/usr/lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0
#25 0x00005555555962f9 in APP_SINGLE_TOP::OnRun (this=0x5555558a27b0) at
/home/seth/code/kicad/kicad-launchpad/common/single_top.cpp:186
#26 0x00007ffff63d7cd0 in wxEntry(int&, wchar_t**) () from
/usr/lib/x86_64-linux-gnu/libwx_baseu-3.0.so.0
#27 0x0000555555591966 in main (argc=1, argv=0x7fffffffe138) at
/home/seth/code/kicad/kicad-launchpad/common/single_top.cpp:260



Application: pcbnew
Version: (6.0.0-rc1-dev-233-g53236a383), debug build
Libraries:
    wxWidgets 3.0.2
    libcurl/7.52.1 OpenSSL/1.0.2l zlib/1.2.8 libidn2/0.16 libpsl/0.17.0
(+libidn2/0.16) libssh2/1.7.0 nghttp2/1.18.1 librtmp/2.3
Platform: Linux 4.9.0-7-amd64 x86_64, 64 bit, Little endian, wxGTK
Build Info:
    wxWidgets: 3.0.2 (wchar_t,wx containers,compatible with 2.8) GTK+ 2.24
    Boost: 1.62.0
    OpenCASCADE Community Edition: 6.8.0
    Curl: 7.52.1
    Compiler: GCC 6.3.0 with C++ ABI 1010

Build settings:
    USE_WX_GRAPHICS_CONTEXT=OFF
    USE_WX_OVERLAY=OFF
    KICAD_SCRIPTING=OFF
    KICAD_SCRIPTING_MODULES=OFF
    KICAD_SCRIPTING_WXPYTHON=OFF
    KICAD_SCRIPTING_ACTION_MENU=OFF
    BUILD_GITHUB_PLUGIN=ON
    KICAD_USE_OCE=ON
    KICAD_USE_OCC=OFF
    KICAD_SPICE=ON
```

Story points: 10.0