Multiarch paths and toolchain implications

2010-07-31 Thread Ulrich Weigand
n in particular means it is allowed for them
  to be hard-coded in toolchain source files, as well as in executable
  files and libraries built by such a toolchain.

* Change GCC back-ends to use the well-known multiarch suffix as OS
  multilib suffix, depending on target and ABI-changing options.  Also
  include multiarch suffix in ELF interpreter name passed to ld.
  (Probably need to change ld default directory search paths as well.)

* Change the dynamic loader ld.so to optionally append the multiarch suffix
  (as a constant string pre-determined at ld.so build time) after each
  directory search path, before further appending capability suffixes.
  (See above as to open questions about -rpath and LD_LIBRARY_PATH.)

* Change package build/install rules to install libraries and ld.so
  into multiarch library directories (not covered in this document).
  Change system installation to provide for backward-compatibility
  fallbacks (e.g. symbolic links to the ELF interpreter).

* If capability-optimized ISA/ABI-compatible library variants are desired,
  they can be build just as today, only under the (same) multiarch
  suffix.  They could be packaged either within a single pacakge,
  or else using multiple packages (of the same multiarch type).

* Enforce platform-independent header files across all packages. (In
  the alternative, provide for multiarch include paths in GCC.)

* Build cross-compiler packages with --with-sysroot=/

I'd appreciate any feedback or comments!  Have I missed something?



Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Multiarch paths and toolchain implications

2010-08-02 Thread Ulrich Weigand
Andrew Stubbs  wrote on 08/02/2010 01:35:01 PM:
> On 31/07/10 19:01, Ulrich Weigand wrote:
> > I've finally completed a first of draft the write-up of toolchain
> > implications of multiarch paths that we discussed in Prague.  Sorry it
took
> > a while, but it got a lot longer than I expected :-/
> >
> > I'd appreciate any feedback and comments!
>
> Thanks Ulrich, that's an excellent document. :)
>
> You didn't mention anything about the HWCAP stuff, though? I think we
> need to capture the discussion we had about "multiarch" == "ABI", and
> "multiarch" != "hardware features".

The second half of the section "Loading/running an executable" is about
thw HWCAP stuff (look for "capability suffix").  In the summary I have
this point:

* If capability-optimized ISA/ABI-compatible library variants are desired,
  they can be build just as today, only under the (same) multiarch
  suffix.  They could be packaged either within a single pacakge,
  or else using multiple packages (of the same multiarch type).

If you feel this could be made clearer, I'd appreciate any suggestions :-)


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Multiarch paths and toolchain implications

2010-08-02 Thread Ulrich Weigand
Loïc Minier  wrote:

>  Awesome analysis!

Thanks!

>  So I think you analyzed the upstream toolchain behavior

Yes, that's true.

>  and I think
>  Debian/Ubuntu toolchains cheat in some areas; for some directories
>  which would use $(version) we use $(major).$(minor) instead, and we
>  have a $(version) -> $(major).$(minor) symlink.  This doesn't really
>  relate to the multiarch topic, but it reminds me that we ought to fix
>  the distro divergences so that it's easier to swap an upstream
>  toolchain with a Debian/Ubuntu one and vice-versa.

Agreed.  Not sure what this particular divergence helps ...

> >   Executables built with the old ELF interpreter will not run on a
> >   system that *only* provides the multiarch install location.  This
> >   is clearly *not* OK.  To provide backwards compatibility, even a
> >   multiarch-capable system will need to install ELF interpreters
> >   at the old locations as well, possibly via symlinks.  (Note that
> >   any given system can only be compatible in this way with *one*
> >   architecture, except for lucky circumstances.)
>
>  I see two ways around this; we could patch the kernel to add a dynamic
>  prefix before the runtime-linker path depending on the executable
>  contents (typically depending on the arch),

This seems awkward.  The ELF interpreter location is encoded as full path,
which is not interpreted in any way by the kernel.  We'd either have to
encode particular filesystem layout knowledge into the kernel here, or
else add a prefix at the very beginning (or end?), which doesn't correspond
to the scheme suggested for multiarch.

If we go down that route, it might be easier to use tricks like bind-
mounting the correct ld.so for this architecture at the default location
during early startup or something ...

However, I'd have thought the whole point of the multiarch scheme was to
*avoid* having to play filename remapping tricks, but instead make all
filenames explicit.

>  or more elegantly we could
>  have a generic loader which checks the architecture of the target ELF
>  file before calling the arch-specific loader.  This loader would be
>  linked to from all the old locations.

Well, but then what architecture would that generic loader be in?  In the
end, it has to be *something* the kernel understands to load natively.

>  The reason I'm thinking of patching the kernel is because binfmt_misc
>  is already out there and allows special behavior when encountering
>  binary files from other architectures (or any binary pattern really).

But binfmt_misc only works because in the end it falls back to the built-
in native ELF loader.  (You can install arbitrary handlers, but the
handlers themselves must in the end be something the kernel already
knows how to load.)

> >   Option C: ld.so searches both the -rpath as is, and also with
> >   multiarch target string appended.
>
>  This is a risk for cross-builds; the native version might be picked up.
>  While this doesn't seem much of a risk for cross-compilation to an
>  entirely different architecture (e.g. x86 to ARM), consider
>  cross-builds from x86-64 to x86, or from EABI + hard-float to EABI +
>  soft-float.

That's one of the fundamental design questions: do we want to make sure
only multiarch libraries for the correct arch can ever be found, or do we
rather want to make sure on a default install, libraries that have not yet
been converted to multiarch can also be found (even taking the chance that
they might turn out be of the wrong architecture / variant) ...

>  BTW, the CodeSourcery patchset contains a "directory poisoning" feature
>  which seems quite useful to detect these cases early.

Yes, that's during compile time.  I understand the reason for this is more
to catch bad include paths manually specified in packages.  Not sure if
during load time the same concerns apply.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Multiarch paths and toolchain implications

2010-08-02 Thread Ulrich Weigand
Andrew Stubbs  wrote:

> It is buried a little deep, but it is there. I guess I'd like to see a
> flow of how a binary loads libraries:
>
> 1. User launches binary.
>
> 2. Kernel selects a suitable execution environment (native/qemu).
>
> 3. Kernel reads .interp and loads the multiarch dynamic linker:
> /lib/${mulitarch}/ld.so.
>
> 4. Dynamic linker uses HWCAP to find the most appropriate libc.so.

I thought that's basically the flow of the "Loading/running an executable"
sections ...  I've added sub-section headers to maybe make it a bit
clearer.

> We should post it on the Linaro wiki, probably.

It's now on:
https://wiki.linaro.org/WorkingGroups/ToolChain/MultiarchPaths


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294



___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: -fremove-local-statics optimization

2010-08-02 Thread Ulrich Weigand
Andrew Stubbs  wrote:

> Some discussion later, they decided it would be better to implement the
> optimization using inter-procedural dead store analysis:
>http://gcc.gnu.org/ml/gcc-patches/2008-07/msg01602.html

I agree that this would be a much nicer way ...

> This doesn't seem to have actually been done. Not yet, anyway.

Maybe this is something we should be working on then?

