Re: [RFC][PATCH 00/29] Disintegrate and kill asm/system.h

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Arnd Bergmann <arnd@xxxxxxxx> wrote:

> One part you were missing seems to be include/asm-generic/system.h, which is
> used on openrisc and contains a lot of the things you move to other
> places. It would be helpful to split that up as well.

Hmmm...  okay.  How that is used from an arch that doesn't have an
asm/system.h?

> >     (4) asm/atomic.h
> >
> >         Move xchg() and cmpxchg() here as they're full word atomic ops and
> >         frequently used by atomic_xchg() and atomic_cmpxchg().
> 
> Well, the thing with xchg and cmpxchg is that they operate on arbirary-sized
> integers, not atomic_t, unlike everything else in atomic.h.
> 
> Some architectures already have an asm/cmpxchg.h, which seems more appropriate
> here.

So I saw.  It might be worth making an asm/xchg.h and asm/cmpxchg.h for each
arch - or maybe just put both in asm/xchg.h or asm/cmpxchg.h.  Where do I
include it from though?  One nice thing about sticking them in asm/atomic.h is
that usually gets all instances, and they're frequently used from there.  How
about I have asm/atomic.h #include asm/{,cmp}xchg.h?

> >     (6) asm/auxvec.h
> >
> >         Move AT_VECTOR_SIZE_ARCH here.
> 
> These two look suboptimal, but I don't have a better idea either.

Well, AT_VECTOR_SIZE_ARCH is at least auxvec-related, so I think that's
probably in the right place.

> How about adding a '-include asm/system.h' gcc switch for each architecture
> in one patch in the beginning, so that the header becomes included all the
> time, but then remove that for each arch you go through?

That might circularly dependerise, but it's worth a try.

David
--
To unsubscribe from this list: send the line "unsubscribe linux-arch" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel]     [Kernel Newbies]     [x86 Platform Driver]     [Netdev]     [Linux Wireless]     [Netfilter]     [Bugtraq]     [Linux Filesystems]     [Yosemite Discussion]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]

  Powered by Linux