Re: [linux-kernel]Why there are so many struct rw_semaphore beingdefined?

From: Stefan Richter
Date: Wed Jul 04 2007 - 06:34:58 EST


Oliver Neukum wrote:
> Am Mittwoch, 4. Juli 2007 schrieb jidong xiao:
>> I see struct rw_semaphore is defined in
>> include/linux/rwsem-spinlock.h,in the meanwhile, I also can find it in
>
> Quote:
>
> #ifndef _LINUX_RWSEM_H
> #error "please don't include linux/rwsem-spinlock.h directly, use linux/rwsem.h instead"
> #endif
>
>> include/asm-**/rwsem.h,for
>> example,include/asm-i386/rwsem.h,include/asm-x86_64/rwsem.h,why?which
>> one should be used?
>
> This structure is so important to performance that some architectures
> have version optimized to their features.

...but of course we generally include linux/rwsem.h instead of
architecture-specific header files. linux/rwsem.h will transparently
pull in the optimized variants for us. (It's evident from the source.)
--
Stefan Richter
-=====-=-=== -=== --=--
http://arcgraph.de/sr/
-
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/