> So basically we're left with this patch that does something we want, but
> not in a way that can go upstream. :(
>
> The question is, should I merge this to Linaro, or not? Loic and I
> agreed to hold off until I'd done a bit more research and/or tried to
> upstream it again, but now I think we need to think again.

The one concern I have is that the patch introduces a user-visible
construct: the -fremove-local-statics command line option.  If we
add this now, and users add the flag to their Makefiles, and then
it goes away later on, users' builds could break.

On the other hand, we already have the flag in 4.4 anyway, so that
risk is there in either case ...


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: GCC PRE patch; apply or not?

2010-08-02 Thread Ulrich Weigand
Andrew Stubbs  wrote:

> CS has this patch in SG++:
> http://gcc.gnu.org/ml/gcc-patches/2008-12/msg00199.html
>
> This patch improves code size in a useful, target independent way, but
> was not committed upstream. It's not clear why. Since the patch does not
> belong to CodeSourcery, we can't upstream it ourselves either.

Steven asked: "What do you folks think of this patch?"
and the only answer was by Richi: "I think it's reasonable."

So I'm not sure why it didn't go in.  Maybe we should just ping Steven?

> Is that patch a suitable candidate for Linaro GCC?
>
> It is not upstreamable due to copyright issues, but we have a policy
> that we can keep such patches, if we wish.

What copyright issues?  Steven ought to have an assignment in place ...

> The principle of not letting Linaro and SG++ diverge too far also
> suggests keeping it.
>
> Any thoughts? If nobody objects soon I shall merge it in.

Since there don't appear to be any fundamental objections to inclusion
of the patch into mainline, and since the patch doesn't introduce any
user-visible feature (like syntax extensions or command line options)
that could cause build breaks for users if it were to go away after all,
I would say this patch is fine for us ...


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: [gnu-linaro-tools] Re: GCC PRE patch; apply or not?

2010-08-02 Thread Ulrich Weigand
Daniel Jacobowitz  wrote:
> On Mon, Aug 02, 2010 at 04:31:16PM +0200, Ulrich Weigand wrote:
> > Steven asked: "What do you folks think of this patch?"
> > and the only answer was by Richi: "I think it's reasonable."
> >
> > So I'm not sure why it didn't go in.  Maybe we should just ping Steven?
>
> It's been a while, but I think discussion elsewhere (a bug log maybe?)
> indicated that Steven wasn't happy with it.

Hmm, right, that's probably:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38785

Latest status seems to be that the original patch no longer applies,
but Joern did an updated (and somewhat modified) version.  This seems
to have triggered a more general discussion on how to correctly
estimate the effect of adding PHI nodes on code size ...


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Multiarch paths and toolchain implications

2010-08-02 Thread Ulrich Weigand
Loïc Minier  wrote on 08/02/2010 05:30:05 PM:

> > >  or more elegantly we could
> > >  have a generic loader which checks the architecture of the target
ELF
> > >  file before calling the arch-specific loader.  This loader would be
> > >  linked to from all the old locations.
> >
> > Well, but then what architecture would that generic loader be in?  In
the
> > end, it has to be *something* the kernel understands to load natively.
>
>  Currently with binfmt_misc when the kernel loads a binary it will check
>  whether it's the native architecture and if it is load the ELF dynamic
>  linker referenced in the binary; if it matches one of the regexps from
>  binfmt_misc, such as the binary pattern for ARM ELF binaries, it will
>  call the binfmt interpreter instead, e.g. qemu-arm, and in this case
>  qemu-arm will load the ELF runtime linker of the target binary to run
>  the binary inside the CPU emulation.

Well, my point is that *qemu-arm* is itself an ELF binary, and the kernel
must already know how to handle that.  We can have user-space handlers to
load secondary architectures that way -- but we cannot have a user-space
handler required to load the *primary* architecture; how would that handler
itself get loaded?

>  So I think this should just work; the kernel will call the native ELF
>  loader of the current arch for binaries for the current arch, and will
>  load QEMU which will load and emulate the ELF loader for the emulated
>  arch in the other cases.

Maybe I misunderstood something else about your point then, so let's try
and take a step back.  Today, the location of the ELF loader is embedded
into the executable itself, using a full pathname like /lib/ld.so.1.
In a multiarch world, this pathname would violate packaging rules, because
there are multiple different per-architecture versions of this file.

Thus I assumed the straightforward multiarch solution would be to move
this file to multiarch locations like /lib/$(multiarch)/ld.so.1, which
would require this new location to be embedded into all binaries.

I understood you to propose an alternative solution that would keep the
old ELF interpreter name (/lib/ld.so.1) embedded in executables, and
keep them working by installing some "common" loader at this location.

This caused me to wonder what that "common" loader was supposed to be,
given that the kernel (for *any* architecture) would be required to be
able to load that loader itself natively ...


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Multiarch paths and toolchain implications

2010-08-02 Thread Ulrich Weigand
Loïc Minier  wrote:

> > I understood you to propose an alternative solution that would keep the
> > old ELF interpreter name (/lib/ld.so.1) embedded in executables, and
> > keep them working by installing some "common" loader at this location.
>
>  Ah no, I intended us to move to /lib/$(multiarch)/ld.so.1, but for
>  compatibility with executables from other distros and pre-multiarch
>  world, we need to provide /lib/ld* loaders.

OK, I see.

>  And since the current
>  /lib/ld* names clash across architectures, I was proposing to replace
>  /lib/ld* with a clever wrapper that calls the proper
>  /lib/$(multiarch)/ld.so.1 depending on the architecture of the ELF file
>  to load.

So now we get back to my original question: what file type would that
"clever wrapper" be?  The kernel can only load an ELF interpreter that is
itself an ELF file of the native architecture, so that wrapper would
have to be that.  However, this means that we've once again violated
multiarch rules ...

If we have to install different native versions of the clever wrapper,
we might just as well install the original native ELF interpreters --
that's neither better nor worse from a multiarch rules perspective.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: [gnu-linaro-tools] Re: GCC PRE patch; apply or not?

2010-08-02 Thread Ulrich Weigand
Andrew Stubbs  wrote on 08/02/2010 06:47:36 PM:
> On 02/08/10 16:03, Ulrich Weigand wrote:
> > Latest status seems to be that the original patch no longer applies,
> > but Joern did an updated (and somewhat modified) version.  This seems
> > to have triggered a more general discussion on how to correctly
> > estimate the effect of adding PHI nodes on code size ...
>
> Do you mean this one?
>
> http://gcc.gnu.org/ml/gcc-patches/2009-03/msg00250.html

Yes, that's the one.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Multiarch paths and toolchain implications

2010-08-02 Thread Ulrich Weigand
Matthias Klose  wrote on 08/02/2010 06:25:58 PM:

> this is no "cheating".  It makes the packages robust. Remember that some
> frontends are built from different source packages and that a
> gnat-4.4 (4.4.4) still needs to be buildable with a gnat-4.4 (4.4.3)
> and an already updated gcc-4.4 (4.4.4).

So the problem that is you want to support a setup where a "gcc" driver
installed from a 4.4.4 build can still call and run a "gnat1" binary
installed from a 4.4.3 build?  That will most likely work.

But it still seems a bit fragile to me; in general, there's no guarantee
that if you intermix 4.4.4 and 4.4.3 components in that way, everything
actually works (that's why they use different directories in the first
place).

If you want to have separate packages, a cleaner way would appear to be to
make them fully self-contained, e.g. have them each provide their own
driver that can be called separately.

> Of course linaro could build all frontends from one source, but then the
two
> following issues have to be addressed:
>
>   - gcj/libjava has to be built in arm mode even if gcc defaults
> to thumb mode.
>
>   - build gnat from the linaro sources (this may be a problem with the
> bootstrap compiler, didn't investigate yet).

These sound like problems that ought to be addessed in any case ...


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Multiarch paths and toolchain implications

2010-08-02 Thread Ulrich Weigand
Loïc Minier  wrote:
> > If we have to install different native versions of the clever wrapper,
> > we might just as well install the original native ELF interpreters --
> > that's neither better nor worse from a multiarch rules perspective.
>
>  Hmm right; doesn't give us anything more

OK, then we're all in agreement again :-)

Now this point is where the suggestion to use something like a bind mount
on startup comes in.  That way, there would be no violation of the
multiarch rules, because /lib/ld.so.1 would not be part of any package,
and in fact not even part of any file system on disk, but simply be present
in the in-memory mount table.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Multiarch paths and toolchain implications

2010-08-03 Thread Ulrich Weigand
Wookey  wrote on 08/02/2010 10:40:23 PM:

> Hope that's not considered rude, Ulrich. (great bit of work capturing
> all that good stuff - thank you).

No problem, that's fine with me.  Thanks!


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Multiarch paths and toolchain implications

2010-08-03 Thread Ulrich Weigand
Andrew Stubbs  wrote:

> I suggest teaching the kernel to rewrite that path when it finds a
> non-existent interpreter. Presumably the kernel can "know" what
> multiarch corresponds to the traditional ABI for any given ELF flags.

The problem with this is that is this brings namespace policy into
the kernel, which kernel folks have been very opposed to in the past.

And I guess that's for good reason.  You probably don't want to have
to update your kernel in order to support a new ABI / different dynamic
linker / or just some different filesystem layout that some userspace
use case comes up with for whatever reason ...

If there's kernel support needed, the only way that would be acceptable
is if all naming policy involved is actually configured from user space.
That's another point that would be satisfied by a bind mount solution ...


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Multiarch paths and toolchain implications

2010-08-04 Thread Ulrich Weigand
Matthias Klose  wrote on 08/02/2010 09:38:49 PM:
> On 02.08.2010 21:12, Ulrich Weigand wrote:
> > Matthias Klose  wrote on 08/02/2010 06:25:58 PM:
> > So the problem that is you want to support a setup where a "gcc" driver
> > installed from a 4.4.4 build can still call and run a "gnat1" binary
> > installed from a 4.4.3 build?  That will most likely work.
>
> No, gnat (4.4.3) has still to work, if gcc (4.4.4) is already installed.

OK, where I said "gcc", the same applies also for "gnat", the Ada compiler
driver.   The reason for why a 4.4.3 gnat would fail if 4.4.4 gcc is
installed
is that it wouldn't find things like collect2, libgcc, crt*.o etc.   Right?

> > But it still seems a bit fragile to me; in general, there's no
guarantee
> > that if you intermix 4.4.4 and 4.4.3 components in that way, everything
> > actually works (that's why they use different directories in the first
> > place).
>
> Then I would need to change this internal path with every source change.
I
> don't see this as fragile as long as it is ensured that we ship with the
> different frontends built from the same patchsets/sources.  Note that
further
> restrictions are made by package dependencies.

The issues I'm thinking of are things like: suppose the 4.4.4 middle-end
adds
code that generates calls to some new libgcc library function, which itself
was added with the 4.4.4 libgcc.  If you now mix-and-match components so
that
a compiler built from the 4.4.4 sources and using the new middle-end is
used
together with a libgcc built from the 4.4.3 sources, things will break.

It seems that this does not actually occur in the usage model you describe,
since you apparently always update the core (libgcc etc.) *first*.  I'm not
sure if this is actually guaranteed by the package dependencies though.  If
it is, then I don't see any real problems with that approach ...

> > If you want to have separate packages, a cleaner way would appear to be
to
> > make them fully self-contained, e.g. have them each provide their own
> > driver that can be called separately.
>
> I don't understand that. I don't have a problem with the driver, butwith
the
> compiler (gnat1).  Having the packages self-contained creates
> another problem in
> that you get file conflicts for files like collect2, various .o files
etc.

What I was thinking of is along the lines of having gcc-base-4.4.3 and
gcc-base-4.4.4 packages that hold the base files (crt*o, libgcc,
collect2 ...),
such that you can install *multiple* of the base packages at the same time.
This way you could have a gcc-4.4.4 (depending on gcc-base-4.4.4) and a
gnat-4.4.3 (depending on gcc-base-4.4.3) all installed at the same time.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Multiarch paths and toolchain implications

2010-08-05 Thread Ulrich Weigand
Matthias Klose  wrote:
> On 04.08.2010 16:55, Ulrich Weigand wrote:
> > The issues I'm thinking of are things like: suppose the 4.4.4
middle-end
> > adds code that generates calls to some new libgcc library function,
which
> > itself was added with the 4.4.4 libgcc.  If you now mix-and-match
components
> > so that a compiler built from the 4.4.4 sources and using the new
middle-end
> > is used together with a libgcc built from the 4.4.3 sources, things
will
> > break.
>
> libgcc is always built from the sources which get uploaded first.

Ah, OK.  It seems this should work fine then.

> sure, you could have separate packages for subminor versions, and
introduce a
> new dependency package for the minor version (gcc-4.4-defaults), but
> I don't see how this would help within the context of the distribution.

Going back, the question I was trying to answer is how to set up packages
such that they can use the original upstream directory naming scheme, but
still allow the package build sequences that you need.  My suggestion was
simply about a possible way to achieve that; nothing more.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


GDB features and bugfixes

2010-08-08 Thread Ulrich Weigand

Hi Michael,

here's a list of features and bugfixes that can serve as a basis for
Monday's discussion on what we should be working on in GDB in the future.

The goal of the list is to fix currently known problems with GDB, including
the testsuite, as well as bringing GDB on ARM in line with other platforms
by adding required back-end support to enable common GDB features that are
already supported elsewhere.  It does not yet include anything completely
new that we'd develop specifically for ARM.

If anybody knows of a feature or bugfix I've missed, please let me know!


Features/fixes involving kernel support:
- hardware watchpoint support
- Neon registers in core files
- Interrupted syscall handling
- PTRACE_ATTACH disabled ?

Features/fixes involving GCC support:
- backtrace from abort (missing LR save)
- debug info for args in varargs routine

GDB features/fixes:
- prologue parsing on Thumb-2
- displaced stepping on Thumb
- syscall tracing support
- improved epilogue detection (fix software watchpoints)
- multi-threaded debugging inferior crashes
- multi-threaded Thumb/ARM state tracking
- signal handler stepping
- inferior call fixes
- misc. other testsuite regressions

gdbserver features/fixes
- Neon register support
- fast tracepoints



Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: GDB features and bugfixes

2010-08-09 Thread Ulrich Weigand
Peter Maydell  wrote:
> On 8 August 2010 15:30, Ulrich Weigand  wrote:
> > here's a list of features and bugfixes that can serve as a basis for
> > Monday's discussion on what we should be working on in GDB in the
future.
>
> > If anybody knows of a feature or bugfix I've missed, please let me
know!
>
> How about support for process record/replay and reverse debugging?
> http://sourceware.org/gdb/wiki/ProcessRecord says that's currently
> only supported on x86.

Good point; that's certainly another feature to put on the list.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


GDB 7.2 released

2010-09-03 Thread Ulrich Weigand

Michael,

a quick update to our discussion today: actually, GDB 7.2 has already been
released earlier today:
http://sourceware.org/ml/gdb-announce/2010/msg3.html


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Branding for Linaro GDB package

2010-09-21 Thread Ulrich Weigand

Hello Michael,

I'm looking into "branding" changes needed for a Linaro GDB release.   So
far I've made the following changes:

- Set default PKGVERSION to "Linaro GDB" instead of "GDB"
- Set default BUGURL to "http://bugs.launchpad.net/gdb-linaro/"; instead of
"http://www.gnu.org/software/gdb/bugs/";
- Set version number according to Linaro version scheme
- Update release script to generate tarballs/directories named
"gdb-linaro-$VERSION" instead of "gdb-$VERSION".

As a result, the default GDB startup output now reads:

GNU gdb (Linaro GDB) 7.2-2010.10-0
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu".
For bug reporting instructions, please see:
<http://bugs.launchpad.net/gdb-linaro/>.

Do you agree that this is the way we should go?  Have I overlooked
anything?

Unless there are objections, I'm planning to check these changes in later
this week.


As a related question, the generated files in a standard GDB 7.2 release
seem to have been built on a relatively old system (RHEL 4 ?), which is
visible through the versions of tools like bison, flex, texinfo, and
gettext used to build those files.   When building our Linaro GDB release
tarballs, should we:
- just use the tools as installed on a recent build system (say, Ubuntu
Lucid), or
- attempt to rebuild the release with the exact same set of tools used for
the GDB 7.2 release?

The second option has the advantage of reducing the amount of changes, e.g.
visible in a full diff of the release tarballs.  However, it has the
disadvantage that reconstructing those exact set of tools (including Red
Hat patches, it seems) is somewhat difficult, and can in addition lead to
somewhat outdated results ...


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Branding for Linaro GDB package

2010-09-21 Thread Ulrich Weigand
Matthias Klose  wrote:

> Note that these values are overridden when configuring --with-pkgversion
and
> --with-bugurl.

Yes, of course -- for the Ubuntu build they *should* refer to Ubuntu,
instead
of Linaro.  But those defaults are intended for people who build the Linaro
GDB from our source releases ...

> But this looks fine (and maybe should be used for the Linaro GCC too).

OK, thanks.

> for the GCC packages I'm using the versions required by upstream
> (autoconf2.64,  automake1.11), there even is an autoconf2.64 package
> for this purpose in the archives.  The binutils and GCC toplevel
configuries
> are kept in sync, not sure about the gdb one.

I wasn't refering to the configury files (which are already present in the
bzr/cvs repository and will not be regenerated during packaging), but to
files
like c-exp.c (generated via bison/flex), the gdb.info files (generated via
texinfo) or the gdb.pot files (generated via gettext).  These are not even
present at all in the repository (users building from the repository need
to
have all those tools installed), but will get generated when packaging up a
release source tarball ...


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Branding for Linaro GDB package

