9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* [9fans] replica problem
@ 2004-11-05  9:48 cej
  2004-11-05 10:05 ` [9fans] assembler scheduling Tim Newsham
  0 siblings, 1 reply; 15+ messages in thread
From: cej @ 2004-11-05  9:48 UTC (permalink / raw)
  To: 9fans



>> usage: 'srv -Adp replica'
>> 
>> however , -Adp didn't work either, I had to remove all options, and voila!
>Did you use a very old version of fossil?

maybe of June, or so?

>permission checking and allow arbitrary changes to owner and user
>fields when doing a pull.
>
>The d flag causes fossil to delete a service. That's definitely not
>wanted for the clientmount. ;-) You can use it after the pull was
>successful.

i did pull -s, restored config files, and it seems to work. should try another pull
now, though...

[nice to see the development moving so rapidly forward, indeed!]

++pac

---
Odchozí zpráva neobsahuje viry.
Zkontrolováno antivirovým systémem AVG (http://www.grisoft.cz).
Verze: 6.0.786 / Virová báze: 532 - datum vydání: 29. 10. 2004
 


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [9fans] assembler scheduling
  2004-11-05  9:48 [9fans] replica problem cej
@ 2004-11-05 10:05 ` Tim Newsham
  2004-11-05 11:41   ` Charles Forsyth
  0 siblings, 1 reply; 15+ messages in thread
From: Tim Newsham @ 2004-11-05 10:05 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

Eek!  The assembler messed with my code.  Here's the original going
into ka.  Notice the *** line:

TEXT	syslink(SB), $-4
	MOVW	R2, R10
	MOVW	$setSB(SB), R2
	MOVW	$mach0(SB), R14
	MOVW	(4*2)(R14), R13		/* m->proc */
	MOVW	(4*2)(R13), R9		/* m->proc->kstack */
	MOVW	R1, (KSTACK-UREGSZ+4*1)(R9)	/* SP */
	MOVW	R10, (KSTACK-UREGSZ+4*2)(R9)	/* SB */
	MOVW	R5, (KSTACK-UREGSZ+4*5)(R9)	/* PROC */
	MOVW	R6, (KSTACK-UREGSZ+4*6)(R9)	/* MACH */
	ADD		$(KSTACK-UREGSZ), R9, R1
	MOVW	R13, R5
	MOVW	R14, R6

	MOVW	R2, (4*2)(R1)			/* SB */
	MOVW	R3, (4*3)(R1)			/* global register */
	MOVW	R4, (4*4)(R1)			/* global register */
	MOVW	R7, (4*7)(R1)			/* syscall # */
	MOVW	TBR, R20
	MOVW	R20, (4*(32+1))(R1)		/* TBR */
	AND		$~0x1F, R19
	MOVW	R19, (4*(32+2))(R1)		/* PSR */
	MOVW	R18, (4*(32+3))(R1)		/* nPC */
	MOVW	R17, (4*(32+4))(R1)		/* PC */
***	RESTORE	R0, R0
	/* now our registers R8-R31 are same as before trap */
	MOVW	R15, (4*15)(R1)

	MOVW	$setSB(SB), R2
	MOVW	R1, R7			/* pointer to Ureg */
	SUB		$8, R1
	MOVW	$SYSPSR, R8
	MOVW	R8, PSR
	JMPL	syscall(SB)
	/* R7 contains return value from syscall */

Got turned into:
syslink:                        or      %g0, %g2, %o2
syslink+0x4:                    sethi   %hi(0xe0071400), %sp
syslink+0x8:                    add     %sp, 0x128, %g2
syslink+0xc:                    ld      [%g2+0x46c], %sp
syslink+0x10:                   ld      [%sp+0x8], %o5
syslink+0x14:                   ld      [%o5+0x8], %o1
syslink+0x18:                   st      %g1, [%o1+0xf6c]
syslink+0x1c:                   st      %o2, [%o1+0xf70]
syslink+0x20:                   st      %g5, [%o1+0xf7c]
syslink+0x24:                   st      %g6, [%o1+0xf80]
syslink+0x28:                   add     %o1, 0xf68, %g1
syslink+0x2c:                   or      %g0, %o5, %g5
syslink+0x30:                   or      %g0, %sp, %g6
syslink+0x34:                   st      %g2, [%g1+0x8]
syslink+0x38:                   st      %g3, [%g1+0xc]
syslink+0x3c:                   st      %g4, [%g1+0x10]
syslink+0x40:                   st      %g7, [%g1+0x1c]
syslink+0x44:                   rd      %tbr, %l4
syslink+0x48:                   st      %l4, [%g1+0x84]
syslink+0x4c:                   and     %l3, 0xffffffe0, %l3
syslink+0x50:                   st      %l3, [%g1+0x88]
syslink+0x54:                   st      %l2, [%g1+0x8c]
syslink+0x58:                   st      %l1, [%g1+0x90]
syslink+0x5c:                   st      %o7, [%g1+0x3c]
syslink+0x60:                   sethi   %hi(0xe0071400), %sp
syslink+0x64:                   add     %sp, 0x128, %g2
syslink+0x68:                   or      %g0, %g1, %g7
syslink+0x6c:                   sub     %g1, 0x8, %g1
syslink+0x70:                   sethi   %hi(0x1c00), %sp
syslink+0x74:                   add     %sp, 0x3a0, %o0
syslink+0x78:                   wr      %o0, 0x0, %psr
syslink+0x7c:                   call    p9:syscall
syslink+0x80:       ***         restore %g0, %g0, %g0
syslink+0x84:                   add     %g1, 0x8, %g1
syslink+0x88:                   ld      [%g1+0x88], %o0

Notice it moved the RESTORE instruction into the delay slot of the
call.  In this case this causes bad things to happen, since RESTORE
changes the registers (I guess since ka doesn't use windows it is
unaware of this special meaning of restore).

How can I override this scheduling of the RESTORE instruction?
(I'd prefer to let it continue to schedule other statements and
not completely turn of scheduling).

Tim N.


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] assembler scheduling
  2004-11-05 10:05 ` [9fans] assembler scheduling Tim Newsham
