Was out running errands yesterday in our close big town (2001 GMC in sig). Left a store, started the truck, and the key stuck in the start/crank position. I could not turn the key back, so the starter kept cranking with the engine running. The key did have some spring feel forward, but was a dead-stop trying to turn it back. Not a big deal for a short period, but short was quickly disappearing. I had a couple more stops planned, and home is 25 miles away. I pulled the starter relay in the underhood panel, which allowed it to continue running in P or N, without cranking the starter the whole time. Pulling the "Crank" fuse in the dash fuse panel would do the same thing, but that didn't come to mind right away. I made my other stops, leaving the truck running, and locked/unlocked it with the key fob. I also check with the local parts stores for a new lock cylinder and, of course, the one I needed was either unavailable or special order. Long story short, I got home and pulled all the IGN fuses and relays (there's a bunch, in the dash fuse panel and under the hood) to get it powered down. It was too late in the day to really start any work on it so, until morning.

I got back into it this morning. Disassembled the column enough to access the cylinder. Removed: airbag, steering wheel, and column trim behind the wheel. I haven't visited some of the tools needed in a while (steering wheel puller and bolts that fit), so it took more time gathering them than actually doing the job.

I'm sure we've discussed it before, but it's worth repeating that, working with the airbag system is no joke. Pull the fuses and disconnect the harness connectors on the column behind the knee panel before messing with the actual air bag (the explosive part). All the connectors and harness are bright yellow, so not hard to miss. They are really safe to handle, but if something does go wrong, it will go very wrong.

Getting the cylinder out wasn't easy. Fortunately, it was stuck in the Start/Crank position, which is required to disengage the locking lug. There's a hole at the top of the housing assy that allows a tool/punch/scribe (1/8" or smaller) to press the lug and remove the cylinder. It took some wiggling, but it came out. Go slow, because the tumbler springs are held in place by a stamped steel retainer, which can allow the springs to take flight if it doesn't stay in place or is damaged. The tumbler retainer clip was dislodged (and deformed from my reefing on it trying to turn it off, picture attached). This prevented the cylinder from being turned back. It appeared that the staking that should have held it in place was weak and insufficient, a defect from the mfg and a failure waiting to happen. I can't really complain, at 19-1/2 years in service.

Repair was simple, and as good or better than a replacement, IMO. The retainer came off easily with a little prying with a small screwdriver. If you've never done this before, be sure to do it in a deep, clear plastic bag (gallon size Ziploc works). Sometimes the springs will head off to points unknown (they didn't come out, this time). The parts are unique, and none of my residential re-key parts fit. Individual parts must be sourced through a locksmith or similar supplier, or you'll have to buy an entirely new cylinder ($60+). Do not trust aftermarket or Ebay stuff. I straightened the retainer and replaced it, securing it in place with a very tight zip-tie. I staked it solid using an inertia-type center punch, at the same locations as the previously failed stake points. The cylinder is aluminum, so it complied readily. I hit the cylinder diameter lightly with a flat file to clean up any burrs. A thin application of silicone grease and it went right in and worked perfectly. Smooth as butter.

Since I had everything apart anyway, I'm also replacing the shift lever boot. GM part # 26093753. It was $15 at Rock Auto for a Dorman, several days away. I found an OEM at my local GMC dealer for $30 and it just arrived (and the reason I had time to write this now).

Reassembly should be simple, but I'll certainly update if it isn't.