2010-09-22 Thread Ulrich Weigand
Michael Hope  wrote on 09/21/2010 11:44:14 PM:

> > As a related question, the generated files in a standard GDB 7.2
release
> > seem to have been built on a relatively old system (RHEL 4 ?), which is
> > visible through the versions of tools like bison, flex, texinfo, and
> > gettext used to build those files.   When building our Linaro GDB
release
> > tarballs, should we:
> > - just use the tools as installed on a recent build system (say, Ubuntu
> > Lucid), or
> > - attempt to rebuild the release with the exact same set of tools used
for
> > the GDB 7.2 release?
>
> We should use the tools that come with Lucid.  This does cause a
> bigger diff but is easier to reproduce and less of a maintenance
> problem.

OK, sounds good.  We'll need to make sure to test the final released
tarball, to verify that there's no problem with those versions of
generated files ...

> I'm not happy with generated files being checked in, but we have to do
> that to be  drop-in replacement for the upstream GDB.
>
> If it's straight forward then I'd like to avoid checking in the
> generated files if the change is only due to tool changes.  We will
> regenerate everything as part of the release process but it would be
> nice to keep the branch clean.

They'll not be checked into the branch; they'll be generated on the
fly and simply become part of the tarballs.



Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Branding for Linaro GDB package

2010-09-22 Thread Ulrich Weigand
Andrew Stubbs  wrote:

> GDB seems fine, except that I'd prefer that it didn't say "2010.10-0"
> until we actually spin the release. GCC is currently set to "development
> 2010.09-2", even though there probably never will be such a release.
> Basically, if somebody takes a snapshot, I'd like the --version string
> to be different from the official release.

Agreed.  I was showing how the output of the release build would look like.

In the Bazaar repository, I was planning to set the version string to
   7.2-2010.10-0-bzr
which is similar to what upstream does, except we use -cvs instead of -bzr,
and there's a daily date stamp -- but I don't really think we need that for
Linaro.

> What does gdbserver say?

The same:

  GNU gdbserver (Linaro GDB) 7.2-2010.10-0
  Copyright (C) 2010 Free Software Foundation, Inc.
  gdbserver is free software, covered by the GNU General Public License.
  This gdbserver was configured as "i686-pc-linux-gnu"



Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Linaro GDB release process

2010-09-22 Thread Ulrich Weigand

Hello,

I've now checked the Linaro branding changes in to the gdb-linaro Bazaar
repository.

I've created a Wiki page describing the Linaro GDB release process based on
that repository:
http://wiki.linaro.org/WorkingGroups/ToolChain/GDBReleaseProcess

(modeled after Andrew's GCCReleaseProcess page)

Review and comments are welcome!


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: CS MinGW patches

2010-10-05 Thread Ulrich Weigand
Andrew Stubbs  wrote:

> As discussed in the meeting yesterday, CodeSourcery has a few MinGW
> patches that I had not merged into Linaro GCC.
>
> I have now investigated these patches, and I'm fairly happy that most
> are not necessary for Linaro. They're mainly about interworking with
Cygwin.
>
> The one exception is this one:
>http://gcc.gnu.org/ml/gcc-patches/2010-04/msg01214.html
> (and even that is primarily a GDB issue).

This was merged into mainline libiberty (GCC & GDB) just a couple of
weeks ago.  I agree this is clearly not necessary for GCC.  I can
backport it into Linaro GDB 7.2 if needed ...


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: CS MinGW patches

2010-10-06 Thread Ulrich Weigand
Michael Hope  wrote on 10/05/2010 09:44:54 PM:
> On Wed, Oct 6, 2010 at 5:39 AM, Ulrich Weigand
 wrote:
> > Andrew Stubbs  wrote:
> >> The one exception is this one:
> >>    http://gcc.gnu.org/ml/gcc-patches/2010-04/msg01214.html
> >> (and even that is primarily a GDB issue).
> >
> > This was merged into mainline libiberty (GCC & GDB) just a couple of
> > weeks ago.  I agree this is clearly not necessary for GCC.  I can
> > backport it into Linaro GDB 7.2 if needed ...
>
> Please do.  It's landed upstream, is small, is low risk, and is easier
> to back port now than to track by other means.

I've checked this in now.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: the linaro toolchain and older arm versions

2010-10-07 Thread Ulrich Weigand
Matthias Klose  wrote:
> last time I checked this "multilibs" feature was implemented by building
the
> toolchain N times. By which magic is the correct library selected? I
didn't
> find anything in fsf trunk which supports this kind of multilibs builds.

No, you don't need to build the toolchain multiple times.  The toolchain
build
process for a target that supports multilibs will automatically build the
*target libraries* multiple times.  This is controlled by a bunch of
MULTILIB_... variables set in the target makefile fragment.  For example,
when configuring GCC for arm-linux-androideabi, the makefile fragment
config/arm/t-linux-androideabi is used and sets:

MULTILIB_OPTIONS = march=armv7-a mthumb
MULTILIB_DIRNAMES= armv7-a thumb

This has two effects: first, during GCC build, two extra sets of libraries
are built; one with the flag -march=armv7-a, which is stored in a
subdirectory
called "armv7-a", and one with the flag -mthumb, which is stored in
"thumb".

The second effect is at that runtime, when GCC is invoked with the
-march=armv7-a or -mthumb flags, the GCC driver will search for target
libraries in the respective directories "armv7-a" and "thumb" first, before
falling back to the default location.

This has been supported by GCC for a long time, but it isn't frequently
used on Linux targets (except to support -m32/-m64 style bi-arch
compilers).
One reason is that the GCC multilib scheme only affects target libraries
built as part of the GCC build process itself -- it does not solve the
problem of providing multiple version of all the other system libraries.
(However, embedded targets already make frequent use of multilibs.)


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Nov 29 - Dec 3

2010-12-06 Thread Ulrich Weigand

== GDB ==

 * Posted updated implementation of #661253 (Improve
   backtrace by using ARM exception tables) to gdb-patches,
   which includes several changes requested by reviewers
 * Posted updated patch to further improve backtrace
   (in the absence of debug info) to gdb-patches
 * Commented on a couple of GDB LP bugs

== Miscellaneous ==

 * Started setting up IGEP v2 board


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Dec 6 - Dec 10

2010-12-13 Thread Ulrich Weigand

== GCC ==

 * Tracked down root cause of GCC mainline bootstrap failure
   on ARM (PR 46040 - "__DTOR_LIST__ undeclared").

== Miscellaneous ==

 * Set up IGEP v2 board (w/ local disk, network, ...) as
   native GCC / GDB build environment.
 * Gave talk on Linaro at the "2010 Linux Community Event" at
   Siemens Munich (w/ Arnd Bergmann).


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Linaro gcc ICE bug

2010-12-13 Thread Ulrich Weigand
Khem Raj  wrote:

> The bug http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46883 files
> against GCC trunk also happens with linaro gcc 4.5
> My guess is that there is a backported patch from trunk into linaro
> 4.5 tree thats causing this ICE
>
> This ICE does not happen on upstream gcc-4.5 branch

Thanks for the bug report!

> I havent figured out the commit yet.

It looks like the regression was introduced by Bernd Schmidt's
patch to improve zero-/sign-extensions (PR 42172), which we
did indeed backport to Linaro GCC 4.5.  (I've updated the
PR 46883 bugzilla with more details.)

> Should you need a bug in linaro
> bug tracker I will be happy to file one

Yes, please do so; this makes it easier to track the problem
on the Linaro side.   Thanks!


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294



___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Dec 13 - Dec 17

2010-12-17 Thread Ulrich Weigand

== GCC ==

 * Completed first successful bootstrap and regression test run
   of GCC mainline on my IGEPv2 board.
 * Worked on implementing fix for #617384
   (.debug_line is wrong with -fpic)
 * Worked on backporting fix for #662324
   (Pointer type information lost in 4.5 debuginfo)
 * Analyzed root cause of PR target/46883
   (GCC ICE with error: unrecognizable insn)


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Extension elimination pass breaks SPU (Fw: spu gcc-4.5 linaro build failure)

2010-12-20 Thread Ulrich Weigand

Hello,

Matthias noticed the following ICE when attempting to build the SPU
compiler from the Linaro GCC 4.5 sources:

../../../../src-spu/libgcc/../gcc/libgcc2.c: In function '__fixunssfdi':
../../../../src-spu/libgcc/../gcc/libgcc2.c:1344:1: internal compiler
error: in
spu_expand_mov, at config/spu/spu.c:4575

It turns out that this is due to the new "extension elimination" pass that
was recently added in Linaro GCC, as port from the CodeSourcery compiler.
This patch has also been proposed, but not yet included upstream.

