Recently my Intel 1TB boot SSD started exhibiting some odd behavior. Frequently Ubuntu would crash unexpectedly whenever I would navigate into a folder which had large image files in it…
Read moreI2C – Cannot find smbus_* functions
Recently I have been writing some userspace applications on x86 to interact with some i2c devices when I noticed that gcc was having some difficulties finding the i2c_smbus_* symbols. The…
Read moreSetting up Duply with Amazon S3
1.0 Introduction I had previously been using a DigitalOcean server to do nightly backups, however considering the total file size of what I wanted backed up was only around 10GB,…
Read moreDebugging the Linux Kernel via Crashdumps Part 2
1. Introduction In part 1 of this series, we did a high level overview of what is involved in obtaining a kernel crashdump. We will continue our discussion in how…
Read moreDebugging the Linux Kernel via Crashdumps Part 1
1.Introduction One of the most useful approaches when debugging a Linux system, is the ability to investigate the target at the point of failure. Typically for userspace issues this does…
Read moreBit Bang GPIO UART from Linux Kernel
Introduction Lately I have had the need to bit bang a UART from inside the Linux kernel over a GPIO. Unsurprisingly, the code is quite simple but handy to have…
Read moreEfficient Data Transfers – DD + PV – Performance Analysis
1.0 Introduction Recently, I had the need of observing the progress of a dd command while transferring data between devices. While searching online, I noticed that one of the suggestions…
Read moreGit – Cherry Picking Specific Commit Ranges
Something a little different today.. Recently while doing some kernel work, I came across the situation when I had to cherry-pick all the commits made by a specific author in…
Read moreEnabling PWM on Beagle Bone Black
So I decided to try and get 4 independent PWM ports up and running on the Beagle Bone Black. The process is fairly straightforward with a couple of caveats. Firstly,…
Read moreIntroduction to Kernel Modules
1.0 What is a Kernel Module A kernel module is compiled code which can be loaded and linked into the kernel at runtime. A kernel module can and often is,…
Read more