Jeff Dike wrote:
The patch below fixes the recent UML compilation failure in -rc5-mm1
without making the UML build reach further into the i386 headers. It
splits the i386 ptrace.h and system.h into UML-usable and UML-unusable
pieces.
The string "abi" is in there because I did ptrace.h first, and that
involves separating the ptrace ABI stuff from everything else (if
pt_regs is not considered part of the abi). However, the system.h
split is between random stuff that UML can use and random stuff that
it can't. So, perhaps better names would be -uml or -userspace or
something.
I like this approach. In general, it seems beneficial to split these
into ABI and kernel implementation. Also, this stuff eventually works
its way into userspace headers. It is not really clear which asm-xxx
kernel headers are valid to include in userspace. There are definitely
multiple classes of things in the kernel header files : ABI definitions,
user-useful macros and inlines, and things that are privately useful the
kernel. The ptrace split seems quite well defined here; the system
split is a little less obvious, but I don't object to the way you have
done it.
I've always wondered why we didn't have memory barriers in either
asm/atomic.h or asm/barrier.h; system.h seems to just have a mixed bag
of goodies.
Two things about the system.h split - do you use arch_align_stack()?.
Also, do you use the alternative instruction replacement functionality,
or do you just need the macro? If you don't actually implement
instruction replacement, it seems you could more easily redefine these to be
#define alternative(oldinstr, newinstr, feature) \
asm volatile(oldinstr) ::: "memory")
Zach
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
|
|