@ 2004-11-05 11:41   ` Charles Forsyth
  0 siblings, 0 replies; 15+ messages in thread
From: Charles Forsyth @ 2004-11-05 11:41 UTC (permalink / raw)
  To: 9fans

>>Eek!  The assembler messed with my code.  Here's the original going

actually, it's the loader kl that does scheduling.
use NOSCHED and SCHED pseudo-ops in ka (see /sys/doc/asm.ps, not
that there are many more details)



^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] replica problem
  2004-11-10 12:45 [9fans] replica problem cej
@ 2004-11-10 13:23 ` Heiko Dudzus
  0 siblings, 0 replies; 15+ messages in thread
From: Heiko Dudzus @ 2004-11-10 13:23 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

cej@gli.cas.cz wrote:
> >9pccpuf kernels.  just rebooting won't make you run a new fossil, you
> >need to explicitly recompile your kernel.  this problem can be solved
> >if one is using two fossils on a pure file server -- one to boot the
> >local machine, the other to be executed from cpurc to serve everyone
> >else.  bell-labs use this setup.
> 
> perhaps someone has the precompiled kernel? TIA,

Updated kernels get pulled into /386. 


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [9fans] replica problem
@ 2004-11-10 12:45 cej
  2004-11-10 13:23 ` Heiko Dudzus
  0 siblings, 1 reply; 15+ messages in thread
From: cej @ 2004-11-10 12:45 UTC (permalink / raw)
  To: 9fans

>
>9pccpuf kernels.  just rebooting won't make you run a new fossil, you
>need to explicitly recompile your kernel.  this problem can be solved
>if one is using two fossils on a pure file server -- one to boot the
>local machine, the other to be executed from cpurc to serve everyone
>else.  bell-labs use this setup.

>andrey

perhaps someone has the precompiled kernel? TIA,

++pac.



---
Odchozí zpráva neobsahuje viry.
Zkontrolováno antivirovým systémem AVG (http://www.grisoft.cz).
Verze: 6.0.792 / Virová báze: 536 - datum vydání: 9. 11. 2004
 


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] replica problem
  2004-11-09 14:16   ` Robert Raschke
@ 2004-11-09 15:07     ` andrey mirtchovski
  0 siblings, 0 replies; 15+ messages in thread
From: andrey mirtchovski @ 2004-11-09 15:07 UTC (permalink / raw)
  To: 9fans

the fossil and venti binaries are compiled in the kernel for 9pcf and
9pccpuf kernels.  just rebooting won't make you run a new fossil, you
need to explicitly recompile your kernel.  this problem can be solved
if one is using two fossils on a pure file server -- one to boot the
local machine, the other to be executed from cpurc to serve everyone
else.  bell-labs use this setup.

andrey

> I wrote (being a complete numpty :-):
>> Doing a pull and restarting fossil (for example by rebooting :-) might
>> help you.
> 
> That's where you're problem is. Sorry.
> 
> So, you can try and reboot with your fossil being explicitly started
> with the -AWP options?
> 
> Or you could try and start a new fossil -AWP (will that work?) onto a
> different mount point and grab the new fossil from sources?
> 
> Robby



^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] replica problem
  2004-11-09 14:12 ` Robert Raschke
