After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 341282 - PowerPC crash on filtering X-Spam-Status
PowerPC crash on filtering X-Spam-Status
Status: RESOLVED OBSOLETE
Product: evolution-data-server
Classification: Platform
Component: Mailer
1.6.x (obsolete)
Other Linux
: Normal critical
: ---
Assigned To: evolution-mail-maintainers
Evolution QA team
: 383736 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2006-05-10 17:02 UTC by Daniel Holbach
Modified: 2010-12-16 18:09 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
offending mail (8.06 KB, text/plain)
2006-05-10 17:03 UTC, Daniel Holbach
  Details
CAMEL_DEBUG=all log (301.28 KB, text/plain)
2006-05-10 17:04 UTC, Daniel Holbach
  Details
Turn off optimizations on PowerPC (741 bytes, patch)
2006-05-10 18:34 UTC, Daniel Holbach
reviewed Details | Review

Description Daniel Holbach 2006-05-10 17:02:13 UTC


  • #0 camel_search_header_match
  • #1 check_header
    at camel-filter-search.c line 186
  • #2 e_sexp_term_eval
    at e-sexp.c line 710
  • #3 match_all
    at camel-filter-search.c line 326
  • #4 e_sexp_term_eval
    at e-sexp.c line 700
  • #5 term_eval_or
    at e-sexp.c line 313
  • #6 e_sexp_term_eval
    at e-sexp.c line 700
  • #7 e_sexp_eval
    at e-sexp.c line 1304
  • #8 camel_filter_search_match
  • #9 camel_filter_driver_filter_message
    at camel-filter-driver.c line 1436
  • #10 camel_filter_driver_filter_folder
    at camel-filter-driver.c line 1276
  • #11 em_filter_folder_element_filter
    at mail-ops.c line 139
  • #12 fetch_mail_fetch
    at mail-ops.c line 324
  • #13 mail_msg_received
    at mail-mt.c line 570
  • #14 thread_dispatch
    at e-msgport.c line 974
  • #15 start_thread
    from /lib/libpthread.so.0
  • #16 clone
    from /lib/libc.so.6

Comment 1 Daniel Holbach 2006-05-10 17:03:30 UTC
Created attachment 65178 [details]
offending mail

removing the X-Spam-Status line makes it work again.
Comment 2 Daniel Holbach 2006-05-10 17:04:35 UTC
Created attachment 65179 [details]
CAMEL_DEBUG=all log
Comment 3 Daniel Holbach 2006-05-10 17:11:50 UTC
<BenC> dholbach: it's actually crashing in camel_utf8_getc(), FYI
<BenC> called from line 430 in camel_search_header_match()
<BenC> specifically, line 60 in camel_utf8_getc()
<BenC> r = *p++;
Comment 4 Daniel Holbach 2006-05-10 17:20:39 UTC
It's reproducible for *this* mail, not for others. The filter was on a custom header line, X-Spam-Status being "yes".
Comment 5 Daniel Holbach 2006-05-10 18:34:17 UTC
Following up from: https://launchpad.net/products/evolution-data-server/+bug/44061

The camel library crashes on powerpc due to a gcc regression. The culprit is some optimized code in camel-search-private.c.

The actual bug is in gcc, but this needs to be fixed for dapper. I am attaching a patch that disables the optimizations on powerpc to avoid the crash.

(attaching patch in a bit)

We're using gcc 4.0.3 in Ubuntu and use no optimization or compiler flags to build eds. I'm not sure if this only happens in the Ubuntu or world or somewhere else too. 

If you close the bug or leave it open depends on you.
Comment 6 Daniel Holbach 2006-05-10 18:34:54 UTC
Created attachment 65186 [details] [review]
Turn off optimizations on PowerPC
Comment 7 Jeffrey Stedfast 2006-05-10 19:11:41 UTC
is it really necessary to comment out the register keyword? since register is used quite a lot in camel, I think the problem is related to inline, no?

I wonder if a better fix would be to #define inline to nothing in config.h or something if the system is ppc.
Comment 8 André Klapper 2006-05-31 12:22:20 UTC
commented by jeff, changing patch status.
Comment 9 Srinivasa Ragavan 2006-10-17 17:54:21 UTC
Daniel: Any thoughts on fejj's comments?
Comment 10 Daniel Holbach 2006-10-17 18:06:33 UTC
Matthias Klose says: "that would penalize all files; are the variables really placed memory locations without the register keyword?"

I personally don't know, but happy to ask for more comments.
Comment 11 Teppo Turtiainen 2007-02-04 06:12:52 UTC
*** Bug 383736 has been marked as a duplicate of this bug. ***
Comment 12 Kjartan Maraas 2010-12-16 18:09:21 UTC
Closing this as gcc 4.0.3 is very old by now. Maybe this was fixed in 4.0.4 as well?