Working Around “[drm] stuck on render ring” on Intel GMA

After acquiring a Broadwell generation Core i3 NUC (the NUC5i3RYK to be exact) and installing Linux, KDE/X.Org would lockup and crash frequently. Checking dmesg, the following messages appeared:

[drm] stuck on render ring
[drm] GPU HANG:…

From the dmesg report, it is clear the crashes were caused by the GPU hanging. After further inspection of the dmesg logs, it appears this is due to a bug between Intel’s graphics and IOMMU drivers. The easiest way to work around this is to disable Intel IOMMU support.

Since I had compiled IOMMU support into my kernel, removing IOMMU support involved a kernel recompile. When configuring your kernel using menuconfig, make sure that “Support for Intel IOMMU using DMA Remapping Devices” under “Device Drivers > IOMMU Hardware Support” is unchecked. This is equivalent to ensuring that INTEL_MMU = n in your .config file. For the NUC, that was all that was required to keep the GPU driver from crashing and taking X.Org and KDE down with it.

-John Havlik

[end of transmission, stay tuned]

Netgear AirCard 340u (aka AT&T Beam) on Linux

Lately, I’ve found attempting to do web development on a local environment without Internet access while travelling just doesn’t cut it anymore. This is especially true for long roadtrips. Rather than dealing with tethering or a mobile hotspot, I decided to spring for a Netgear AirCard 340u. For GSM networks in the US, it happens to be the best USB wireless broadband modem currently available. It supports everything from GPRS through LTE on what appears to be most of the bands AT&T and T-Mobile currently use (a true rarity, though I can not confirm support of LTE on band 2 (1900MHz PCS), I do get T-Mobile LTE in the Twin Cities).

Continue reading

Plex Home Theater + Funtoo on Intel’s NUC DN2820FYKH

Plex is really awesome. It has a server component that I’ve had running on my home server for over a year now. There are apps for Roku, Windows 8 and Android (I have all three) which automatically find my local server and can stream from it. The Android Plex app can even act as a remote for other Android, Roku, Windows 8, and the Plex Home Theater client. Rather than dive in a try to get Plex Home Theater running on raspberrypi, I went with the new NUC DN2820FYKH.

Continue reading

OpenVPN Tips And Tricks

Setting up your own VPN server and getting everything working can be a real pain to do. Over the past few months I’ve been off and on trying to get one working. While I had attempted to get other methods, which did not require software to be installed in Windows, to work, I ended up settling on using OpenVPN. Here are a few notes and resources I found useful.

Gentoo Forums :: View topic – Howto Openvpn – The quick easy wayhttp://forums.gentoo.org/viewtopic-t-117709-view-next.htmlI’ve read through a lot of howto’s for openvpn, and a lot of them didn’t seem to work, I could follow them line for line and I kept running into problems. Here is my HOWTO on openvpn, which i find was the simpliest way of setting it up.

I used the above guide to begin my setup of a OpenVPN server on my server running Funtoo (a Gentoo variant). While the guide is pretty good, I have a few notes:

  • The line remote <vpn server ip> 9900 for the Linux client config is wrong, in the example configs the port should always be 9000
  • Since the writing of the guide, easy-rsa has been split off into it’s own package, install it by running emerge -av easy-rsa
  • The directory the easy-rsa files go to has changed, they are now located under /usr/share/easy-rsa/ you will want to copy these somewhere else (e.g. /etc/openvpn/easy-rsa) to prevent them from being overwritten when updating easy-rsa
  • Easy-rsa contains several OpenSSL config files, you’ll either need to update the server.cnf file to match the installed OpenSSL version, or create a symlink with openssl.cnf pointing to the appropriate openssl-.cnf file.
  • If you do not have $OPENSSL defined, you’ll run into issues running ./build-dh. You should be able to edit line 7 of build-dh replacing $OPENSSL with openssl

Beyond this guide, when trying to talk to a Samba server, a few things should be noted:

  • When using a VPN to connect to a network with the Samba server, you will have a IP address in a different network than the Samba server is in (e.g. 192.168.2.0 vs 192.168.10.0). Make sure to add your VPN network to the hosts allow property in your smb.conf.
  • Since Windows Vista, Windows tries to find a gateway to determine if the connected network is a home, office, or public network. You may need to add push "route 0.0.0.0 0.0.0.0 vpn_gateway 999" to your OpenVPN server’s config file.
  • If you want to use the Netbios name to access the Samba server, you will want to place push "dhcp-option WINS <SAMBA_IP_ADDRESS>" (where <SAMBA_IP_ADDRESS> is the IP address of your Samba server) in your OpenVPN server’s config file.

Lastly, you should note that if the network you are VPNing into has a server at the same IP address as the network you are VPNing from, it may be difficult to contact the server on the network you have VPNed into. So, it is probably a good time to move away from using 10.0.0.0, 172.16.0.0, or 192.168.1.0 as your network address.

-John Havlik

[end of transmission, stay tuned]

Make Firefox Use Dolphin for “Open Containing Folder”

In KDE 4, Konqueror has been replaced for the most part by Dolphin for all folder/directory viewing. However, by default Firefox will end up opening Konqueror if you right click on a downloaded item and select “Open Containing Folder”. It would be nice if Firefox would open the containing folder for downloads in Dolphin. There is a simple way of achieving this, and no command line work is required!

Continue reading