Re: CVS commit: src/sys/sys

2016-03-20 Thread Joerg Sonnenberger
On Sun, Mar 20, 2016 at 04:13:25PM +, Nick Hudson wrote:
> On 03/20/16 14:41, Joerg Sonnenberger wrote:
> >On Fri, Mar 18, 2016 at 04:29:15PM +, Nick Hudson wrote:
> 
> >>Is there a PR that describes the clang problem?
> >I gave you a detailed explination why the old version is a problem. So
> >far I have seen no real justification for the change, other than some
> >mumblings about ld mishandling weak symbols. That seems to be a pretty
> >clear cut case for a revert and going back to the design board to
> >understand why rump started failing with new binutils.
> 
> I'm old and forgetful and need a PR.
> 
> I think at the moment it's a case of least used gets left broken until all
> problems are understood

Here is a trivial test case showing that the basic problem exists for
both clang and gcc:

   int a, b

   int f(void) {
 return &a != &b;
   }

When compiling with -O2, both return the function to "return 1". The
linker set iteration typically looks something like:
   for (iter = &start; iter != &end; ++iter)
  ...

Depending on the phase of the moon, the compiler will therefore turn
this into a do-while loop as the condition is initially false.

In short, this is a real problem and the assumption is not specific to
clang. Revert now, please.

Joerg


Re: CVS commit: src/sys/sys

2016-03-20 Thread Nick Hudson

On 03/20/16 14:41, Joerg Sonnenberger wrote:

On Fri, Mar 18, 2016 at 04:29:15PM +, Nick Hudson wrote:



Is there a PR that describes the clang problem?

I gave you a detailed explination why the old version is a problem. So
far I have seen no real justification for the change, other than some
mumblings about ld mishandling weak symbols. That seems to be a pretty
clear cut case for a revert and going back to the design board to
understand why rump started failing with new binutils.


I'm old and forgetful and need a PR.

I think at the moment it's a case of least used gets left broken until 
all problems are understood




Joerg


Nick


Re: CVS commit: src/sys

2016-03-20 Thread Martin Husemann
On Sun, Mar 20, 2016 at 02:58:11PM +, Pierre Pronchery wrote:
> Module Name:  src
> Committed By: khorben
> Date: Sun Mar 20 14:58:11 UTC 2016
> 
> Modified Files:
>   src/sys/kern: kern_exec.c kern_pax.c
>   src/sys/sys: pax.h
> 
> Log Message:
> Let PaX ASLR know about the current emulation

Why are you commiting this while disucssion is still ongoing?
This is not the correct fix and also breaks the build for all 32bit
architectures.

Martin


Re: CVS commit: src/include

2016-03-20 Thread Christos Zoulas
In article <20160320144155.gb29...@britannica.bec.de>,
Joerg Sonnenberger   wrote:
>On Sun, Mar 20, 2016 at 10:11:50AM -0400, Christos Zoulas wrote:
>> Module Name: src
>> Committed By:christos
>> Date:Sun Mar 20 14:11:50 UTC 2016
>> 
>> Modified Files:
>>  src/include: stddef.h
>> 
>> Log Message:
>> PR/50983: David Shao: Protect stddef;
>> also make the pointer void *.
>
>It would be much nicer to cut out the defined(foo) checks and just use
>foo - 0 > ...

Indeed.

christos



Re: CVS commit: src/include

2016-03-20 Thread Joerg Sonnenberger
On Sun, Mar 20, 2016 at 10:11:50AM -0400, Christos Zoulas wrote:
> Module Name:  src
> Committed By: christos
> Date: Sun Mar 20 14:11:50 UTC 2016
> 
> Modified Files:
>   src/include: stddef.h
> 
> Log Message:
> PR/50983: David Shao: Protect stddef;
> also make the pointer void *.

It would be much nicer to cut out the defined(foo) checks and just use
foo - 0 > ...

Joerg


Re: CVS commit: src/sys/sys

2016-03-20 Thread Joerg Sonnenberger
On Fri, Mar 18, 2016 at 04:29:15PM +, Nick Hudson wrote:
> On 03/18/16 16:19, Joerg Sonnenberger wrote:
> >On Fri, Mar 18, 2016 at 10:52:27AM +, Christos Zoulas wrote:
> >>In article <20160318030154.gb12...@britannica.bec.de>,
> >>Joerg Sonnenberger   wrote:
> >>>On Thu, Mar 10, 2016 at 07:44:57PM -0500, Christos Zoulas wrote:
> Module Name:  src
> Committed By: christos
> Date: Fri Mar 11 00:44:56 UTC 2016
> 
> Modified Files:
>   src/sys/sys: cdefs_elf.h
> 
> Log Message:
> Undo weak here to fix the tests; will revisit soon.
> >>>Can you revert this now as it is broken and should not be used to work
> >>>around binutils bugs?
> >>Did something change? If I revert it all the rump tests fail...
> >So we are breaking clang for bugs in binutils now?
> >
> >Joerg
> >
> 
> Is there a PR that describes the clang problem?

I gave you a detailed explination why the old version is a problem. So
far I have seen no real justification for the change, other than some
mumblings about ld mishandling weak symbols. That seems to be a pretty
clear cut case for a revert and going back to the design board to
understand why rump started failing with new binutils.

Joerg