The problem is that this patch seems to frequently introduce instructions
that *set* a sub-word lowpart subreg of a register.   Now such
instructions, according to the docs, are probably valid RTL, but since the
effect of the instruction onto the highpart of the register is deliberately
left unspecified, they tend to be very infrequently used.   Probably
because of this, there seem to be parts of the compiler that simply don't
handle such instructions correctly.   This has been already noticed in the
case of the RTL loop optimizers (see discussion here
http://gcc.gnu.org/ml/gcc/2010-11/msg00552.html).

The failure in the SPU back-end is another instance of the same problem.
SPU needs special code to handle subregs (since a "lowpart" SImode subreg
of a DImode register is not actually valid on the SPU, because SImode
values live in bytes 0..3 while DImode values live in bytes 0..7 of the
otherwise big-endian 16-byte SPU registers), and this code simply aborts
when given an assignment to a sub-word lowpart subreg.


Now, I guess there's two ways forward:  either the outcome of the ongoing
discussions on gcc-patches is that it is in fact not a good idea to
generate such sets, and the EE pass is subsequently rewritten to avoid
them; or else, if those instructions are considered valid, I'll have to
extend the SPU move expander to handle them.   Thoughts?


Matthias, if you need a quick workaround for now, I guess you could disable
the new pass for SPU by adding a line "flag_ee = 0;" to
spu_override_options.



Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Extension elimination pass breaks SPU (Fw: spu gcc-4.5 linaro build failure)

2010-12-20 Thread Ulrich Weigand
Mark Mitchell  wrote:
> On 12/20/2010 8:35 AM, Ulrich Weigand wrote:
> > Matthias noticed the following ICE when attempting to build the SPU
> > compiler from the Linaro GCC 4.5 sources:
>
> With our Linaro hats on, is this something about which we should be
> concerned -- other than in so far as we want to get the patch accepted
> upstream?

Well, I understand we -as Linaro- would like to see Ubuntu base their
compiler on ours, but Ubuntu prefers to use a single source base for the
compiler for all their supported platforms, including SPU.  If we break
some of those other platforms in the Linaro compiler, that just creates
extra problems for Ubuntu ...

> > Now, I guess there's two ways forward:  either the outcome of the
ongoing
> > discussions on gcc-patches is that it is in fact not a good idea to
> > generate such sets, and the EE pass is subsequently rewritten to avoid
> > them; or else, if those instructions are considered valid, I'll have to
> > extend the SPU move expander to handle them.   Thoughts?
>
> I haven't participated in the upstream discussion -- I'm way behind on
> that list :-( :-( -- but I think such sets should be considered valid.

OK, I'll have a look at fixing the SPU back-end then.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Extension elimination pass breaks SPU (Fw: spu gcc-4.5 linaro build failure)

2010-12-22 Thread Ulrich Weigand
Ulrich Weigand/Germany/IBM wrote on 12/20/2010 06:01:21 PM:
> Mark Mitchell  wrote:
> > On 12/20/2010 8:35 AM, Ulrich Weigand wrote:
> > > Now, I guess there's two ways forward:  either the outcome of the
ongoing
> > > discussions on gcc-patches is that it is in fact not a good idea to
> > > generate such sets, and the EE pass is subsequently rewritten to
avoid
> > > them; or else, if those instructions are considered valid, I'll have
to
> > > extend the SPU move expander to handle them.   Thoughts?
> >
> > I haven't participated in the upstream discussion -- I'm way behind on
> > that list :-( :-( -- but I think such sets should be considered valid.
>
> OK, I'll have a look at fixing the SPU back-end then.

I've now fixed this problem in the back-end upstream:
http://gcc.gnu.org/ml/gcc-patches/2010-12/msg01694.html

I've also created a back-port to Linaro GCC 4.5 and proposed the
branch for merge; you can find the details at:
https://bugs.launchpad.net/gcc-linaro/4.5/+bug/693425


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Dec 20 - Dec 23

2010-12-23 Thread Ulrich Weigand

== GCC ==

 * Checked in mainline fix for #617384 and submitted backport merge
   requests (.debug_line is wrong with -fpic)
 * Submitted backport merge requests for the fix for #662324
   (Pointer type information lost in 4.5 debuginfo)
 * Checked in mainline fix for #693425 and submitted backport merge
   request (SPU back-end incompatible with extension elimination pass)


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Jan 17 - Jan 21

2011-01-21 Thread Ulrich Weigand

== GCC ==

 * Analyzed root cause of #685352 (libplymouth2_0.8.2-2ubuntu6 and
   later give ragged splash and text rendering), opened mainline
   bugzilla PR rtl-optimization/47299
 * Submitted backport merge request for the #685352 fix
 * Successfully completed profiled-bootstrap run on ARM
 * Investigated profiled pyhton package build problems

== GDB ==

 * Forward-ported GDB patch to support ARM hardware watchpoints
 * Determined root cause of #615978 (Failure to software single-step
   into signal handler), started discussion of proposed fix
 * Miscellaneous Launchpad bug maintenance



Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Jan 24 - Jan 28

2011-01-28 Thread Ulrich Weigand

== GCC ==

 * Determined root cause of #Bug 598462 (corrupted profile info
   with -O[23] -fprofile-use), identified work-around (using
   -fprofile-correction), and verified on GCC 4.5 and 4.6

== GDB ==

 * Worked on re-implementation of fix for #615978 (Failure to
   software single-step into signal handler)


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Help with define_insn

2011-01-31 Thread Ulrich Weigand
Ira Rosen  wrote:

> (define_insn "neon_vzip_internal"
>   [(set (match_operand:VDQW 0 "s_register_operand" "=w")
>(unspec:VDQW [(match_operand:VDQW 1 "s_register_operand" "0")]
> UNSPEC_VZIP1))
>(set (match_operand:VDQW 2 "s_register_operand" "=w")
> (unspec:VDQW [(match_operand:VDQW 3 "s_register_operand" "2")]
> UNSPEC_VZIP2))]
>   "TARGET_NEON"
>   "vzip.\t%0, %2"
>   [(set (attr "neon_type")
>   (if_then_else (ne (symbol_ref "") (const_int 0))
> (const_string "neon_bp_simple")
> (const_string "neon_bp_3cycle")))]
> )
>
> Is there a way to properly mark the dependence?

I guess you need to make sure the UNSPEC_VZIP forms both explicitly
depend on both input operands.  This can be a bit tricky due to
various reload constraints on how matching constraints and/or
match_dup can be used, but I think something along the following
lines should work:

   [(set (match_operand:VDQW 0 "s_register_operand" "=w")
(unspec:VDQW [(match_operand:VDQW 1 "s_register_operand" "0")
  (match_operand:VDQW 2 "s_register_operand" "w")]
     UNSPEC_VZIP1))
(set (match_operand:VDQW 3 "s_register_operand" "=2")
 (unspec:VDQW [(match_dup 1) (match_dup 2)]
 UNSPEC_VZIP2))]



Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Help with define_insn

2011-02-01 Thread Ulrich Weigand
Ira Rosen  wrote:

> After testing only with the vectorizer testsuite (which contains at
> least 30 tests for strided accesses), I'd appreciate comments on the
> patch before I start full testing (cross testing with qemu doesn't
> work so well for NEON).

I cannot really comment on the ARM semantics, but just from the point
of view of how the .md file looks:

- You define new patterns neon_vzip_interleave etc. instead of using
  the existing neon_vzip_internal etc., presumably because the
  existing patterns are broken.  But because they are actually broken,
  they should rather be fixed themselves (and *then* used instead of
  duplicated).

- You define a bunch of new UNSPEC_ codes which will actually never show
  up in RTL, because the expanders that appear to use them always end in
  a DONE statement:

+(define_expand "vec_extract_even"
+ [(set (match_operand:VDQW 0 "register_operand" "")
+(unspec:VDQW [(match_operand:VDQW 1 "register_operand" "")
+  (match_operand:VDQW 2 "register_operand" "")]
+  UNSPEC_EXTEVEN))]
+ "TARGET_NEON"
+{
+  rtx tmp = gen_reg_rtx (mode);
+
+  if (BYTES_BIG_ENDIAN)
+emit_insn (gen_neon_vuzp_extract (tmp, operands[1], operands[2],
+ operands[0]));
+  else
+emit_insn (gen_neon_vuzp_extract (operands[0], operands[1],
+ operands[2], tmp));
+  DONE;
+})

  It doesn't seem to make much sense to define UNSPECs here; such expanders
  can instead simply use naked match_operands like so:

  (define_expand "vec_extract_even"
   [(match_operand:VDQW 0 "register_operand" "")
(match_operand:VDQW 1 "register_operand" "")
(match_operand:VDQW 2 "register_operand" "")]


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Help with define_insn

2011-02-01 Thread Ulrich Weigand
Ramana Radhakrishnan  wrote:
> On 1 February 2011 14:01, Ulrich Weigand 
wrote:
> > - You define new patterns neon_vzip_interleave etc. instead of
using
> >  the existing neon_vzip_internal etc., presumably because the
> >  existing patterns are broken.  But because they are actually broken,
> >  they should rather be fixed themselves (and *then* used instead of
> >  duplicated).
>
> Are they actually broken  ? I'd be worried if that were the case. My
> understanding is that the
> existing ones are being used for the Neon intrinsics / builtins.

Yes, they're broken, for the reason Ira originally points out:

"The problem with it is that it doesn't express the fact that the two
outputs of vzip depend on both inputs, which causes wrong code
generation in CSE:
for
(a,b)<- vzip (c,d)
and
(e,f) <- vzip (g,d)
CSE decides that b==f, since on RTL level b and f depend only on d."

(define_insn "neon_vzip_internal"
  [(set (match_operand:VDQW 0 "s_register_operand" "=w")
   (unspec:VDQW [(match_operand:VDQW 1 "s_register_operand" "0")]
UNSPEC_VZIP1))
   (set (match_operand:VDQW 2 "s_register_operand" "=w")
(unspec:VDQW [(match_operand:VDQW 3 "s_register_operand" "2")]
UNSPEC_VZIP2))]

The VZIP unspecs must have *both* input registers as operand, since
the output actually depends on both.

It may be that in the original use (where the output seems to always
be written to memory for some reason?) CSE rarely has an opportunity
for perform this transformation, but it's still at least latently
broken ...

> It would be a good thing to integrate the 2 of them together if at all
> possible.

I think if the original pattern is fixed, Ira should be able to just use
it without problem.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Jan 31 - Feb 04

2011-02-04 Thread Ulrich Weigand

== GDB ==

 * Prepared Linaro GDB 7.2-2011-02.0 release
 * Committed two patches to implement LP #661253 (Improve
   backtrace by using ARM exception tables) to mainline and
   Linaro GDB 7.2
 * Provided two follow-on fixes to the patch for LP #616000
   (Handle -fstack-protector prologue code); both applied to
   mainline and Linaro GDB 7.2
 * Backported mainline fix for LP #685494
   (gdb.xml/tdesc-regs.exp failure) to Linaro GDB 7.2
 * Identified root cause of LP #711375 (gdb internal error
   in inline_frame_this_id trying to debug a qemu target);
   committed fix to mainline and Linaro GDB 7.2
 * Worked on re-implementation of fix for LP #615978 (Failure
   to software single-step into signal handler)


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Problems with kernel support for hardware watchpoints

2011-02-09 Thread Ulrich Weigand

Hello Will,

I've been trying to get GDB support for hardware watchpoints/breakpoints
going.  I've ported Matthew's GDB patch to current mainline, and am running
this under a 2.6.37-1002-linaro-omap kernel on an IGEPv2 board.

However, something seems to be not quite working:  I'm seeing this kernel
message on boot:
hw-breakpoint: debug architecture 0x4 unsupported.
and then at runtime, the result of a PTRACE_GETHBPREGS call for register 0
is 0x04000106:
debug architecture: 4
watchpoint size: 0
nr. watchpoints: 1
nr. breakpoints: 6

This leads me to a couple of questions:

- It seems odd that the kernel says it doesn't support the debug
architecture, but then reports to user space that 1 watchpoint and 6
breakpoints are supported ...   GDB will never use the watchpoint, because
the maximum watchpoint size is reported as zero, but GDB will attempt to
use the breakpoints.  Setting a breakpoint will appear to succeed, but then
the breakpoint just never triggers.  The kernel should IMO be more
consistent in how unsupported configurations are handled ...

- Why is architecture 0x4 not supported?  This seems to be the variant of
the v7 debug architecture with memory-mapped registers.  Apparently the
IGEP only supports this version ...  Do you know what the
Beagle-/Pandaboard and other clones do?  What would it take to support this
architecture variant?   Given the widespread use of those boards, it would
be really nice if we could support hardware debugging on them ...

- Which hardware *is* supported?  Can you recommend a board I should be
using to verify GDB support is working?

Thanks for your help in getting this working!


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


RE: Problems with kernel support for hardware watchpoints

2011-02-10 Thread Ulrich Weigand
Hi Will,

> > - It seems odd that the kernel says it doesn't support the debug
> > architecture, but then reports to user space that 1 watchpoint and 6
> > breakpoints are supported ...   GDB will never use the watchpoint,
because
> > the maximum watchpoint size is reported as zero, but GDB will attempt
to
> > use the breakpoints.  Setting a breakpoint will appear to succeed, but
then
> > the breakpoint just never triggers.  The kernel should IMO be more
> > consistent in how unsupported configurations are handled ...
>
> Agreed. This is an artifact of how the ptrace info register is populated.
> I'll work on a fix tomorrow so that we don't report any resources when
> the architecture is unsupported.

Great, thanks!

> > - Why is architecture 0x4 not supported?  This seems to be the variant
of
> > the v7 debug architecture with memory-mapped registers.  Apparently the
> > IGEP only supports this version ...  Do you know what the
> > Beagle-/Pandaboard and other clones do?  What would it take to support
this
> > architecture variant?   Given the widespread use of those boards, it
would
> > be really nice if we could support hardware debugging on them ...
>
> The memory-mapped interface is hugely unreliable in real hardware because
> you have to calculate the address of the memory-mapped debug registers by
> using a base and offset, which are hardcoded in some information
registers.
> Unfortunately, I've never found a board where these registers have been
> programmed correctly so (a) I had nothing to test my code with (b) few
people
> would be able to use it and (c) there's not really a safe way to go
around
> poking random areas of memory.

Huh, I see.  I have no idea whether those information registers contain
correct values on IGEP ..

> > - Which hardware *is* supported?  Can you recommend a board I should be
> > using to verify GDB support is working?
>
> The simple rule is Cortex-A8 is unsupported and Cortex-A9 is supported.
> The A5 should work (untested) and the A15 will need a bit of hacking to
> get it supported.

OK.  I guess I can try on our Versatile Express.

> > Thanks for your help in getting this working!
>
> No problem. If you find anybody with working memory-mapped debug and some
> spare time, I'd be happy to review patches :)

Thanks!  I'll try and see if I can figure out where the MM area is
on the IGEP ...



Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


RE: Problems with kernel support for hardware watchpoints

2011-02-11 Thread Ulrich Weigand
"Will Deacon"  wrote on 02/11/2011 10:13:01 AM:

> I don't have a pandaboard, so I'd be interested to see if the code
> works there. I developed it using ARM boards, so the versatile express
> is a known good target.

