Ssh – MIT Shared Memory Extension or MIT-SHM over ssh

lxcsshx11xauth

I successfully created a privileged lxc archlinux container on an archlinux host with lxc. I set up a static ip via dnsmasq and ssh into it and I use xauth to forward X11. I then call programs like mupdf or plot functions from programming languages such as R or Matlab. While this all works fine I constantly see error messages printed to the console when I open a *.pdf file with mupdf:

     ximage: disabling shared memory extension: BadAccess (attempt to access private resource denied)

Two short questions about this:

  1. What exactly does this error message mean?
  2. How can this error be solved (or is it safe to ignore)?

Best Answer

Shared memory is a mechanism to exchange rendered image without having to use sockets, the protocol works something like this: X client create the shared buffer, X client tell the server that's where you will find the images i create, the server "attach" itself to the shared memory and refresh whenever there is an update, this mechanism offers 10x the speed of socket transfer, but slower than zero-copy rendering. if you wish you can disable this mechanism by setting these environment variables:

QT_X11_NO_MITSHM=1
_X11_NO_MITSHM=1
_MITSHM=0
Related Question