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: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 5 Feb 2009 10:51:04 -0500
From:	lsorense@...lub.uwaterloo.ca (Lennart Sorensen)
To:	Sam Ravnborg <sam@...nborg.org>
Cc:	linux-kernel@...r.kernel.org
Subject: Re: Missing unistd_no.h and unistd_mm.h export on m68k

On Thu, Feb 05, 2009 at 06:53:37AM +0100, Sam Ravnborg wrote:
> Indeed the *_no.h, *_mm.h is missing from Kbuild.h.
> But looking at your patch you added much more than the
> missing *_no.h, *_mm.h.
> When doing this do it in steps:
> 1) fix make headers_check
>    This is fixed by adding the *_no.h,*_mm.h for files that
>    are exported. And that is the files lited in include/asm-generic/Kbuild.asm
>    plus the single file listed in the m68k Kbuld file.
> 
> 2) then as a separate patch export the additional files needed to build
>    ulibc.
>    Do it file-by-file so you are sure you do not add a single file
>    that is not needed. We want to have a minimal set of files exported.
> 
> And when you prepare your patch please use one line per header file,
> as we do in all the ohter Kbuild files.

Well if the exported unistd.h file says:

#ifdef __uClinux__
#include "unistd_no.h"
#else
#include "unistd_mm.h"
#endif

Then I expect BOTH files to be present since I might want to compile
both glibc and uclibc against this set of headers.

Leaving out either would be broken.

I do seem to have got carried away after I encountered one after
another.  I will try to find a smaller list of what should actually be
exported.  Now perhaps some of the headers don't need this split, which
would simplify things.

So here is an updated patch that isn't carried away.  This includes the
8 pairs of files that are included by header files that are in fact
exported already.  This makes the header files consistent on m68k no
matter what you are compiling against them.

Does this look better?

I checked this way:
linux-headers/include/asm# grep _no.h *
param.h:#include "param_no.h"
ptrace.h:#include "ptrace_no.h"
setup.h:#include "setup_no.h"
sigcontext.h:#include "sigcontext_no.h"
siginfo.h:#include "siginfo_no.h"
signal.h:#include "signal_no.h"
swab.h:#include "swab_no.h"
unistd.h:#include "unistd_no.h"

linux-headers/include/asm# ls *_no.h|cat
param_no.h
ptrace_no.h
setup_no.h
sigcontext_no.h
siginfo_no.h
signal_no.h
swab_no.h
unistd_no.h

linux-headers/include/asm# ls *_mm.h|cat
param_mm.h
ptrace_mm.h
setup_mm.h
sigcontext_mm.h
siginfo_mm.h
signal_mm.h
swab_mm.h
unistd_mm.h

-- 
Len Sorensen

The header files exported on m68k are missing dependant header files
that are included by some of the epxorted files.  This includes the 8
missing pairs of files needed by normal and uclibc builds against the
headers files.

Signed-of-by: Len Sorensen <lsorense@...lub.uwaterloo.ca>

diff --git a/arch/m68k/include/asm/Kbuild b/arch/m68k/include/asm/Kbuild
index 1a922fa..f13d614 100644
--- a/arch/m68k/include/asm/Kbuild
+++ b/arch/m68k/include/asm/Kbuild
@@ -1,2 +1,2 @@
 include include/asm-generic/Kbuild.asm
-header-y += cachectl.h
+header-y += cachectl.h param_mm.h param_no.h ptrace_mm.h ptrace_no.h setup_mm.h setup_no.h sigcontext_mm.h sigcontext_no.h siginfo_mm.h siginfo_no.h signal_mm.h signal_no.h swab_mm.h swab_no.h unistd_mm.h unistd_no.h
--
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