9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: Bodet Laurent bl@mime.univ-paris8.fr
Subject: bug in dossrv need help...
Date: Tue, 29 Oct 1996 23:24:42 +0100	[thread overview]
Message-ID: <19961029222442.7AmBRRZqqAOgSgeqXyX9gbUNvmYLN-AbF8U_cNt_Ws8@z> (raw)

Hi,

There is a problem with the the field vers of the Qid struct. The server
never touch this field... This cause a bug when you try to excute a binary
that you had already executed and modified. 

I think it's because the kernel caches text segments (function attachimage()
in segment.c call from sysexec()). It compares the qid struct of existing
images and the qid of new binary. So, if the vers field didn't change after a
modification the old image is used and in many case crash the execution. 

I have no good ideas to fix this problem :

	1) Create a Qid table in wich we increment the field versions of the 
	   modified file... and what happen when the table is full ???

	2) Do something like :
	
		static long version;
		.
		.
		.
		void 
		rwalk(){
		...
		f->qid.vers = ++version;
		...
		}
	
	This disable the kernel cache !!!!

	3) Use the modification time of the file for qid.vers. But what happen 
	   if the modification is done in less than 1 second ?


Any better ideas are welcome ... Thanks

Bodet Laurent.

E-Mail: bl@mime.univ-paris8.fr





                 reply	other threads:[~1996-10-29 22:24 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=19961029222442.7AmBRRZqqAOgSgeqXyX9gbUNvmYLN-AbF8U_cNt_Ws8@z \
    --to=9fans@9fans.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).