@ 2004-11-09 14:16   ` Robert Raschke
  2004-11-09 15:07     ` andrey mirtchovski
  0 siblings, 1 reply; 15+ messages in thread
From: Robert Raschke @ 2004-11-09 14:16 UTC (permalink / raw)
  To: 9fans

I wrote (being a complete numpty :-):
> Doing a pull and restarting fossil (for example by rebooting :-) might
> help you.

That's where you're problem is. Sorry.

So, you can try and reboot with your fossil being explicitly started
with the -AWP options?

Or you could try and start a new fossil -AWP (will that work?) onto a
different mount point and grab the new fossil from sources?

Robby



^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] replica problem
  2004-11-09 13:30 cej
@ 2004-11-09 14:12 ` Robert Raschke
  2004-11-09 14:16   ` Robert Raschke
  0 siblings, 1 reply; 15+ messages in thread
From: Robert Raschke @ 2004-11-09 14:12 UTC (permalink / raw)
  To: 9fans

>>>  % echo 'srv -AWP replica' >> /srv/fscons
>>>% mount -c /srv/replica /n/boot
>>>
>> Perhaps you get some error message on the fossil console?
> 
> fscons complains about  '-W' option
> date of my 'con' is 
> --rwxrwxr-x M 8 sys sys 76131 May 20 14:17 /bin/con
> if it is relevant.

I think somebody mentioned this before.  It is very likely that you
have an old copy of fossil.  I cannot remember when the -W and -P
options moved to be parameters to the fscons srv command (they used to
be options to the fossil executable itself.

Doing a pull and restarting fossil (for example by rebooting :-) might
help you.

Robby



^ permalink raw reply	[flat|nested] 15+ messages in thread

* [9fans] replica problem
@ 2004-11-09 13:30 cej
  2004-11-09 14:12 ` Robert Raschke
  0 siblings, 1 reply; 15+ messages in thread
From: cej @ 2004-11-09 13:30 UTC (permalink / raw)
  To: 9fans

>>  % echo 'srv -AWP replica' >> /srv/fscons
>>% mount -c /srv/replica /n/boot
>>
> Perhaps you get some error message on the fossil console?

fscons complains about  '-W' option
date of my 'con' is 
--rwxrwxr-x M 8 sys sys 76131 May 20 14:17 /bin/con
if it is relevant.

thanks,
++pac

Peter A. Cejchan
Lab of Paleobiology and Paleoecology
Prague, EU
http://www.gli.cas.cz/home/cejchan


---
Odchozí zpráva neobsahuje viry.
Zkontrolováno antivirovým systémem AVG (http://www.grisoft.cz).
Verze: 6.0.792 / Virová báze: 536 - datum vydání: 9. 11. 2004
 


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] replica problem
  2004-11-04 13:42 cej
@ 2004-11-04 20:24 ` Heiko Dudzus
  0 siblings, 0 replies; 15+ messages in thread
From: Heiko Dudzus @ 2004-11-04 20:24 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

cej@gli.cas.cz wrote:
> >  % echo 'srv -AWP replica' >> /srv/fscons
> >  % mount -c /srv/replica /n/boot
> >
> >  Perhaps you get some error message on the fossil console?
> 
> that's it! err message was
> usage: 'srv -Adp replica'
> 
> however , -Adp didn't work either, I had to remove all options, and voila!

Did you use a very old version of fossil?

Usually, one needs the flags AWP to circumvent authentication, disable
permission checking and allow arbitrary changes to owner and user
fields when doing a pull.

The d flag causes fossil to delete a service. That's definitely not
wanted for the clientmount. ;-) You can use it after the pull was
successful.


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [9fans] replica problem
@ 2004-11-04 13:42 cej
  2004-11-04 20:24 ` Heiko Dudzus
  0 siblings, 1 reply; 15+ messages in thread
From: cej @ 2004-11-04 13:42 UTC (permalink / raw)
  To: 9fans




>  % echo 'srv -AWP replica' >> /srv/fscons
>  % mount -c /srv/replica /n/boot
>
>  Perhaps you get some error message on the fossil console?

that's it! err message was
usage: 'srv -Adp replica'

however , -Adp didn't work either, I had to remove all options, and voila!

thanks, regards,

++pac

Peter A. Cejchan
Lab of Paleobiology and Paleoecology
Prague, EU
http://www.gli.cas.cz/home/cejchan


---
Odchozí zpráva neobsahuje viry.
Zkontrolováno antivirovým systémem AVG (http://www.grisoft.cz).
Verze: 6.0.786 / Virová báze: 532 - datum vydání: 29. 10. 2004
 


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] replica problem
  2004-11-01 13:08 cej
  2004-11-01 14:18 ` andrey mirtchovski
