On Mon, Jan 13 2003, Terje Eggestad wrote:
> Considering that doing kernel development is hard enough, new
> development is almost always done on uni processors kernels that do only
> one thing at the time. Then when you base logic is OK, you move to a
> SMP, which means (adding and) debugging you spin locks.
Goto's aside, I find the above extremely bad advise. You should _always_
develop with smp and for smp from the very start, or you will most
likely not get it right later on. With preempt, this becomes even more
important.
> Considering that fucking up spin locks are prone to corrupting your
> machine, one very simple trick to makeing fewer mistakes to to have one,
> and only one, unlock for every lock.
Taking a spin lock twice will hard lock the machine, however on smp you
will typically have the luxury of an nmi watchdog which will help you
solve this quickly. Double unlock will oops immediately if you run with
spin lock debugging (you probably should, if you are developing kernel
code).
-- Jens Axboe- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Wed Jan 15 2003 - 22:00:45 EST