Bug 200561

Summary: -falign-functions=4 in CFLAGS twice
Product: [Fedora] Fedora Reporter: Sam Steingold <sds>
Component: clispAssignee: Gérard Milmeister <gemi>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: 5CC: extras-qa
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-08-02 08:16:52 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Sam Steingold 2006-07-28 17:43:13 UTC
Description of problem:

http://cvs.fedora.redhat.com/lxr/extras/source/devel/clisp/clisp.spec
line  62:
sed -i -e 's|-Wpointer-arith|-Wpointer-arith -falign-functions=4|' src/makemake.in
is not necessary: -falign-functions=4 is already in CFLAGS
try clisp --version and observe -falign-functions=4 twice:

Software: GNU C 4.1.1 20060525 (Red Hat 4.1.1-1)
gcc -g -O2 -W -Wswitch -Wcomment -Wpointer-arith -falign-functions=4 -Wimplicit
-Wreturn-type -Wmissing-declarations -Wno-sign-compare -O2
-fexpensive-optimizations -falign-functions=4 -DUNICODE -DDYNAMIC_FFI -I. -x
none libcharset.a libavcall.a libcallback.a /usr/lib/libreadline.so -lncurses
-ldl   -L/usr/lib -lsigsegv


Version-Release number of selected component (if applicable):

2.39

Comment 1 Gérard Milmeister 2006-07-28 18:22:49 UTC
True. Fix in next release.

BTW. 2.39 only builds with selinux disabled, due to one of the
memory protection features of selinux. This was not the case
in 2.38. It is currently not a great problem, since on the
buildsystem selinux is not enabled while building packages.
However, it might be worthwhile to look into the issue.

Comment 2 Sam Steingold 2006-07-28 18:27:12 UTC
(In reply to comment #1)
> BTW. 2.39 only builds with selinux disabled, due to one of the
> memory protection features of selinux. This was not the case
> in 2.38. It is currently not a great problem, since on the
> buildsystem selinux is not enabled while building packages.
> However, it might be worthwhile to look into the issue.

this depends on what "enabled selinux" means.
I have no problem building clisp on my fc5 (I have no idea if selinux is enabled).

look for "--with-gmalloc" in clisp/unix/PLATFORMS

Comment 3 Gérard Milmeister 2006-07-28 18:43:30 UTC
The particular selinux error is the following:

type=AVC msg=audit(1154112641.464:3957): avc:  denied  { execheap } for 
pid=18875 comm="test1" scontext=user_u:system_r:unconfined_t:s0
tcontext=user_u:system_r:unconfined_t:s0 tclass=process

so it execheap policy that is violated

Comment 4 Gérard Milmeister 2006-07-28 18:48:12 UTC
I tried with --with-gmalloc but no change.
The exact place of the error is this:
./test1
trampoline: cannot make memory executable
make[2]: *** [check] Aborted
make[2]: Leaving directory
`/home/gemi/Projects/fedora/extras/clisp/FC-5/clisp-2.39/build/callback/trampoline_r'
make[1]: *** [check-subdirs] Error 2
make[1]: Leaving directory
`/home/gemi/Projects/fedora/extras/clisp/FC-5/clisp-2.39/build/callback'
./configure: despite --with-dynamic-ffi, FFCALL could not be built
error: Bad exit status from /usr/tmp/rpm/rpm-tmp.96860 (%build)


Comment 5 Sam Steingold 2006-07-28 18:52:51 UTC
(In reply to comment #3)
> The particular selinux error is the following:
> 
> type=AVC msg=audit(1154112641.464:3957): avc:  denied  { execheap } for 
> pid=18875 comm="test1" scontext=user_u:system_r:unconfined_t:s0
> tcontext=user_u:system_r:unconfined_t:s0 tclass=process
> 
> so it execheap policy that is violated

I thought this was fixed in 2.33.2
2004-05-21 - LINUX_NOEXEC_HEAPCODES
(indeed clisp --version indicated that this memory model is used).
could you please file a self-contained bug report about selinux/clisp
interaction on the clisp SF bug tracker?
thanks.

Comment 6 Sam Steingold 2006-07-28 18:54:46 UTC
(In reply to comment #4)
> I tried with --with-gmalloc but no change.
> The exact place of the error is this:
> ./test1
> trampoline: cannot make memory executable
> make[2]: *** [check] Aborted
> make[2]: Leaving directory
>
`/home/gemi/Projects/fedora/extras/clisp/FC-5/clisp-2.39/build/callback/trampoline_r'
> make[1]: *** [check-subdirs] Error 2
> make[1]: Leaving directory
> `/home/gemi/Projects/fedora/extras/clisp/FC-5/clisp-2.39/build/callback'
> ./configure: despite --with-dynamic-ffi, FFCALL could not be built
> error: Bad exit status from /usr/tmp/rpm/rpm-tmp.96860 (%build)
> 

so this is not a CLISP problem.
this is an FFCALL problem.
please remove "--with-dynamic-ffi" from the configure line and see if clisp builds.
please _DO_ submit the FFCALL bug report to the CLISP bug tracker!

Comment 7 Gérard Milmeister 2006-07-28 19:27:12 UTC
Without --with-dynamic-ffi, basic compilation proceeds with selinux
enabled, but fails, of course, on the postgres module.
I will submit the bug report about FFCALL then.

Are there any issues with the current release, or should I
proceed with a new build with current fixes?

Comment 8 Sam Steingold 2006-07-28 19:34:52 UTC
(In reply to comment #7)
> Are there any issues with the current release, or should I
> proceed with a new build with current fixes?

everything else looks fine, thanks.