diff options
author | Ritt Konstantin <qnx@ics.com> | 2011-06-21 11:51:05 (GMT) |
---|---|---|
committer | Harald Fernengel <harald.fernengel@nokia.com> | 2011-06-21 12:05:39 (GMT) |
commit | 09cd27db5e9f35834edccbc56f938fe340daa14f (patch) | |
tree | 452d92ecdcee9fff1fbeb5f4f675f85e592df8e7 /src/corelib/kernel | |
parent | 648bf773b1aa759a40d8609039c44f9dce31da61 (diff) | |
download | Qt-09cd27db5e9f35834edccbc56f938fe340daa14f.zip Qt-09cd27db5e9f35834edccbc56f938fe340daa14f.tar.gz Qt-09cd27db5e9f35834edccbc56f938fe340daa14f.tar.bz2 |
make the kernel attempt to emulate an instruction with a misaligned access
since Qt was not tested with a misaligned access checking turned on,
there are some issues in the QtGui module which leads to a crash with the SIGBUS signal.
disable the misaligned access checking for now...
Merge-request: 1259
Reviewed-by: Harald Fernengel <harald.fernengel@nokia.com>
Diffstat (limited to 'src/corelib/kernel')
-rw-r--r-- | src/corelib/kernel/qcoreapplication.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/corelib/kernel/qcoreapplication.cpp b/src/corelib/kernel/qcoreapplication.cpp index c818ffc..dd46bc5 100644 --- a/src/corelib/kernel/qcoreapplication.cpp +++ b/src/corelib/kernel/qcoreapplication.cpp @@ -99,6 +99,7 @@ #endif #ifdef Q_OS_QNX +# include <sys/neutrino.h> # include <pthread.h> # include <sched.h> #endif @@ -359,6 +360,11 @@ QCoreApplicationPrivate::QCoreApplicationPrivate(int &aargc, char **aargv, uint #endif #ifdef Q_OS_QNX + // make the kernel attempt to emulate an instruction with a misaligned access + // if the attempt fails, it faults with a SIGBUS + int tv = -1; + ThreadCtl(_NTO_TCTL_ALIGN_FAULT, &tv); + // without Round Robin drawn intensive apps will hog the cpu // and make the system appear frozen int sched_policy; |