I can't believe it. I fixed it.

My problem was that I had put the OS on the machine by imaging with Ghost, since it was faster than trying to remaster it, and by making the system redetect its hardware everything worked. My clue was that I was able to load the 2.6.x kernel and DIDN'T have the problem, so I edited /etc/modules and that fixed it. I then went ahead and deleted it and both the kernel-specific ones, so it goes through the full autodetect the next time any are loaded.