comparison PROBLEMS @ 410:de805c49cfc1 r21-2-35

Import from CVS: tag r21-2-35
author cvs
date Mon, 13 Aug 2007 11:19:21 +0200
parents 2f8bb876ab1d
children 697ef44129c6
comparison
equal deleted inserted replaced
409:301b9ebbdf3b 410:de805c49cfc1
1456 add mod1 = Meta_L 1456 add mod1 = Meta_L
1457 keysym Meta_R = Mode_switch 1457 keysym Meta_R = Mode_switch
1458 add mod2 = Mode_switch 1458 add mod2 = Mode_switch
1459 EOF 1459 EOF
1460 1460
1461
1462 *** XEmacs dumps core at startup when native audio is used. Native
1463 audio does not work with recent versions of HP-UX.
1464
1465 Under HP-UX 10.20 and later (e.g., HP-UX 11.XX), with native audio
1466 enabled, the dumped XEmacs binary ("xemacs") core dumps at startup if
1467 recent versions of the libAlib.sl audio shared library is used. Note
1468 that "temacs" will run, but "xemacs" will dump core. This, of course,
1469 causes the XEmacs build to fail. If GNU malloc is enabled, a stack
1470 trace will show XEmacs to have crashed in the "first" call to malloc().
1471
1472 This bug currently exists in all versions of XEmacs, when the undump
1473 mechanism is used. It is not known if using the experimental portable
1474 dumper will allow native audio to work.
1475
1476 **** Cause:
1477
1478 Recent versions of the HP-UX 10.20 (and later) audio shared library (in
1479 /opt/audio/lib), pulls in the libdce shared library, which pulls in a
1480 thread (libcma) library. This prevents the HP-UX undump() routine (in
1481 unexhp9k800.c) from properly working. What's happening is that some
1482 initialization routines are being called in the libcma library, *BEFORE*
1483 main() is called, and these initialization routines are calling
1484 malloc(). Unfortunately, in order for the undumper to work, XEmacs must
1485 adjust (move upwards) the sbrk() value *BEFORE* the first call to
1486 malloc(); if malloc() is called before XEmacs has properly adjusted sbrk
1487 (which is what is happening), dumped memory that is being used by
1488 XEmacs, is improperly re-allocated for use by malloc() and the dumped
1489 memory is corrupted. This causes XEmacs to die an horrible death.
1490
1491 It is believed that versions of the audio library past December 1998
1492 will trigger this problem. Under HP-UX 10.20, you probably have to
1493 install audio library patches to encounter this. It's probable that
1494 recent "fresh, out-of-the-box" HP-UX 11.XX workstations also have this
1495 problem. For HP-UX 10.20, it's believed that audio patch PHSS_17121 (or
1496 a superceeding one, like PHSS_17554, PHSS_17971, PHSS_18777, PHSS_21481,
1497 or PHSS_21662, etc.) will trigger this.
1498
1499 To check if your audio library will cause problems for XEmacs, run
1500 "chatr /opt/audio/lib/libAlib.sl". If "libdce" appears in the displayed
1501 shared library list, XEmacs will probably encounter problems if audio is
1502 enabled.
1503
1504 **** Workaround:
1505
1506 Don't enable native audio. Re-run configure without native audio
1507 support.
1508
1509 If your site supports it, try using NAS (Network Audio Support).
1510
1511 Try using the experimental portable dumper. It may work, or it may
1512 not.
1513
1514
1461 *** `Pid xxx killed due to text modification or page I/O error' 1515 *** `Pid xxx killed due to text modification or page I/O error'
1462 1516
1463 On HP-UX, you can get that error when the Emacs executable is on an NFS 1517 On HP-UX, you can get that error when the Emacs executable is on an NFS
1464 file system. HP-UX responds this way if it tries to swap in a page and 1518 file system. HP-UX responds this way if it tries to swap in a page and
1465 does not get a response from the server within a timeout whose default 1519 does not get a response from the server within a timeout whose default