I've now got it working reliably on on Versatile Express, after fixing
a couple of bugs on the GDB side (both in the HW-watchpoint patch, and
in common GDB code).  The testsuite now passes with no regressions when
enabling HW watchpoints, except for two tests that require more than one
single watchpoint to be supported.

This raises another couple of issues/questions, however:

- In testing on Versatile Express, I noticed what appears to be SMP
  related bugs in handling regular software breakpoints: occasionally,
  software breakpoints simply are not hit and execution continues as if
  the underlying code had not been changed at all.  This symptom
  completely goes away if GDB and the debugged process are forced to
  the same CPU using the affinity feature (e.g. with schedtool).

  My guess, just from seeing those symptoms, would be that when inserting
  a software breakpoint via ptrace, not all i-caches on all CPUs are
  reliably flushed ...   Any thoughts on this?

- As mentioned above, the kernel currently only supports one single
  watchpoint to be active at a time, even though hardware might support
  multiple ones.  The reason seems to be that when a watchpoint triggers,
  the kernel cannot figure out which one it was (if there's more than one
  choice).

  This is a bit unfortunate, given that GDB will attempt to insert two
  or more watchpoints in many interesting cases (e.g. a "watch *p"
  command will insert *two* low-level watchpoints, one at the address
  of p, and one at the address where p (currently) points to).

  In addition, for regular (write) watchpoints, GDB does not actually
  *require* the underlying hardware/kernel to specify which watchpoint
  was hit; GDB is able to find out by itself by checking whether the
  values at any of the currently active locations actually changed.
  (For read/access type watchpoints, GDB does require that underlying
  support -- but those are much more rarely used anyway.)

  Do you see any chance of improving upon the current behaviour?

- Finally, I noticed when reading kernel code that under some
  circumstances, the kernel will automatically do a single step to
  get off a watchpoint that was just hit.  However, this does not
  happen for user-space watchpoints installed via ptrace, right?
  (Just wanting to confirm; since GDB currently does that single
  step itself -- we don't want *both* kernel and GDB to issue a
  single step each ...)

I haven't gotten to looking further into other hardware (IGEP,
Panda) -- that's next on the list.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Jan 07 - Feb 11

2011-02-11 Thread Ulrich Weigand

== GDB ==

 * Installed 2.6.37 Linaro kernel on IGEP and Versatile Express
   in order to verify support for HW breakpoints/watchpoints
 * Tested GDB HW watchpoints patch, fixed several bugs in the
   patch and core GDB, and got it working reliably on vexpress
 * Started discussion with Will Deacon (ARM) regarding possible
   further enhancements to related kernel support


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


RE: Problems with kernel support for hardware watchpoints

2011-02-14 Thread Ulrich Weigand
"Will Deacon"  wrote on 02/14/2011 11:30:45 AM:

> > - In testing on Versatile Express, I noticed what appears to be SMP
> >   related bugs in handling regular software breakpoints: occasionally,
> >   software breakpoints simply are not hit and execution continues as if
> >   the underlying code had not been changed at all.  This symptom
> >   completely goes away if GDB and the debugged process are forced to
> >   the same CPU using the affinity feature (e.g. with schedtool).
>
> I've seen this issue in the past but I thought I'd fixed it. What kernel
are
> you using and do you have CONFIG_ARM_ERRATA_720789 enabled?

I'm using the 2.6.37-1002-linaro-vexpress kernel from the Linaro package
of the same name.  This does *not* have CONFIG_ARM_ERRATA_720789 enabled
(presumably because the mach-vexpress/Kconfig file does not add it?) ...

> >   My guess, just from seeing those symptoms, would be that when
inserting
> >   a software breakpoint via ptrace, not all i-caches on all CPUs are
> >   reliably flushed ...   Any thoughts on this?
>
> There was an I-cache aliasing problem in the kernel coupled with a TLB
> invalidation hardware bug on the versatile express. I fixed these though
> and haven't seen any problems since.

Hmm, a TLB flush problem could also explain the symptom (because the write
of the breakpoint to the text section causes a copy-on-write operation
which
installs a new page ...)

I'll try rebuilding the kernel with the above config option enabled.

> Hmmm, I'll need to have a think about this. What does GDB do if it
receives
> a SIGTRAP with si_addr set to (potentially) complete nonsense? As an
aside,
> Cortex-A15 reports the faulting address for a watchpoint correctly, so we
> will be able to use multiple watchpoints there.

The GDB common core can handle either of the following two indications:

A) The (read/write/access) watchpoint at address XXX triggered.
B) A write watchpoint may have triggered at some address.

In the case of B, GDB will scan all the write breakpoints it is currently
tracking and compare the current value at that address with the last value
it remembers being present there.  Any changes GDB sees will cause it to
report the corresponding watchpoint as triggered.

As far as the kernel interface is concerned, the important issue that the
ARM native target in GDB is able to understand what the kernel reports, so
it can in turn report either case A or B to the common core.

This means as long as there is some way for GDB to understand the kernel
is reporting a write watchpoint hit at an unknown address, everything is
fine.  This could be done e.g. be reporting a "slot" zero in si_errno to
indicate the slot (and then also the address) triggering the watchpoint
is unknown ...

> > - Finally, I noticed when reading kernel code that under some
> >   circumstances, the kernel will automatically do a single step to
> >   get off a watchpoint that was just hit.  However, this does not
> >   happen for user-space watchpoints installed via ptrace, right?
> >   (Just wanting to confirm; since GDB currently does that single
> >   step itself -- we don't want *both* kernel and GDB to issue a
> >   single step each ...)
>
> If the {break,watch}point has been inserted via ptrace, the kernel will
> send a SIGTRAP instead of stepping the instruction.

OK, thanks for the confirmation!

> > I haven't gotten to looking further into other hardware (IGEP,
> > Panda) -- that's next on the list.
>
> Good stuff, keep me posted if you see any further problems!

Sure, will do!


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


RE: Problems with kernel support for hardware watchpoints

2011-02-15 Thread Ulrich Weigand
> "Will Deacon"  wrote on 02/14/2011 11:30:45 AM:
>
> > > - In testing on Versatile Express, I noticed what appears to be SMP
> > >   related bugs in handling regular software breakpoints:
occasionally,
> > >   software breakpoints simply are not hit and execution continues as
if
> > >   the underlying code had not been changed at all.  This symptom
> > >   completely goes away if GDB and the debugged process are forced to
> > >   the same CPU using the affinity feature (e.g. with schedtool).
> >
> > I've seen this issue in the past but I thought I'd fixed it. What
kernel
> > are you using and do you have CONFIG_ARM_ERRATA_720789 enabled?
>
> I'm using the 2.6.37-1002-linaro-vexpress kernel from the Linaro package
> of the same name.  This does *not* have CONFIG_ARM_ERRATA_720789 enabled
> (presumably because the mach-vexpress/Kconfig file does not add it?) ...

I've now built a kernel with CONFIG_ARM_ERRATA_720789 enabled, and the
symptoms indeed seem to have disappeared completely ...


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


RE: Problems with kernel support for hardware watchpoints

2011-02-16 Thread Ulrich Weigand
"Will Deacon"  wrote on 02/16/2011 01:07:09 PM:

> > I've now built a kernel with CONFIG_ARM_ERRATA_720789 enabled, and the
> > symptoms indeed seem to have disappeared completely ...
>
> Yup - that's because without it, invalidating a TLB entry for a
particular
> process isn't broadcast correctly, so you can end up using the old
(pre-COW)
> mappings if you're running on a different core.

OK.  So I guess the only remaining questions is: if this hardware needs the
errata fix to work properly, shouldn't it be automatically selected by the
kernel configure logic?  Note that this appears to happen for certain OMAP
boards, see arch/arm/mach-omap2/Kconfig:

config ARCH_OMAP4
bool "TI OMAP4"
default y
depends on ARCH_OMAP2PLUS
select CPU_V7
select ARM_GIC
select PL310_ERRATA_588369
select ARM_ERRATA_720789  <<=
select USB_ARCH_HAS_EHCI

But this does not happen for the vexpress; arch/arm/mach-vexpress/Kconfig
has only:

config ARCH_VEXPRESS_CA9X4
bool "Versatile Express Cortex-A9x4 tile"
select CPU_V7
    select ARM_GIC


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Feb 14 - Feb 17

2011-02-18 Thread Ulrich Weigand

== GDB ==

 * Working with Will Deacon, identified root cause of GDB
   problems running on Versatile Express in SMP mode, and
   verified that Errata workaround fixes the problem
 * Finished testing GDB HW watchpoints patch on vexpress,
   submitted complete patch set for mainline inclusion
 * Reviewed Yao's mainline patch to enable displaced
   stepping in Thumb mode


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: [ACTIVITY] Feb 14 - Feb 17

2011-02-21 Thread Ulrich Weigand
Michael Hope  wrote on 02/20/2011 08:18:22 PM:
> On Sat, Feb 19, 2011 at 7:55 AM, Ulrich Weigand
> >  * Finished testing GDB HW watchpoints patch on vexpress,
> >   submitted complete patch set for mainline inclusion
>
> Let me know when and how and I'll update the build machines.

I've now committed HW watchpoint support to mainline GDB, and
backported to Linaro GDB 7.2 (rev. 32992).

Before you update the build machines, please make sure that
the hardware/kernel on those machines actually support HW
watchpoints.  The simplest way to find out is to verify that
the kernel boot messages include something like:

  hw-breakpoint: found 6 breakpoint and 1 watchpoint registers.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Feb 21 - Feb 25

2011-02-25 Thread Ulrich Weigand

== GDB ==

 * Worked with Will Deacon and the Linaro kernel team to
   make sure HW watchpoint and Versatile Express errata
   fixes are included in the upcoming Linaro kernel release.
 * Committed GDB HW watchpoint patches to mainline, and
   backport to Linaro GDB.  This completes work on the
   HW watchpoint blueprint.
 * Worked on fixing the GDB part of #620611 (Unable to
   backtrace out of vector page 0x).  Posted
   (two versions of) mainline patch for discussion.
 * Worked on kernel patch for #615974 (Interrupted system
   call handling).


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Feb 28 - Mar 04

2011-03-04 Thread Ulrich Weigand

== GDB ==

 * Committed fix for the GDB part of #620611 (Unable to
   backtrace out of vector page 0x) to mainline and
   Linaro GDB 7.2.

 * Ran into GDB crashes due to memory corruption in tests
   involving multiple inferiors.  Tracked down root cause
   (using valgrind) to long-standing double free bug in GDB
   terminal state handling code.  Committed fix to mainline
   and Linaro GDB 7.2.

 * While using valgrind (see above), ran into problems:
   * ptrace system call is unsupported on ARM
   * certain variants of the "SUB from SP" Thumb-2 instruction
 are not handled by the VEX compiler
   Fixed both problems locally, and was then able to successfully
   valgrind GDB on ARM.

 * Created Linaro GDB 7.2-2011.03-0 release.

 * Worked on glibc patch to add ARM unwind tables to system
   call stubs; this will help unwinding in the absence of
   debug info for libc, and in particular fix #684218 (Failures
   in gdb.base/call-signal-resume.exp)


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Work-item tracking for the "gcc-linaro-tracking" LP project

2011-03-08 Thread Ulrich Weigand

Hi Michael, Andrew,

