When I DM, the whole whack-a-mole style that can develop late in fights is really annoying ("Down to 0 and dying! Back to 3 hp and fully functional! Hit again, back to 0 hp and dying! Healed back to 7 hp and fully functional!").
Two reasons: One, it makes healing people who are injured, but not down to 0, feel like a waste.
Two: it makes bigger heals less useful. If the fighter is getting beaten on by something that hits hard, but not so hard that it can knock him or her down to -MAX (which very, very few things can do), then there's almost no difference in healing them for 1 hp vs healing them for 25 hp. The Fire Giant or whatever can knock off 25 hp as easily as 1 hp, and if the fighter has 75, there's genuinely no difference between the Fire Giant hitting for 25 (or 1, in the case of 1 hp) vs hitting for 70. Literally, the result is identical.
To resolve it, I impose a stacking penalty of 1 level of exhaustion every time someone is knocked to 0 hp and then healed back up. Nothing additional for failing death checks, I figure having a chance of death is penalty enough.
It encourages the players to prevent people from getting knocked to 0 in the first place. And, yes, I'm totally fine with someone dying after getting knocked to 0 hp and then healed back up for the 6th time in a fight. If it happens to you 6 times, you're doing something really wrong.
But to lessen the blow a bit (and to reduce the penalty on Berserkers), I say that you get back 1 level of Exhaustion per short rest and 2 from a long rest. Seems to work out.