Hallo Detlef,

On Fri, May 06, 2005 at 01:12:30PM +0200, Detlef Witt-Schleuer wrote:
> Am Freitag, 6. Mai 2005 09:38 schrieb Ingo G�ppert:
> > Zitat aus einer Mail von Michael am 7.2.2005:
> [SuSE und speichern auf FAT] 
> Ja, es gab dazu noch eine Vielzahl anderer Anmerkungen seiner Zeit, aber das 
> Problem wurde grunds�tzlich nicht gel�st. Auch nicht mit der vermeintlichen 
> L�sung, die Du zitierst. Ich lebe mit diesem ungel�sten Problem / Bug? nun 
> auch schon seit Monaten ....

Darf man fragen warum Du Dich damals nicht wieder gemeldet hast?
Und darf man fragen wie es dann zu Deinem Posting vom 7. Februar kam?

,----[ Detlef Witt-Schleuer - Mon, 07 Feb 2005 ]
| Am Montag, 7. Februar 2005 10:14 schrieb Michael Hoehne:
| > Am Montag, 7. Februar 2005 02:14 schrieb Michael Hoehne:
| > Sagen wir das also so: Wer "users" braucht (so wie ich, da diese
| > Platte
| > nicht beim Systemstart gemountet wird/wurde), der mu� das "exec"
| > _dahinter_ setzen.
|
| Super! Danke! Funktioniert bei mir jetzt auch einwandfrei.
|
| Gru�
| Detlef
`----

Die detaillierte Ursache hat Stephan Bergmann gepostet.
Das Problem wurde also durchaus grunds�tzlich gel�st

,----[ Stephan Bergmann - Wed, 09 Feb 2005 ]
| Des R�tsels L�sung ist wie folgt:
|
| - OOo benutzt beim Speichern der ge�nderten Datei mmap(2) mit PROT_READ
| um die alte Version der Datei auszulesen.
|
| - Das von Sun gebaute OOo 1.1.x ist mit einem relativ alten GCC 3.2.2
| compiliert worden, der noch keinen PT_GNU_STACK-Eintrag in das
| ausf�hrbare soffice.bin schreibt. (Das von Sun gebaute OOo 2.0 wird mit
| einem neueren GCC 3.4.1 gebaut, der den PT_GNU_STACK-Eintrag schreibt.)
|
| - Bei einem hinreichend neuen Linux-Kernel (wie z. B. dem bei SuSE 9.2
| benutzten) schl�gt mmap(2) mit PROT_READ dann fehl, wenn die entspr.
| Datei auf einem "mount noexec"-Dateisystem liegt, und das ausgef�hrte
| Programm keinen PT_GNU_STACK-Eintrag enth�lt, siehe
| <http://www.ussg.iu.edu/hypermail/linux/kernel/0410.0/0478.html>. Dies
| ist ein Fehler im Linux-Kernel.
|
| Aus Sicht von OOo besteht die L�sung des Problems also darin, einen
| hinreichend aktuellen GCC zu benutzen. F�r das von Sun gebaute OOo 2.0
| wird dies getan, so dass das Problem dort nicht mehr auftreten sollte.
| (Wie das bei einem eventuellen OOo 1.1.5 aussieht kann ich momentan
| nicht sagen.)
`----

Der Fehler ist also gruns�tzlich ein Bug im Kernel der nur dann in
Erscheinung tritt wenn das Programm mit einem �lteren Compiler �bersetzt
wird und wenn das Programm eine bestimmten Weg zum Speichern nutzt.

Diesen Bug kann man umgehen indem man die Partition mit der Option
"exec" mounted.

Aus dem Kommentar wird auch ersichtlich warum OOo 2.0 nicht betroffen
ist (da wird ein anderer Compiler benutzt).

OOo 1.1.5 wird eine anderen Weg zum Speichern verwenden, so da� der
Fehler im Bug keine Rolle mehr spielt.

ciao
Christian
-- 
NP: 4Lyn - One 2 Three

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Antwort per Email an