Mounir just pointed out that our non-Ubuntu LP projects (like gcc-linaro,
gdb-linaro etc.) are now also included in the LP work-item tracking
statistics (http://status.linaro.org/linaro-toolchain-wg.html).   This
didn't happen in the past due to a Launchpad issue that has now been fixed.

This seems to be working out nicely, except for one issue:  what about the
gcc-linaro-tracking project?   I have a couple of bugs that are fixed in
Linaro GCC, and are also fixed in mainline GCC, but they still show up as
an "in-progress" work-item in the status tracker (there are a whole bunch
more of those assigned to Andrew as well).  The reason for this is the LP
records have an associated gcc-linaro-toolchain project entry, and this is
set to "Fix Committed", but not "Fix Released" ... probably because GCC
4.6.0 is not yet released?

Now, on the one hand it does make sense to include the -tracking project in
the work-item statistics, because they *do* reflect important tasks:
namely, to make sure that the changes indeed land in the upstream
repository.   However, having them all show up as "in progress" until the
community makes a new GCC release does not seem very helpful: this is not
in our control, and our work is in fact done once the patch is committed
upstream.

Therefore my suggestion: we should immediately mark -tracking bugs as "Fix
Released" (not "Fix Committed"), as soon as the corresponding patch is
committed upstream (and thus our work on the problem is completed).

Thoughts?   Does this make sense?  Will this mess up any of the other
purposes for which we currently use the -tracking project?


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Mar 07 - Mar 11

2011-03-11 Thread Ulrich Weigand

== GDB ==

 * Ongoing work on glibc patch to add ARM unwind tables to system
   call stubs; ran into design problems that look difficult to fix.

 * As an alternative, started work on a GDB patch to recognize glibc
   system call assembler stubs via code-scanning; this should allow
   alloc unwinding in the absence of debug info for current libc code.

 * Analyzed bug #728216 (GDB fails to get a valid backtrace while
   debugging a Webkit SIGSEGV) and resolved as invalid; the fault
   occurs within JIT-generated code where unwinding is impossible.

== Misc ==

 * Made travel arrangements for Linaro Summit in Budapest


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Mar 14 - Mar 18

2011-03-18 Thread Ulrich Weigand

