Fer's blog
fer, ferulo, that crazy man

Sun, 30 Sep 2007

And breakpad is almost here

This week I went insane while debugging some obscure crash in ARM + glib + logging + threads. Finding this kind of stuff on glibc scares me:

/* Atomic compare and exchange.  These sequences are not actually atomic;
   there is a race if *MEM != OLDVAL and we are preempted between the two
   swaps.  However, they are very close to atomic, and are the best that a
   pre-ARMv6 implementation can do without operating system support.
   LinuxThreads has been using these sequences for many years.  */
at least, it's documented :)
On the other hand I got enough energy for some very low-level hacking and finally got DWARF2 symbols dumping for breakpad/bug-buddy minidumps! The bad news are that it's a _ugly_ hack on top of valgrind code, trying to de-valgrinize (and bastardazing it while doing it). However it works, and should be enough for our target in GNOME for having rich backtraces coming from people without debugging symbols and enriching them in the debug server. Also the socorro server is prepared for deployment with our (GNOME) custom modifications and nice and beautiful features:

Did I hear eye-candy? transparency? No, this is just about reading the _real_ code crashing :)
Here are the bits:
git-clone http://www.gnome.org/~fherrera/dumper.git
git-clone http://www.gnome.org/~fherrera/socorro.git
git-clone http://www.gnome.org/~fherrera/bug-buddy.git
Currently, if you want to test it you'd need to point bug-buddy to my home server or if you are brave enough, run your own socorro collector. Ah, I also started using git :)
Finally the last open issue to get all of this working are the package collectors: a simple piece of code that has to:And that's all. I'll probably start working on a RPM based one this week, but of course all your help is highly appreciated

[15:27] | [] | # [5] Comments

Tue, 11 Sep 2007

And all that jazz

Just reading planet and mailing lists these days...:

git filter-branch --subdirectory-filter directory refspec
git clone --no-hardlinks /tmp/gtk2-perl Gtk2-SourceView.git
git tag -f -d ${TAG}
git filter-branch --subdirectory-filter Gtk2-SourceView HEAD
git reset --hard
git gc --aggressive
git prune
git-svn clone svn+ssh://username@svn.gnome.org/svn/modulename/trunk modulename
git-svn rebase
git checkout -b mybranch
git merge --squash mybranch
git-svn dcommit
Liz: clone!
Annie: filter
June: squash
Hunyak: hard tag
Velma: checkout
Mona: rebase

He had it coming
He had it coming
He only had himself to blame
If you'd have been there
If you'd have seen it
I betcha you would have done the same!

[14:38] | [] | # [0] Comments

About

Fernando Herrera


Recently...
< September 2007 >
SuMoTuWeThFrSa
       1
2 3 4 5 6 7 8
9101112131415
16171819202122
23242526272829
30      

RSS 2.0