@ 2004-11-03 11:43 ` Heiko Dudzus
  1 sibling, 0 replies; 15+ messages in thread
From: Heiko Dudzus @ 2004-11-03 11:43 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

cej@gli.cas.cz wrote:
> on fossil:
> 
> term% replica/pull /dist/replica/network
> mount: can't open /srv/replica: '/srv/replica' file does not exist
> clientmount: mount 428: open
> term% 
> 
> What am I missing?

No idea.. I don't know why it could fail this way (if you didn't
modify /dist/replica/network). Try to execute the clientmount function
of the sript manually:

% echo 'srv -AWP replica' >> /srv/fscons
% mount -c /srv/replica /n/boot

Perhaps you get some error message on the fossil console?


^ permalink raw reply	[flat|nested] 15+ messages in thread

* [9fans] replica problem
@ 2004-11-03  9:21 cej
  0 siblings, 0 replies; 15+ messages in thread
From: cej @ 2004-11-03  9:21 UTC (permalink / raw)
  To: 9fans


simply repeating
replica/pull /dist/replica/network

didn't help. Did you mean it so?


++pac.


---
Odchozí zpráva neobsahuje viry.
Zkontrolováno antivirovým systémem AVG (http://www.grisoft.cz).
Verze: 6.0.786 / Virová báze: 532 - datum vydání: 29. 10. 2004
 


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [9fans] replica problem
  2004-11-01 13:08 cej
@ 2004-11-01 14:18 ` andrey mirtchovski
  2004-11-03 11:43 ` Heiko Dudzus
  1 sibling, 0 replies; 15+ messages in thread
From: andrey mirtchovski @ 2004-11-01 14:18 UTC (permalink / raw)
  To: 9fans

> on fossil:
> 
> term% replica/pull /dist/replica/network
> mount: can't open /srv/replica: '/srv/replica' file does not exist
> clientmount: mount 428: open
> term% 

stale /srv/replica, just run it once more and it'll be fine.



^ permalink raw reply	[flat|nested] 15+ messages in thread

* [9fans] replica problem
@ 2004-11-01 13:08 cej
  2004-11-01 14:18 ` andrey mirtchovski
  2004-11-03 11:43 ` Heiko Dudzus
  0 siblings, 2 replies; 15+ messages in thread
From: cej @ 2004-11-01 13:08 UTC (permalink / raw)
  To: 9fans

on fossil:

term% replica/pull /dist/replica/network
mount: can't open /srv/replica: '/srv/replica' file does not exist
clientmount: mount 428: open
term% 

What am I missing?
Thanks,

++pac.

---
Odchozí zpráva neobsahuje viry.
Zkontrolováno antivirovým systémem AVG (http://www.grisoft.cz).
Verze: 6.0.786 / Virová báze: 532 - datum vydání: 29. 10. 2004
 


^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2004-11-10 13:23 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-11-05  9:48 [9fans] replica problem cej
2004-11-05 10:05 ` [9fans] assembler scheduling Tim Newsham
2004-11-05 11:41   ` Charles Forsyth
  -- strict thread matches above, loose matches on Subject: below --
2004-11-10 12:45 [9fans] replica problem cej
2004-11-10 13:23 ` Heiko Dudzus
2004-11-09 13:30 cej
2004-11-09 14:12 ` Robert Raschke
2004-11-09 14:16   ` Robert Raschke
2004-11-09 15:07     ` andrey mirtchovski
2004-11-04 13:42 cej
2004-11-04 20:24 ` Heiko Dudzus
2004-11-03  9:21 cej
2004-11-01 13:08 cej
2004-11-01 14:18 ` andrey mirtchovski
2004-11-03 11:43 ` Heiko Dudzus

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).