== GDB ==

 * Ongoing work on glibc patch to add ARM unwind tables to system
   call stubs (bug #684218).

 * Implemented initial version of a kernel patch that fixes GDB
   inferior calls while stopped in a restartable system call
   (bug #615974); started discussion with kernel folks.

 * Implemented new version of patch to fix single-stepping over
   signal handlers (bug #615978) that addresses review comments;
   posted to mailing list.

 * Verified Linaro GDB patch set can be applied to Ubuntu package.



Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Mar 21 - Mar 25

2011-03-25 Thread Ulrich Weigand

== GDB ==

 * Completed glibc patch to add ARM unwind tables to system call stubs
   (bug #684218), patch committed upstream and backported to Ubuntu glibc.

 * Posted kernel patch to fixes GDB inferior calls while stopped in a
   restartable system call (bug #615974); waiting for review.

 * Ongoing work to fix single-stepping over signal handlers (bug #615978).

 * Implemented patch to fix single-stepping across bad ARM/Thumb boundary
   (bug #667309); posted to mailing list for comments.

 * Contributed two fixes for valgrind on ARM (to enable running GDB under
   valgrind); both now accepted mainline.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Mar 28 - Apr 01

2011-04-01 Thread Ulrich Weigand

== GDB ==

 * Committed patch to fix single-stepping across bad ARM/Thumb boundary
   (bug #667309) to mainline and Linaro GDB.

 * Committed patch to fix accessing "fpscr" register to mainline.

 * Ongoing work to fix single-stepping over signal handlers (bug #615978).
   Posted yet another updated patch to gdb-patches for comments.

 * Implemented patch to support NEON registers in core files (bug #615972).

 * Investigated failure to disable address space randomization
   (bug #616001).


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Apr 04 - Apr 06

2011-04-06 Thread Ulrich Weigand

== GDB ==

 * Ongoing work to fix single-stepping over signal handlers (bug #615978).

 * Posted patch to support NEON registers in core files (bug #615972).

 * Failure to disable address space randomization (bug #616001) is shown
   to be a kernel problem; created stand-alone test case and opened bug
   against kernel team.

== Schedule ==

 * On vacation 04/07 - 04/15.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Changing how we make changes

2011-04-18 Thread Ulrich Weigand
Michael Hope wrote on 04/08/2011 04:01:42 AM:

> The short story is that now, just like mainline, the developers
> themselves do the final commit or merge into bzr.  I've volunteered
> three of you on a review roster so that someone has the responsibility
> for reviewing patches each week.  The roster is:
>  * Ramana week 15, 17, 20, ... starting the 11th of April 2011
>  * Richard week 16, 18, 21, ... starting the 18th of April 2011
>  * Ulrich week 17, 19, 22, ... starting the 25th of April 2011

Is the overlap in just week 17 deliberate?


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Apr 18 - Apr 21

2011-04-21 Thread Ulrich Weigand

== GDB ==

 * Created Linaro GDB 7.2-2011.04-0 release.

 * Committed patch to fix accessing "fpscr" register to Linaro GDB.

 * Failure to disable address space randomization (bug #616001) has been
   fixed in the kernel; closed the Linaro GDB bug.

== GCC ==

 * Ongoing analysis of bug #759409 (Profiled bootstrap fails).  Identified
   two independent problems, one related to a new CodeSourcery feature,
   and one a mis-optimization of final-stage cc1plus which is also present
   in FSF GCC 4.5 (PR 43085).  Ongoing investigation to track down the
   root cause of the latter problem.

== Schedule ==

 * Public holidays 04/22 - 04/25.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Apr 26 - Apr 29

2011-04-29 Thread Ulrich Weigand

== GDB ==

 * Committed series of patches to fix bug #615978 (Failure to software
   single-step into signal handler) to mainline and Linaro GDB.

 * Drafted blueprint linaro-toolchain-o-cross-debug

== GCC ==

 * Split bug #771900 (Linaro GCC 4.5 switch optimization breaks profiled
   bootstrap) off bug #759409 (Profiled bootstrap fails in GCC 4.5).
   Tracked down root cause of bug #759409 / PR middle-end/43085, and
   posted fix to gcc-patches.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] May 2 - May 6

2011-05-09 Thread Ulrich Weigand

== GDB ==

 * Committed support for NEON registers in core dumps (bug #615972)
   to Linaro GDB (not yet in mainline).

 * Investigated root cause of bug #615996 (gdb.cp/templates.exp) and
   started exploring ways to fix it.

== GCC ==

 * Committed fix for bug #759409 (Profiled bootstrap fails in GCC 4.5)
   to FSF GCC 4.5 branch and Linaro GCC 4.5.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Engineering blueprints for 11.11

2011-05-19 Thread Ulrich Weigand
Michael Hope  wrote:

> Hi there.  The next two weeks is where we take the technical topics
> from the TSC and the discussions had during the summit and turn them
> into the concrete engineering blueprints for this cycle.  I've created
> a page at:
>  https://wiki.linaro.org/MichaelHope/Sandbox/Blueprints
>
> listing all of the TRs.  Could you please have a look through these,
> find any with your name on them, and fill in the wiki page.  I've put
> more notes on the page itself.  Some of the topics may warrant
> specifications.
>
> Let me know if you have questions on what the topics actually mean.


In the past cycle, I've been using the feature to attach bugs as
work items to a blueprint, and I had been planning to do so again
for at least some blueprints this cycle.  However, this means that
work items are added and disappear as bugs are discovered and
possibly resolved as invalid.  This seems to conflict with the
goal that this cycle, work item numbers should stay stable ...

Any thoughts on how we should handle this?


Also, some of the feedback from UDS sessions included features that
could arguably be considered part of our blueprints, but go beyond
what was originally their scope.  For example, one user asked for
GDB tracepoints to be also supported with native debugging, and
one asked for enhancements to cross-debugging the kernel via KGDB.

At this point it is not clear whether there is anything we can do
about those requirements during this cycle, but I think we should
keep track of them to make sure they're not forgotten.  I could
think of a number of ways to do so:

- Add work items to the current blueprints (and postpone them if
  we cannot in the end implement them)

- Do more investigation work first, and then add work items later
  if appropriate

- Don't add them at all to the existing blueprints, but queue up
  new blueprints (possibly for the next cycle)

Thoughts?


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Engineering blueprints for 11.11

2011-05-19 Thread Ulrich Weigand
Peter Maydell  wrote on 05/19/2011 12:16:58 PM:
> On 19 May 2011 10:43, Ulrich Weigand  wrote:
> > Also, some of the feedback from UDS sessions included features that
> > could arguably be considered part of our blueprints, but go beyond
> > what was originally their scope.  For example, one user asked for
> > GDB tracepoints to be also supported with native debugging, and
> > one asked for enhancements to cross-debugging the kernel via KGDB.
> >
> > At this point it is not clear whether there is anything we can do
> > about those requirements during this cycle, but I think we should
> > keep track of them to make sure they're not forgotten.
>
> My feeling is that these should be new blueprints (or proto-blueprints
> on a wiki page) since they're really separate features. What I found
> last cycle was that I had a few mega-blueprints which just accumulated
> new work items across the cycle and then at the end had a number of
> things postponed. This time round I'm trying for much more tightly
> focused blueprints so it's clearer that some features are finished
> and some are not (and that some features are high priority and some
> are more wishlist).

OK, I guess that makes sense.  For now I've left those things in the
whiteboard of the existing blueprints, but *not* as work times, just
as comments.  They could be extracted to new blueprints if that's what
we decide to do ...


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Jun 14 - Jun 17

2011-06-17 Thread Ulrich Weigand

== GDB ==

 * Committed support for NEON registers in core dumps (bug #615972)
   to mainline GDB and binutils repositories.

 * Added support to readelf (mainline binutils) to correctly display
   NEON register core file notes.

 * Started looking into remote gdb testsuite.

== GCC ==

 * Investigated reload failure when building kernel with Linaro GCC 4.5
   (discovered by Arnd).

 * Investigated stray function references due to partial inlining
   breaking kernel build with Linaro GCC 4.6 (discovered by Arnd).


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Jun 20 - Jun 24

2011-06-24 Thread Ulrich Weigand

== GDB ==

 * Completed setup and baseline run for remote gdb testsuite.
   This involved tracking down and working around a variety
   of problems including:
   - issues with the cross-compiler packages
   - board files and sysroot for the debugger to use
   - timing problems in the dejagnu harness
   - multiple problems in the GDB testsuite itself
   At this point, I'm down to about a dozen extra FAILs and
   about 2000 tests (out of 16000) tests that are not executed
   in the remote testsuite for one reason or the other.  Next
   step will be to analyze those and create bug reports.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Jun 27 - Jul 1

2011-07-01 Thread Ulrich Weigand

== GDB ==

 * Analyzed all failures and skipped tests in remote gdb testsuite.
   Opened bug reports to track problems and missing features:
   804387 [remote testsuite] Shared library test problems
804392 [remote testsuite] Rebuilt executables not copied
804396 [remote testsuite] Spurious failures
804400 [remote testsuite] Unnecessarily disabled tests
804401 [remote testsuite] Thread support
804403 [remote testsuite] Support for "attach" tests
804405 [remote testsuite] Core file tests
804406 [remote feature] Generate core files
804407 [remote feature] fork/vfork/exec events
804408 [remote feature] Address space randomization
804409 [remote feature] Checkpoints
804411 [remote feature] "info proc"

== GCC ==

 * Reviewed several Linaro GCC merge requests.

 * Fixed mainline reload bug PR rtl-optimization/49114


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Jul 4 - Jul 8

2011-07-08 Thread Ulrich Weigand

== GDB ==

 * Posted patch to fix shared library remote test problems (#804387).

 * Started reviewing Yao's latest Thumb-2 displaced stepping patch.

== GCC ==

 * Reviewed and approved Richard's mainline reload patch to fix
   #803232 (ICE on code that uses vld4q_s16() NEON intrinsic).

 * Followed up on gcc-patches to address concerns about Julian's
   unaligned access patch.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Jul 11 - Jul 14

2011-07-15 Thread Ulrich Weigand

== GDB ==

 * Tested GDB 7.2.91 prerelease on ARM; everything looking good.

 * Created a set of patches to prepare for Linaro GDB 7.3 series;
   verified release process on top of a current 7.3 snapshot.

 * Committed three mainline patches to fix shared library remote
   test problems (#804387).

 * Reviewed Yao's latest Thumb-2 displaced stepping patch.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Jul 18 - Jul 22

2011-07-22 Thread Ulrich Weigand

== GDB ==

 * Committed mainline patch to fix re-built executable remote test
   problems (#804392).

 * Committed two more mainline patches to fix remote test issues.

== GCC ==

 * Patch review.

 * Determined root cause of bug #809768 (ICE in bionic libm).


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Jul 25 - Jul 29

2011-07-29 Thread Ulrich Weigand

== GDB ==

 * Committed second mainline patch to fix re-built executable
   remote test problems (#804392).

 * Prepared for rebasing Linaro GDB on top of GDB 7.3 release.

== Misc ==

 * Prepared for Linaro Connect.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Aug 1 - Aug 5

2011-08-05 Thread Ulrich Weigand

== GDB ==

 * Created Linaro GDB 7.3 branch
 * Ported all remaining feature patches from Linaro GDB 7.2
 * Backported mainline patches to fix remote test issues:
   - Fixed #804387 Shared library test problems
   - Fixed #804392 Rebuilt executables not copied
   - Fixed #804396 Spurious failures

 * Committed mainline patch to fix dlopen test cases
   for remote testing (#804387).
 * Committed mainline patches to fix misc. other remote
   test problems (#804396).

== Misc ==

 * Attended Linaro Connect in Cambourne.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Aug 8 - Aug 12

2011-08-12 Thread Ulrich Weigand

== GDB ==

 * Re-tested Linaro GDB 7.3 on Versatile Express (native
   & remote testing).
 * Committed patch to re-enable remote thread test cases
   (#804401) to mainline and Linaro GDB 7.3.
 * Reviewed Yao's latest Thumb-2 displaced stepping patch.

== GCC ==

 * Patch review week.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Linaro GDB 7.3 2011.08 released

2011-08-18 Thread Ulrich Weigand
The Linaro Toolchain Working Group is pleased to announce the release
of Linaro GDB 7.3.

Linaro GDB 7.3 2011.08 is the first release in the 7.3 series.  Based
off the latest GDB 7.3, it includes a number of ARM-focused bug fixes.

This release includes all bug fixes from the latest Linaro GDB 7.2
release that were not already included in FSF GDB 7.3.

In addition, this release fixes:
 * LP: #804401 [remote testsuite] Thread support
 * LP: #804387 [remote testsuite] Shared library test problems
 * LP: #804392 [remote testsuite] Rebuilt executables not copied
 * LP: #804396 [remote testsuite] Spurious failures

The source tarball is available at:
 https://launchpad.net/gdb-linaro/+milestone/7.3-2011.08

More information on Linaro GDB is available at:
 https://launchpad.net/gdb-linaro
___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Aug 15 - Aug 19

2011-08-19 Thread Ulrich Weigand

== GDB ==

 * Created and published Linaro GDB 7.3 2011-08 release.
 * Analyzed --with-sysroot=remote: testsuite failures,
   and opened bug LP #829595.
 * Reviewed Yao's latest Thumb-2 displaced stepping patch.

== Schedule ==

 * I'll be on vacation 08/23 through 08/31.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: request for gdb testing

2011-09-01 Thread Ulrich Weigand
Michael Hope  wrote:
> On Thu, Sep 1, 2011 at 11:06 AM, Nicolas Pitre 
wrote:
> > Hello Ulrich (or anyone else acquainted with gdb),
> >
> > Could the gdb test suite be run on a kernel with the below patch
applied
> > please? A confirmation that this patch doesn't regress gdb is required
> > before this can move ahead.  Quick feedback would be greatly
> > appreciated.
>
> Hi Nicolas.  I'm afraid Ulrich is away this week and I'm not really
> set up for testing with different kernels.  GDB is easy to build and
> test - a native configure; make; make check should be fine.

Hi Nicolas, actually I'm already back today.  I'll be happy to verify
that this patch doesn't regress GDB.  It'll take me a while to set up
building a kernel with the patch, but I should hopefully have results
later today or maybe tomorrow ...


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: try_to_freeze() called with IRQs disabled on ARM

2011-09-01 Thread Ulrich Weigand
Arnd Bergmann  wrote on 08/26/2011 04:44:26 PM:
> On Thursday 25 August 2011, Russell King - ARM Linux wrote:
> >
> > Arnd, can you test this to make sure your gdb test case still works,
and
> > Mark, can you test this to make sure it fixes your problem please?
>
> Hi Russell,
>
> The patch in question was not actually from me but from Ulrich Weigand,
> so he's probably the right person to test your patch.
> I'm forwarding it in full to Uli for reference.

Hi Arnd, hi Russell,

sorry for the late reply, I've just returned from vacation today ...

I've not yet run the test, but just from reading through the patch
it seems that this will at least partially re-introduce the problem
my original patch was trying to fix.

The situation here is about GDB performing an "inferior function
call", e.g. via the GDB "call" command.  To do so, GDB will:

0. [ Have gotten control of the target process via some ptrace
   intercept previously, and then ... ]
1. Save the register state
2. Create a dummy frame on the stack and set up registers (PC, SP,
   argument registers, ...) as appropriate for a function call
3. Restart via PTRACE_CONTINUE
   [ ... at this point, the target process runs the function until
 it returns to a breakpoint instruction and GDB gets control
 again via another ptrace intercept ... ]
4. Restore the register state saved in [1.]
5. At some later point, continue the target process [at its
   original location] with PTRACE_CONTINUE

The problem now occurs if at point [0.] the target process just
happened to be blocked in a restartable system call.  For this
sequence to then work as expected, two things have to happen:

- at point [3.], the kernel must *not* attempt to restart a
  system call, even though it thinks we're stopped in a
  restartable system call

- at point [5.], the kernel now *must* restart the originally
  interrupted system call, even though it thinks we're stopped
  at some breakpoint, and not within a system call

My patch achieved both these goals, while it would seem your
patch only solves the first issue, not the second one.  In
fact, since any interaction with ptrace will always cause the
TIF_SYS_RESTART flag to be *reset*, and there is no way at all
to *set* it, there doesn't appear to be any way for GDB to
achive that second goal.

[ With my patch, that second goal was implicitly achieved by
the fact that at [1.] GDB would save a register state that
already corresponds to the way things should be for restarting
the system call.  When that register set is then restored in [4.],
restart just happens automatically without any further kernel
intervention. ]

One way to fix this might be to make the TIF_SYS_RESTART flag
itself visible to ptrace, so the GDB could save/restore it
along with the rest of the register set; this would be similar
to how that problem is handled on other platforms.  However,
there doesn't appear to be an obvious place for the flag in
the ptrace register set ...


Bye,
Ulrich


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: try_to_freeze() called with IRQs disabled on ARM

2011-09-02 Thread Ulrich Weigand
Russell King - ARM Linux  wrote on 09/01/2011
04:00:00 PM:
> On Thu, Sep 01, 2011 at 03:41:22PM +0200, Ulrich Weigand wrote:
> > One way to fix this might be to make the TIF_SYS_RESTART flag
> > itself visible to ptrace, so the GDB could save/restore it
> > along with the rest of the register set; this would be similar
> > to how that problem is handled on other platforms.  However,
> > there doesn't appear to be an obvious place for the flag in
> > the ptrace register set ...
>
> Thanks for looking at this.
>
> I don't think we can augment the ptrace register set - that would be a
> major API change which would immediately break lots of userspace,
> causing user stack overflows and such like.

Well, it wouldn't need to go into the default register set (REGSET_GPR),
but could be in a new register set.  This shouldn't change anything for
existing applications, but GDB could probe for support for the new
regset and use it if present.

> I can't see a way out of this - and given the seriousness of the kernel
> side issue (causing kernel warnings), and that your change altered the
> strace behaviour (an unintended user-visible change) I think we're going
> to have to live with the gdb testcase failing until we can come up with
> a better fix for it.

The change you suggest, with the addition of making the flag available
to the debugger in a new register set, should be fine for GDB.

I agree that the race you pointed out in the initial mail to this thread
needs to be fixed; an in fact, it seems that this race is also present
on s390 ...  In discussions with Martin, we were wondering however
whether the fix you suggest does actually fully plug the race:

Assume the scenario you initally describe, where a first signal is
ignored and leads to system call restart.  With your latest patch,
you call into syscall_restart which sets everything up to restart
the call (with interrupts disabled).  Then, you go back to user space,
with PC pointing to the SVC that is to be restarted.  Now assume that
some interrupt is pending at this point.  At the switch to user
space, interrupts will be enabled.  Can it now happen that this
pending interrupt is recognized *before* the SVC is executed?
(Maybe the hardware doesn't allow that on ARM ... it definitely
*is* possible on s390, though.)

If so, can this not then lead to the exact same race you initially
described (the interrupt causing some other task to be scheduled,
and then an second signal to be delivered to the task about to
restart the SVC)?

I guess one way to fix this would be to not actually go back to
user space for system call restart at all, but instead just short-
cut this in entry.S and simply go right back to the system call
entry path.  As a side benefit, this could eliminate the need to
create a stack frame for the OABI RESTARTBLOCK case ...  (This is
what we do on s390 b.t.w., where there is a similar issue with the
system call number being an immediate argument to the SVC
instruction.)

> I also wonder what the validity of this behaviour is - there are cases
> where you can't do what gdb's trying to do - eg, with a syscall using
> a restart block (-ERESTART_RESTARTBLOCK) because the restart information
> could be wiped out by a new syscall performed by the function gdb wants
> to run.  Or when the program receives a signal for it to handle while
> running that function.

Yes, performing an inferior call during a system call that restarts
using RESTARTBLOCK is broken.  This is a problem on all architectures,
and has been ever since the RESTARTBLOCK mechanism was introduced ...

To really fix this case would probably require some way for the
debugger to save and restore the restore_block saved state.  This
is not quite trivial, since it would expose that state to user space,
effectively creating a new ABI (and probably requiring sanity checks
to ensure a valid state is restored).  This probably cannot be fixed
by one architecture for itself, but would need support from common
kernel code.

Bye,
Ulrich


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Vectorised copy

2011-09-02 Thread Ulrich Weigand
Michael Hope  wrote:

> int *a;
> int *b;
> int *c;
>
> const int ad[320];
> const int bd[320];
> const int cd[320];
>
> void fill()
> {
>   for (int i = 0; i < 320; i++)
> {
>   a[i] = ad[i];
>   b[i] = bd[i];
>   c[i] = cd[i];
> }
> }
[snip]
> Can we always use the second form?  What optimisation is preventing it?

Without having looked into this in detail, my guess would be
it depends on whether the compiler is able to prove that the
memory pointed to by a, b, and c is distinct (instead of having
a potential overlap if those are pointers into the same array).

Does it help if you make a, b, and c function arguments to fill,
and mark them restrict?


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Sep 1 - Sep 2

2011-09-02 Thread Ulrich Weigand

== GDB ==

 * Russell King now wants to revert my kernel patch that
   fixed #615974; discussed alternative options.

== GCC ==

 * Patch review week.
 * Analyzed root cause of ICE when building Linux kernel
   with mainline GCC (reported by Arnd).


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: try_to_freeze() called with IRQs disabled on ARM

2011-09-02 Thread Ulrich Weigand
Russell King - ARM Linux  wrote on 09/02/2011
07:22:59 PM:
> On Fri, Sep 02, 2011 at 04:47:35PM +0200, Ulrich Weigand wrote:
> > Assume the scenario you initally describe, where a first signal is
> > ignored and leads to system call restart.  With your latest patch,
> > you call into syscall_restart which sets everything up to restart
> > the call (with interrupts disabled).
>
> I don't think SIG_IGN signals even set the TIF work flag, so they
> never even cause a call into do_signal().  Therefore, as far as
> syscalls go, attempting to send a process (eg) a SIGINT which its
> handler is set to SIG_IGN results in the process not even being
> notified about the attempt - we won't even wake up while the
> syscall is sleeping.

I don't see why SIG_IGN signals shouldn't set the TIF work flag;
the decision whether to ignore a signal is only made once we've
got to get_signal_to_deliver.  In any case, whether or not the
signal is SIG_IGN doesn't matter for the example at all; I'm
simply talking about the case whether the first signal we get
leads to system call restart, exactly the same as in the original
example you initially described here:
http://lists.arm.linux.org.uk/lurker/message/20110823.154329.a3e65f95.en.html

> > To really fix this case would probably require some way for the
> > debugger to save and restore the restore_block saved state.  This
> > is not quite trivial, since it would expose that state to user space,
> > effectively creating a new ABI (and probably requiring sanity checks
> > to ensure a valid state is restored).  This probably cannot be fixed
> > by one architecture for itself, but would need support from common
> > kernel code.
>
> Such state would have to be crytographically signed or kept entirely
> within the kernel, as it would otherwise mean that you could redirect
> the kernel PC to anywhere...

Agreed, that's why the state would need to be verified (in the case of
the function pointer, we probably would not want to export the kernel
code address to user space in any case, but identify which of the
possible target functions is to be called in some other manner).

Bye,
Ulrich


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Sep 5 - Sep 9

2011-09-09 Thread Ulrich Weigand

== GDB ==

 * Worked on hardware watchpoint support for gdbserver.

== GCC ==

 * Analyzed root cause of three more ICEs when building Linux
   kernel with mainline GCC (reported by Arnd):
   PR target/50305: Inline asm reload failure when building Linux kernel
   PR middle-end/50307: SSA checking ICE when building Linux kernel
   PR tree-optimization/50318: ICE optimizing widening
multiply-and-accumulate

 * Implemented proposed fix for PR target/50305 and posted for review.

== Misc ==

 * Installed updated FPGA bitfiles on my Versatile Express and verified
   that network stability issues (LP #673820) are now fixed.

 * Booked Linaro Connect Q4.11 travel.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Linaro GDB 7.3 2011-09 released

2011-09-14 Thread Ulrich Weigand
The Linaro Toolchain Working Group is pleased to announce the release
of Linaro GDB 7.3.

Linaro GDB 7.3 2011.09 is the second release in the 7.3 series.  Based
off the latest GDB 7.3, it includes a number of ARM-focused bug fixes
and enhancements.

This release contains:
 * Support for hardware breakpoints and watchpoints in gdbserver

The source tarball is available at:
 https://launchpad.net/gdb-linaro/+milestone/7.3-2011.09

More information on Linaro GDB is available at:
 https://launchpad.net/gdb-linaro
___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: eglibc and fun with config.sub

2011-09-16 Thread Ulrich Weigand
Richard Sandiford  wrote:
> David Gilbert  writes:
> > My current patch:
> >   * adds armv6 and armv7 to config.sub
> >   * adds arm/eabi/armv7 and arm/eabi/armv6t2   and one assembler
> > routine in there.
> >   * If $machine is just 'arm' then it autodetects from gcc's #defines
> >   * else if $machine is armv then that's still $machine
>
> I'm taking you literally here, but I think you want things like
> armeb-linux-gnueabi to be treated like arm-linux-gnueabi.
>
> TBH, I think unconditionally using the autodetect (but setting $machine
> rather than $submachine, as you say) would be easier and more consistent
> across packages.  gcc and eglibc will then agree on the target, whereas
> the extra complication in the current scheme is there simply to make
> eglibc and gcc disagree in certain cases.  But I realise we might not
> want to fight that fight.

FWIW I'd tend to agree that encoding the architecture level into the
target triplet seems to lead to more confusion than that it helps ...

We certainly never did that on s390 (or powerpc, for that matter);
instead, the way to select an architecture level is to build your
system compiler to default to that level, and then build all your
system libraries with that compiler; the libraries will detect
the desired architecture level from GCC defines.

On the other hand, given that arm has already gone down the road of
using the target triplet, I guess I can see why it might make sense
to continue that.  In the end, that's for the platform maintainers
to decide ...


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Sep 12 - Sep 16

2011-09-16 Thread Ulrich Weigand

== GDB ==

 * Completed hardware watchpoint support for gdbserver.
 * Tracked down watchpoint resource accounting regression
   on GDB mainline (not present in 7.3).
 * Created and published Linaro GDB 7.3-2011.09 release.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: Linaro GCC 4.6 and 4.5 2011.09 released

2011-09-20 Thread Ulrich Weigand
Michael Hope  wrote:

> The PowerPC build fails while building the SPU variant of libstdc++:
>
> """checking for the value of EOF... configure: error: computing EOF
failed
> config.status: executing libtool commands
> config.status: executing default-1 commands
> make[3]: *** [configure-target-libstdc++-v3] Error 1"""
>
> Perhaps SPU needs to be disabled or some of the target libraries
disabled?

This probably fails because of a dependency issue; it looks like the SPU
newlib packages are not installed (or not found in the correct place).

I don't see why this would be any different for the Linaro build, however.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Sep 19 - Sep 23

2011-09-23 Thread Ulrich Weigand

== GDB ==

 * Committed hardware watchpoint support for gdbserver to mainline,
   including two minor changes resulting from review comments;
   backported those fixes to Linaro GDB as well.
 * Implemented and tested support for disabling address space
   randomization in gdbserver; patch posted for review.
 * Investigated support for cross-platform core file generation.

== GCC ==

 * Patch review week.
 * Posted updated patch for PR 50305.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: [ACTIVITY] Sep 19 - Sep 23

2011-09-26 Thread Ulrich Weigand
Christian Robottom Reis  wrote on 09/23/2011 10:00:18 PM:
> On Fri, Sep 23, 2011 at 06:51:37PM +0200, Ulrich Weigand wrote:
> >  * Implemented and tested support for disabling address space
> >randomization in gdbserver; patch posted for review.
>
> I'm not sure this is related, but remember that thread where Russell was
> commenting about a regression in try_to_freeze() he was going to work on
> fixing? I'm curious -- Where did that end up going?

No, this is not related.  In any case, the current status of the signal
handler issue (what the try_to_freeze mail chain was about) is that Russell
said he was going to look into it, but so far nothing has happened (he has
neither reverted my original patch as he said he might do; nor has he come
up with some new patch).

I guess I could give him a ping, but since he didn't revert my patch after
all, it didn't seem a priority to me ...


[ P.S. Maybe you were also thinking of another kernel bug that *did* affect
disabling address space randomization (LP #616001): this bug has been fixed
upstream by Nicolas a while ago.  ]


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: [ACTIVITY] Sep 19 - Sep 23

2011-09-27 Thread Ulrich Weigand
Christian Robottom Reis  wrote:
> On Mon, Sep 26, 2011 at 03:59:24PM +0200, Ulrich Weigand wrote:
> > I guess I could give him a ping, but since he didn't revert my patch
after
> > all, it didn't seem a priority to me ...
>
> Interesting. You could reach out and reping just out of courtesy -- I
> don't like unfinished business, though code's always unfinished in a way.

Sure.  I've now pinged Russell again and will try to follow up ...


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: try_to_freeze() called with IRQs disabled on ARM

2011-09-27 Thread Ulrich Weigand
Russell King - ARM Linux  wrote:
> And yes, we can end up processing the interrupt before the SVC is
> executed, which is still a hole.  So we need to avoid doing the
> restart in userspace - which might actually make things easier.
> I'll take a look into that over the weekend.

Hi Russell, I was wondering whether is there any news on this?
If you do rewrite the signal handler processing, please let me
know so I can update GDB accordingly ...  Thanks!


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Sep 26 - Sep 30

2011-09-30 Thread Ulrich Weigand

== GDB ==

 * Worked on support for cross-platform core file generation.
 * Followed up on patch to support disabling address space
   randomization in gdbserver.

== GCC ==

 * Followed up on patch for PR 50305.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Oct 04 - Oct 07

2011-10-07 Thread Ulrich Weigand

== GDB ==

 * Reimplemented patch to disable address space randomization
   in gdbserver to respect the "set disable-randomization"
   command, and checked it in to mainline and Linaro GDB 7.3
 * Worked on support for cross-platform core file generation.

== GCC ==

 * Checked in mainline fix for PR 50305.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: limits-fndefn.c and timeouts

2011-10-12 Thread Ulrich Weigand
Michael Hope  wrote:

> Separately, does this show a performance problem with var tracking?
> Turning on var tracking leads to a 20 x slow down in this particular
> case.

I'd agree that is a performance problem; probably some nonlinear
behaviour in the var tracking algorithms.  B.t.w. I'd say that
catching such issues is one of the reasons to have those extreme
limits tests in the first place ...


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Linaro GDB 7.3 2011.10 released

2011-10-12 Thread Ulrich Weigand
The Linaro Toolchain Working Group is pleased to announce the release
of Linaro GDB 7.3.

Linaro GDB 7.3 2011.10 is the third release in the 7.3 series.  Based
off the latest GDB 7.3, it includes a number of ARM-focused bug fixes
and enhancements.

This release contains:
 * Support for disabling address space randomization in gdbserver
 * Fix for GDB crashes on 3.x kernels
 * Fix spurious "CRC mismatch" warnings when using "remote:" sysroot

The source tarball is available at:
 https://launchpad.net/gdb-linaro/+milestone/7.3-2011.10

More information on Linaro GDB is available at:
 https://launchpad.net/gdb-linaro
___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Oct 10 - Oct 14

2011-10-14 Thread Ulrich Weigand

== GDB ==

 * Created and published Linaro GDB 7.3-2011.10 release.
 * Fixed LP #871901 (Linaro GDB crashes on 3.x kernels) in
   mainline and Linaro GDB 7.3.
 * Backported mainline fix for LP #829595 (Separate debuginfo
   misidentified with "remote:" access) to Linaro GDB 7.3.
 * Completed blueprint "GDB as a cross-debugger".
 * Worked on support for cross-platform core file generation.

== GCC ==

 * Patch review week.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Oct 17 - Oct 21

2011-10-21 Thread Ulrich Weigand

== GDB ==

 * Worked on support for cross-platform core file generation.
   Posted initial set of patches for comments.
 * Created "Toolchain support for kernel debugging" blueprint.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


Re: FW: contribution Linux Kernel Debugger

2011-11-09 Thread Ulrich Weigand
Michael Hope  wrote:
> On Thu, Nov 3, 2011 at 10:20 PM, Marc TITINGER 
wrote:
> > Hi there,
> >
> > As discussed with Loďc, please find attached my slides to the ELCE
> presentation related to our implementation of linux-awareness for
> JTAG debugging. I still need a formal clearance of my organization
> on my contribution patch, but I (and my managers) will be happy to
> see some or all of this work benefit to-and-from the community. If
> you are interested, I will try to upload a self-contained qemu-based
> demo to a public ftp.
>
> Hi Marc.  That would be great.  Let me know if we can help with the
> upstreaming,

Hi Marc.  Let me echo Michael's sentiment here: both with my Linaro hat
and my GDB global maintainer hat on, I'd really like to see features
along the lines you mentioned merged into mainline GDB.  If there's
anything I can to do help with this process, I'd be happy to do so.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Nov 8 - Nov 11

2011-11-14 Thread Ulrich Weigand

== GDB ==

 * Worked on support for cross-platform core file generation.

   After some discussion on the mailing list it seems we've
   come to an agreement that the remote protocol ought to have
   two separate packets related to memory layout, one that
   describes the permanent, system-wide layout (for embedded
   systems) and one that describes the dynamic, per-process
   layout (for processes with memory-mapped files).  The latter
   also ought to be integrated with the "info proc mappings"
   command, which should work with gdbserver too.

   I've been working on updating the patches accordingly.

== GCC ==

 * Patch review week.



Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Nov 14 - Nov 18

2011-11-21 Thread Ulrich Weigand

== GDB ==

 * Ongoing work on support for cross-platform core file generation.

== GCC ==

 * Investigated Launchpad bugs:
   #889984 binaries: should step across helper functions
   #889985 binaries: can't step out of helper functions
   #890764 4.6-11.11 seems to misdetect some files as system header and
implicit extern "C"

== Misc ==

 * Gave talk on Linaro at the IBM Germany Technical Expert Council
   fall meeting.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


[ACTIVITY] Nov 22 - Nov 25

2011-11-28 Thread Ulrich Weigand

== GDB ==

 * Ongoing work on support for cross-platform core file generation.

   Posted a new design proposal to the mailing list to include not
   only "info proc mappings", but *all* "info proc" commands.  This
   would involve a remote protocol command to read arbitrary proc
   files, instead of a specific command to retrieve the memory map.

 * Investigated Launchpad bug:
   #891970 msp430-gdb segmentation fault with target remote

== GCC ==

 * Patch review week.


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU compiler and toolchain for Linux on System z and Cell/B.E.
  IBM Deutschland Research & Development GmbH
  Vorsitzender des Aufsichtsrats: Martin Jetter | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294


___
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain


  1   2   >