On Thu, 16 Sep 2010 20:08:42 +0200, Karel Klic wrote:
now I need to finish the btparser work.)
Do you use some machine-parseable GDB backtraces - as suggested by Tom?
His mail was never replied.
https://fedorahosted.org/pipermail/crash-catcher/2010-August/000896.html
Sending coredump to a server might not be acceptable for some users
because of security reasons, so we should consider supporting
minidumps (google-breakpad, see
http://code.google.com/p/google-breakpad/wiki/GettingStartedWithBreakpad).
Minidumps do not solve the security issue at all, cleartext passwords are
regularly stored in autovariables while being processed.
IIUC minidump does not send any non-stack memory. This means you will lose
any parameters/variables passed by reference / being a reference. You will
lose also any pretty-printed parameters/variables.
#include <string>
__attribute__((noinline)) void f (std::string s)
{ asm volatile (""); }
int main () { f ("a"); }
-O2 -g (f14):
(gdb) bt
#0 f (s="a") at 1.C:3
#1 0x000000000040066f in main () at 1.C:4
But with minidump you will not see "a" there.
(gdb) p/r s
$1 = {static npos = 18446744073709551615, _M_dataplus =
{<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> =
{<No data fields>}, <No data fields>},
_M_p = 0x601028 "a"}}
(gdb) info proc mappings
Start Addr End Addr Size Offset objfile
0x601000 0x622000 0x21000 0 [heap]
- 0x601028 - that "a" - is really in this segment.
As the formerly tested MS Visual Studio 2010 beta (IIRC, some version like
that) has very poor / missing debug info for optimized code I understand
Minidump may be sufficient for the data it can display.
The rest of the mail was based on this incorrect principle so I cannot comment
it more.
A prepared proposal should be then submitted for a review by Roland McGrath.
1.1) It's a CGI script written in Python. Python is well suited
for
the CGI scripting and HTTP protocol handling,
Such script should be persistent accross requests. Most of the packages and
backtrace info are repeating so a shared cache should be a major concern IMO.
Such feature is generally provided AFAIK by FastCGI, mod_perl, there probably
exists also some such interface for Python.
Thanks,
Jan