Re: [PATCH] no need to check for NULL before calling kfree() -fs/ext2/

From: Marcin Dalecki
Date: Sat Mar 26 2005 - 22:20:37 EST



On 2005-03-27, at 04:00, Horst von Brand wrote:

Needless to say that there are enough architectures out there, which
don't even have something like an explicit call as separate assembler
instruction...

The mechanism exists somehow.

Most RISC architectures are claiming a huge register set advantage over IA32.
However in reality it's normal that:

1. Some of the register take roles as declared by the ABI. One is stack one
is basis pointer and so no.
2. Only a subset of register is declared to be guaranteed to be preserved by
system calls.

Thus the mechanisms are simple calling conventions.

Compilers can frequently see what a subroutine does and can flatten out the cost
of function calls to something very much resembling just two jumps instead of
a single jump around a condition.

On the other hand most modern IA32 implementation (since cyrix 486) are very
efficient at mapping stack operations to a special cache between the CPU and
L1 cache. I could even imagine them to be more efficient then plain jumps, which
simply don't carry the same information for cache prefetch and branch predition.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/