lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4667634.oiTEQ4v5vj@wuerfel>
Date:	Tue, 15 Jul 2014 09:03 +0200
From:	Arnd Bergmann <arnd@...db.de>
To:	Sam Ravnborg <sam@...nborg.org>
Cc:	lkml <linux-kernel@...r.kernel.org>,
	linux-arch <linux-arch@...r.kernel.org>
Subject: Re: [PATCH 38/38] asm-generic: introduc Kbuild.generic

On Monday 14 July 2014 17:09:06 Sam Ravnborg wrote:
> Kbuild.generic is for asm-generic files that are used
> by all architectures.
> So rather than adding the file to the individual Kbuild files
> it is enough to add it to this file
> 
> Signed-off-by: Sam Ravnborg <sam@...nborg.org>
> Cc: Arnd Bergmann <arnd@...db.de>

This has been suggested in the past, and I remember there being some
controversy around it, but I don't really mind it, so you have my
ok in principle. Two points though that we have to work out first:

> diff --git a/arch/alpha/include/asm/Kbuild b/arch/alpha/include/asm/Kbuild
> index 96e54be..e09f8e7 100644
> --- a/arch/alpha/include/asm/Kbuild
> +++ b/arch/alpha/include/asm/Kbuild
> @@ -1,9 +1,9 @@
> -
> +# Generic wrappers from include/asm-generic
> +include include/asm-generic/Kbuild.generic

We have the same kind of header for the uapi files, it's called 
include/uapi/asm-generic/Kbuild.asm. I don't know why I picked that
name back then, Kbuild.generic seems more appropriate, but I think
either way it would be good to be consistent.

Can you either rename the existing file to Kbuild.generic, or call
the new one Kbuild.asm as well?

> diff --git a/include/asm-generic/Kbuild.generic b/include/asm-generic/Kbuild.generic
> new file mode 100644
> index 0000000..f44815b
> --- /dev/null
> +++ b/include/asm-generic/Kbuild.generic
> @@ -0,0 +1,6 @@
> +# List of generic header files that is used by all architectures
> +# This file is included by arch/*/include/asm/Kbuild
> +#
> +# Keep the list sorted alphabetically
> +
> +generic-y += mcs_spinlock.h

We have to make up our minds what we want from this list. At the moment,
you list only one file because that is the only file that is shared across
all architectures. The idea for this file is that architectures /can/
provide their own (according to the comments in this file), but no
architecture actually does.  A few thoughts on this:

* Normally we just delete any header file that is common across all
  architectures, and change the files including it (only one is present
  in this case) not to include it. If we do that, your new file becomes
  pointless.

* If one architecture actually starts providing its own version of this
  file, we'd have to revert your patch first, which really defeats the
  purpose of doing it in the first place.

* We could improve the situation if the definition of this list is
  changed so we only generate the generic header files that are not
  already provided by an architecture. If we do this, we can consolidate
  a lot more here, which is nice, but the cost would be equivalent to
  another level of indirection and a potential for subtle bugs if it's
  not done very careful.

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