All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@arndb.de>
To: Robin Getz <rgetz@blackfin.uclinux.org>
Cc: Mike Frysinger <vapier.adi@gmail.com>, linux-kernel@vger.kernel.org
Subject: Re: asm-generic update candidates?
Date: Fri, 4 Sep 2009 15:32:50 +0200	[thread overview]
Message-ID: <200909041532.50456.arnd@arndb.de> (raw)
In-Reply-To: <200909031729.52538.rgetz@blackfin.uclinux.org>

On Thursday 03 September 2009, Robin Getz wrote:
> Arnd:
> 
> I was reviewing some files in ./arch/blackfin/include for missing copyrights, 
> and while tracking things down I noticed there were still some likely 
> candidates for inclusion in asm-generic...

Ah, thanks. I basically started out with the list of files that exist in
almost all architectures. I never looked at files that are identical in
some architectures but nonexistent in more than a few others.

Also, my plan is to do one architecture at a time, not one file at a time
across all architectures, because that will reduce the need for coordination
between multiple maintainers.

> All seem to be the same file:
> 
> md5sum:
> 5b6b31d728ed2ed0df73c56676fdc68f  blackfin/include/asm/fb.h
> 5b6b31d728ed2ed0df73c56676fdc68f  cris/include/asm/fb.h
> 5b6b31d728ed2ed0df73c56676fdc68f  frv/include/asm/fb.h
> 5b6b31d728ed2ed0df73c56676fdc68f  h8300/include/asm/fb.h
> 5b6b31d728ed2ed0df73c56676fdc68f  s390/include/asm/fb.h
> 5b6b31d728ed2ed0df73c56676fdc68f  xtensa/include/asm/fb.h

Look at the latest version. Some architectures have already started
using the generic version, e.g. blackfin.

> e31d052cbba4f417ba2158a41b0d8709  arm/include/asm/fb.h
> e31d052cbba4f417ba2158a41b0d8709  m32r/include/asm/fb.h
> e31d052cbba4f417ba2158a41b0d8709  sh/include/asm/fb.h

Interesting one. The only difference between these and the
above is the use of pgprot_writecombine, which is defined as
pgprot_noncached on the other architectures.
 
> Mostly the same:
>  mn10300/include/asm/shmparam.h
>  frv/include/asm/shmparam.h
>  m68k/include/asm/shmparam.h
>  h8300/include/asm/shmparam.h
>  alpha/include/asm/shmparam.h
>  x86/include/asm/shmparam.h
>  m32r/include/asm/shmparam.h
>  avr32/include/asm/shmparam.h
>  powerpc/include/asm/shmparam.h
>  blackfin/include/asm/shmparam.h
> 
> All the same:
> frv/include/asm/ucontext.h
> h8300/include/asm/ucontext.h
> avr32/include/asm/ucontext.h
> m32r/include/asm/ucontext.h
> cris/include/asm/ucontext.h
> alpha/include/asm/ucontext.h
> mips/include/asm/ucontext.h
> microblaze/include/asm/ucontext.h
> mn10300/include/asm/ucontext.h
> blackfin/include/asm/ucontext.h

Yes, these should come naturally when the architectures
get changed to use the generic headers.
 
> There seems to be lots of similarities in
>  */include/asm/types.h
>  */include/asm/kmap_types.h
>  */include/asm/termios.h
>  */include/asm/socket.h
>  */include/asm/param.h
>  */include/asm/signal.h (but not all)
>  */include/asm/posix_types.h
>  */include/asm/termbits.h
>  */include/asm/segment.h
>  */include/asm/auxvec.h
>  */include/asm/shmbuf.h
>  */include/asm/spinlock_types.h
> 
> Do you keep a list somewhere?

Well, this is how I started out writing doing the common files
in the first place. I looked at the most similar files, and then
used vimdiff on up to four files at a time, changing them to
be exactly identical by editing out all the bitrot.

In general, if a file exists in asm-generic, it should be usable
by some of the architectures, if it does not exist then either it
is too hard to make a generic version or I have not looked at it
yet.

If you want to help convert an architecture, try doing

for i in include/asm-generic/*.h ; do
      vimdiff ${i} arch/${ARCH}/include/asm/${i##*/}
done

If the files are identical, replace the contents of the arch
specific one with a simple #include <asm-generic/${i}>. If they
are almost identical, add overrides like in
arch/microblaze/include/asm/posix_types.h, possibly adding the
option for overriding to the generic file. For files that
are rather different, just leave them alone.

	Arnd <><

  reply	other threads:[~2009-09-04 13:33 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-03 21:29 asm-generic update candidates? Robin Getz
2009-09-04 13:32 ` Arnd Bergmann [this message]
2009-09-04 19:39   ` Robin Getz
2009-09-08 12:55     ` Arnd Bergmann
2009-09-08 16:58       ` Robin Getz
2009-09-09  9:13         ` Michal Simek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200909041532.50456.arnd@arndb.de \
    --to=arnd@arndb.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rgetz@blackfin.uclinux.org \
    --cc=vapier.adi@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.