https://issues.apache.org/bugzilla/show_bug.cgi?id=46439
Summary: SSL shmcb cache dies with bus errors on sparc when
compiled with Sun CC
Product: Apache httpd-2
Version: 2.0.63
Platform: Sun
OS/Version: SunOS
Status: NEW
Severity: normal
Priority: P2
Component: mod_ssl
AssignedTo: [email protected]
ReportedBy: [email protected]
Depends on: 42101
We have this very same bug at Apache 2.0.63 (build with gcc 4.0.3 (gccfss)).
+++ This bug was initially created as a clone of Bug #42101 +++
Using Sun CC (Sun C 5.8 Patch 121015-04 2007/01/10) using these options:
-fast -g -xs -v -xstrconst -xtarget=ultra3 -xarch=v8plusa
At line 1221 of ssl_scache_shmcb.c in Apache 2.2.24 we get a bus error. The
problem is that given this struct:
typedef struct {
time_t expires;
unsigned int offset;
unsigned char s_id2;
unsigned char removed;
} SHMCBIndex;
Which is stored in shared memory at offset 0xfe42afba (the idx variable)
For the code:
(idx->s_id2 == id[1]) && !idx->removed
the compiler generates
ld [%l2 + 8], %o0
(i.e. add 8 to %l2, dereference it and store the result in %o0)
in order to retrieve s_id2 and removed in one operation, only %l2 isn't
naturally aligned so you get a bus error.
--
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]