Try to fix failures. I've been seeing "set ... but it didn't take" failures at boot time on one of my machines. Looking at the logic, it looks somewhat unlike the logic I would use manually. This commit fixes that; we'll see if it actually fixes the failures.