Re: [9fans] Do we have a catalog of 9P servers?

2008-11-17 Thread Eris Discordia
This explanation isn't immediately comprehensible to me--I guess I'll have 
to read the man pages and some other documentation and then come back to 
understand this.


Thanks anyway.

--On Sunday, November 16, 2008 4:52 PM -0500 erik quanstrom 
[EMAIL PROTECTED] wrote:



the same time. I thought Plan 9's approach eliminated that by keeping a
distinct instance of the stack for each imported /net.


not quite.

referencing '#In' for the first time will cause the nth
ip stack to be created.  subsequent references do not create
a copy.

it's also important to note that import doesn't operate on
devices directly (except in the degnerate case of
'#D' for some device D).  import builds a new namespace
according to the recipie in /lib/namespace (cf. namepace(6))
on the importee. so /net references that namespace, not a device.
obviously '#t' still references a device on the importee.

- erik






Re: [9fans] Do we have a catalog of 9P servers?

2008-11-17 Thread Eris Discordia

It was a pleasure and quite educational to read your posting, Micah Stetson.


The Plan 9 kernel doesn't do load balancing like that.  (Why should
it?)  To do it in Plan 9, you'd write a small program that listened on
a particular address and multiplexed connections to a list of other
addresses.  It wouldn't be hard -- aux/trampoline is halfway there.


Except the program wouldn't be any smaller than its UNIX equivalent. It 
would simply be the same port forwarding that is present in NAT. Because 
multiplexing a port requires either separate protocol stacks or a (complex) 
endpoint translation scheme, i.e. NAT. (as I noted before aux/trampoline is 
a transport layer proxy, by the way).


This last note aside, I think the issue of address translation has been 
succinctly reviewed now (to my advantage, for I have learnt a lot along the 
way :-). We can let it rest for a while and wait to see what Erik 
Quanstrom's NAT implementation will look like.


--On Sunday, November 16, 2008 9:12 PM -0800 Micah Stetson 
[EMAIL PROTECTED] wrote:



That isn't happening.  All we have is one TCP connection and one small
program exporting file service.


I see. But then, is it the small program exporting file service that
does the multiplexing? I mean, if two machines import a gateway's /net
and both run HTTP servers binding to and listening on *:80 what takes
care of which packet belongs to which HTTP server?


The Plan 9 kernel doesn't do load balancing like that.  (Why should
it?)  To do it in Plan 9, you'd write a small program that listened on
a particular address and multiplexed connections to a list of other
addresses.  It wouldn't be hard -- aux/trampoline is halfway there.

I think you're still thinking of importing /net in terms of NAT.  It
can be used to solve some of the same problems, but it isn't the same
at all.  Exportfs (the small program above) doesn't know that it's
exporting a network stack or any kind of special files because the
files in /net aren't special.  The network stack doesn't know it's
being used by a different computer -- it just sees exportfs reading
and writing its files.  The HTTP server doesn't know it's using
somebody else's network stack, it's just reading and writing files in
/net that it expects to work a certain way.  The only component that
knows there's a network stack being forwarded from one machine to
another is the person at the controls.

This is nothing like NAT.  No packets are rewritten, and no code
exists solely to support one computer using another's network stack.
So FTP and other protocols that frustrate NAT work without special
treatment.  The same principal obviates the need for port forwarding.
(In Plan 9 networks, that is.)

Micah





Re: [9fans] An Observation

2008-11-17 Thread Robert Raschke
On Sat, Nov 15, 2008 at 4:11 AM, Andrew Simmons [EMAIL PROTECTED] wrote:
 On the one hand, Too many cooks spoil the broth. On the other hand,
 Many hands make light work.

Cooks don't work, they give orders.



[9fans] I want to port some program or driver

2008-11-17 Thread Siddharth Prakash Singh
Hi all,

I want to port some program or driver to Plan9 which is challenging as
well as important for Plan9. Please suggest me .

Is any JVM ported to Plan9? or Firefox? or any other suggestions

Anticipating replies.
Regards
Siddharth



Re: [9fans] 9grid

2008-11-17 Thread lupin636
Hi All,

my /lib/ndb/auth is:
   hostid=bootes
   uid=!sys uid=!adm uid=*
but i just remember that armando(user name) is also sys and adm,
could it be the problem for speaks for?
because, as i explained above i have no speaks for in /sys/log/auth
when i try cpu(1) command from terminal, i also have /mnt/factotum/
log:
14: no key matches proto=p9sk1 role=server dom?
14: failure no key matches proto=p9sk1 role=server dom?
suggestions please?
thanks in advance for all responses.

Armando



Re: [9fans] Do we have a catalog of 9P servers?

2008-11-17 Thread Dave Eckhardt
 Every sensible NAT solution must be implemented with that in
 mind--not that existing ones have been. Even imagining persistent
 connections from an entire Class A network makes one shudder.
 Needless to say, the wreak of havoc occurs _long_ before over 16
 million hosts need persistent connections.

Especially since you get only 64k TCP connections between any pair
of IP addresses, e.g., between a NAT box and www.cnn.com.

Are there any NAT solutions which handle millions of hosts?  Are
we having a discussion about unicorns?

Dave Eckhardt



Re: [9fans] I want to port some program or driver

2008-11-17 Thread Rodolfo kix García

Really, do you read your messages?

http://9fans.net/archive/2008/11/35



 Hi all,

 I want to port some program or driver to Plan9 which is challenging as
 well as important for Plan9. Please suggest me .

 Is any JVM ported to Plan9? or Firefox? or any other suggestions

 Anticipating replies.
 Regards
 Siddharth




-- 
Rodolfo García AKA kix
http://www.kix.es/
EA4ERH (@IN80ER)




Re: [9fans] I want to port some program or driver

2008-11-17 Thread Roman Zhukov
I suggest you to invent something new instead of porting.



Re: [9fans] broken smtpd

2008-11-17 Thread Kenji Arisawa

Hello,

Today, I observed smtpd that was in endless loop and then broken.



ar% ps
...
none  203920:01  28:27  264K Running  smtpd
...



ar% ACID 20392
/proc/20392/text:386 plan 9 executable
/sys/lib/acid/port
/sys/lib/acid/386
acid: lstk()
receiver(path=0x41f58)+0x1c5 /sys/src/cmd/upas/smtp/smtpd.c:625
sender=0x379bf
rcpt=0x41ad8
zzparse()+0x2c9 /sys/src/cmd/upas/smtp/smtpd.y:773
save1=0x0
save2=0x0
save3=0x0
save4=0x0
zzstate=0xf
zzchar=0x
zzs=0x3f36b
zzp=0xdfffe41c
zzn=0xfc18
main(argv=0xdfffefa4,argc=0x0)+0x261 /sys/src/cmd/upas/smtp/smtpd.c:194
netdir=0xdfffefbc
_argc=0x6e
_args=0x376c2
buf=0x0
_main+0x31 /sys/src/libc/386/main9.s:16
acid: src(receiver+0x1c5)
/sys/src/cmd/upas/smtp/smtpd.c:625
 620
 621logged = 0;
 622
 623/* forwarding() can modify 'path' on loopback request */
 624		if(filterstate == ACCEPT  fflag  !authenticated   
forwarding(path)) {

625 syslog(0, smtpd, Bad Forward %s (%s/%s) (%s),
 626s_to_c(senders.last-p), him, nci-rsys, 
s_to_c(path));
 627rejectcount++;
 628reply(550 5.7.1 we don't relay.  send to [EMAIL PROTECTED] 
for 
 629loopback.\r\n);
 630return;


I don't observe Bad Forward of this mail in /sys/log/smtpd.

After some amount of time,

ar% ps
...
none  203920:02  44:57  264K Broken   smtpd
...

acid: lstk()
errstr()+0x7 /sys/src/libc/9syscall/errstr.s:5
syslog(logname=0x3760a,cons=0x0,fmt=0x37610)+0x20 /sys/src/libc/9sys/ 
syslog.c:46

err=0x616d2f27
d=0x0
ctim=0x0
buf=0x0
p=0x0
arg=0x0
n=0x0
catchalarm(msg=0xdfffe1ac)+0x5d /sys/src/cmd/upas/smtp/smtpd.c:68
rv=0x1
notifier+0x30 /sys/src/libc/port/atnotify.c:15
acid: src(syslog+0x29)
/sys/src/libc/9sys/syslog.c:46
 41 Dir *d;
 42 char err[ERRMAX];
 43 
 44 err[0] = '\0';
 45 errstr(err, sizeof err);
46  lock(sl);
 47 
 48 /*
 49  *  paranoia makes us stat to make sure a fork+close
 50  *  hasn't broken our fd's
 51  */
acid:


I hope the above information is helpful to fix the problem.

Kenji Arisawa


On 2008/11/06, at 21:59, erik quanstrom wrote:


Is this phenomenon specific to me?


No, it isn't:

term% ps|grep Broken
none9172:08  42:50  264K Broken   smtpd


impressive!

i don't see this problem, but i have implemented
some fairly agressive spam control.  perhaps this
shows up after i tend to hang up.

(it is possible to use nupas smtpd with regular old
upas.)

would anyone mind sending me a full backtrace?

- erik






Re: [9fans] 9grid

2008-11-17 Thread erik quanstrom
 my /lib/ndb/auth is:
hostid=bootes
uid=!sys uid=!adm uid=*
 but i just remember that armando(user name) is also sys and adm,
 could it be the problem for speaks for?
 because, as i explained above i have no speaks for in /sys/log/auth
 when i try cpu(1) command from terminal, i also have /mnt/factotum/
 log:
 14: no key matches proto=p9sk1 role=server dom?
 14: failure no key matches proto=p9sk1 role=server dom?

looking in /mnt/factotum/ctl on the console, you should see
keys like these at a minimum

terminal:
key proto=p9sk1 dom=quanstro.net user=quanstro !password?

cpu server and file server:
key proto=p9sk1 user=bootes dom=quanstro.net !hex? !password?

of course you should substitute your authentication domain
(which may be the same text but is different from your dns domain)
for quanstro.net

hope that gets you a bit further.

- erik



Re: [9fans] D-Bus ...

2008-11-17 Thread Uriel
D-bus is yet one more example of how the linux community has learned
nothing from Plan 9 (or even unix itself). And sadly, together with
fuse yet another lost opportunity for 9P which will be likely
impossible to undo.

Peace

uriel

On Mon, Nov 17, 2008 at 7:52 AM, Rogelio Serrano
[EMAIL PROTECTED] wrote:
 im a linux developer but i hate it...
 On Mon, Nov 17, 2008 at 2:35 PM, Enrico Weigelt [EMAIL PROTECTED] wrote:

 Hi folks,


 I'm just curious what you think about D-Bus ...

 http://www.freedesktop.org/wiki/Software/dbus


 cu
 --
 --
  Enrico Weigelt, metux IT service -- http://www.metux.de/

  cellphone: +49 174 7066481   email: [EMAIL PROTECTED]   skype: nekrad666
 --
  Embedded-Linux / Portierung / Opensource-QM / Verteilte Systeme
 --





 --
 Lay low and nourish in obscurity





Re: [9fans] broken smtpd

2008-11-17 Thread erik quanstrom
d'oh!  the return value from catchalarm looks reversed.  from notify(2)

  [...] A handler must
  return a non-zero number if the note was recognized (and
  resolved); otherwise it must return zero.  When the system
  
i think you're getting into some sort of note loop.  i think it would
be helpful to log all notes.  i would try something like this

static int
catchalarm(void *, char *msg)
{
static int chattycathy;

if(chattycathy++  5)
return 0;
if(senders.first  rcvers.first)
syslog(0, smtpd, note: %s-%s: %s,
s_to_c(senders.first-p),
s_to_c(rcvers.first-p), msg);
else
syslog(0, smtpd, note: %s, msg);
if(pp){
syskillpg(pp-pid);
pp = 0;
}
return strstr(msg, alarm) != 0;
}

but at a minimum, i would reverse the return values.

- erik




Re: [9fans] I want to port some program or driver

2008-11-17 Thread ron minnich
it would be nice to take the existing usb code -- which is all user
mode code -- and get hot plug working,such that I could pop
mice,keyboards, disks, etc in at will and have the right bits all
start/stop when such events happen.

I think this is a good project as it is self-contained, a good intro,
and something that plan 9 does not do well right now (hot plug)

ron



Re: [9fans] broken smtpd

2008-11-17 Thread Kernel Panic

erik quanstrom wrote:

d'oh!  the return value from catchalarm looks reversed.  from notify(2)

  [...] A handler must
  return a non-zero number if the note was recognized (and
  resolved); otherwise it must return zero.  When the system
  
i think you're getting into some sort of note loop.  i think it would

be helpful to log all notes.  i would try something like this
  
its not a good idea to call syslog() in a note handler, because it 
aquires locks

and calls into the memory allocator by strdup() (that too aquires locks).

if the note interrupts the program while in syslog() or the allocator, 
it will deadlock.


--
cinap

static int
catchalarm(void *, char *msg)
{
static int chattycathy;

if(chattycathy++  5)
return 0;
if(senders.first  rcvers.first)
syslog(0, smtpd, note: %s-%s: %s,
s_to_c(senders.first-p),
s_to_c(rcvers.first-p), msg);
else
syslog(0, smtpd, note: %s, msg);
if(pp){
syskillpg(pp-pid);
pp = 0;
}
return strstr(msg, alarm) != 0;
}

but at a minimum, i would reverse the return values.

- erik
  





Re: [9fans] broken smtpd

2008-11-17 Thread erik quanstrom
 its not a good idea to call syslog() in a note handler, because it 
 aquires locks
 and calls into the memory allocator by strdup() (that too aquires locks).
 
 if the note interrupts the program while in syslog() or the allocator, 
 it will deadlock.

excellent point.  in this case, i think it is more likely that the problem
is more mundane than that.  in any event, we are chewing gobs
of cpu time, so we don't have a literal deadlock.

- erik



Re: [9fans] broken smtpd

2008-11-17 Thread Charles Forsyth
if you look at /dev/kmesg you might find many messages about checked N page 
table entries.
i think smtpd is getting a trap (probably a null pointer) and because the value 
returned
from catchalarm is the wrong way round, it continues to retry using the bad 
pointer until
the alarm goes off (after a long time), when it breaks (because no note handler 
has
handled the alarm).

i didn't really understand why it was trying to continue after the alarm,
rather than logging and quitting.  does it not always mean that a caller
has connected but hasn't completed a request after a long time?
as cinap noted(!) there's a separate problem of what happens if the trap or 
alarm
happens when locks are held, but i think that's less likely to be a problem in 
practice:
an alarm will probably go off when nothing much has happened (ie, the program 
isn't
holding any other lock but waiting for input).  it's harder to be sure about
bad pointer traps, but if those happen with locks held,
i'd suspect those are more likely to be locks unrelated to those needed by 
syslog and print.



Re: [9fans] I want to port some program or driver

2008-11-17 Thread C H Forsyth
if i were you, i'd start with something simple first, to
find my way round the system.  it's probably also not a bad
idea, as someone else suggested, to write a few small programs
for plan 9 itself, just to see the differences.  write a silly
concurrent program using thread(2), for instance, and perhaps a
little file server; but don't start writing your own until
you've read some of the existing ones.

for porting, both examples you've suggested are somewhat bigger than huge,
and perhaps not good things to try first.---BeginMessage---
Hi all,

I want to port some program or driver to Plan9 which is challenging as
well as important for Plan9. Please suggest me .

Is any JVM ported to Plan9? or Firefox? or any other suggestions

Anticipating replies.
Regards
Siddharth---End Message---


Re: [9fans] D-Bus ...

2008-11-17 Thread Enrico Weigelt
* Uriel [EMAIL PROTECTED] wrote:
 D-bus is yet one more example of how the linux community has learned
 nothing from Plan 9 (or even unix itself). And sadly, together with
 fuse yet another lost opportunity for 9P which will be likely
 impossible to undo.

Although I'm a linux guy, that's exactly what came into my mind ...
Maybe we should sit down and write some paper on how 9P does better ;)


cu
-- 
--
 Enrico Weigelt, metux IT service -- http://www.metux.de/

 cellphone: +49 174 7066481   email: [EMAIL PROTECTED]   skype: nekrad666
--
 Embedded-Linux / Portierung / Opensource-QM / Verteilte Systeme
--



Re: [9fans] Do we have a catalog of 9P servers?

2008-11-17 Thread Eris Discordia

Are there any NAT solutions which handle millions of hosts?  Are
we having a discussion about unicorns?


No. Which is why not that existing ones have been. And wreak of havoc 
occurs _long_ before refers to the hypothetical gateway being brought down 
with far fewer connections, irrespective of which OS it ran. There remained 
the question of which OS/approach required less resources for performing 
the task at hand. The resolution I think was that NAT requires less 
resources but creates more hassle. Some 9fans pointed out the trade-off 
between elegance and performance. Some others pointed out the technical 
details and what could/could not be done with each approach. The most 
notable comment, in my opinion, was Ron Minnich's that brought to light the 
single essentially and irrefutably advantageous feature of Plan 9's 
approach.


I believe your are a little late with your remark. The issue has been 
resolved.


--On Monday, November 17, 2008 5:20 AM -0500 Dave Eckhardt 
[EMAIL PROTECTED] wrote:



Every sensible NAT solution must be implemented with that in
mind--not that existing ones have been. Even imagining persistent
connections from an entire Class A network makes one shudder.
Needless to say, the wreak of havoc occurs _long_ before over 16
million hosts need persistent connections.


Especially since you get only 64k TCP connections between any pair
of IP addresses, e.g., between a NAT box and www.cnn.com.

Are there any NAT solutions which handle millions of hosts?  Are
we having a discussion about unicorns?

Dave Eckhardt









Re: [9fans] D-Bus ...

2008-11-17 Thread Enrico Weigelt
* Rogelio Serrano [EMAIL PROTECTED] wrote:

Hi,

 im a linux developer but i hate it...

in which apps do you hate it most ? 


cu
-- 
--
 Enrico Weigelt, metux IT service -- http://www.metux.de/

 cellphone: +49 174 7066481   email: [EMAIL PROTECTED]   skype: nekrad666
--
 Embedded-Linux / Portierung / Opensource-QM / Verteilte Systeme
--



[9fans] venti error

2008-11-17 Thread lupin636
Hi All,
When i do:
% ls /sys/src/cmd
i have this error:
ls: /sys/src/cmd: venti i/o error block alphanumeric string
Furthermore, when i do the system update from bell labs, i get the
same error.
any suggestions,
thanks in advance to everybody for responses.

Armando.



Re: [9fans] 9grid

2008-11-17 Thread lupin636
Hi Eric,
I did what you told me, and i got the same as you wrote below.
if you still have any idea, it will be helpful.
thanks again,

Armando.

 looking in /mnt/factotum/ctl on the console, you should see
 keys like these at a minimum

 terminal:
 key proto=p9sk1 dom=quanstro.net user=quanstro !password?

 cpu server and file server:
 key proto=p9sk1 user=bootes dom=quanstro.net !hex? !password?

 of course you should substitute your authentication domain
 (which may be the same text but is different from your dns domain)
 for quanstro.net

 hope that gets you a bit further.

 - erik



Re: [9fans] 9grid

2008-11-17 Thread erik quanstrom
On Mon Nov 17 09:17:49 EST 2008, [EMAIL PROTECTED] wrote:
 Hi Eric, (sic)
 I did what you told me, and i got the same as you wrote below.
 if you still have any idea, it will be helpful.
 thanks again,

you need to verify the keys also match.

- erik



Re: [9fans] 9grid

2008-11-17 Thread lupin636
thanks a lot eric..
what do you mean with match?

  Hi Eric, (sic)
  I did what you told me, and i got the same as you wrote below.
  if you still have any idea, it will be helpful.
  thanks again,

 you need to verify the keys also match.

 - erik



Re: [9fans] Do we have a catalog of 9P servers?

2008-11-17 Thread Dave Eckhardt
 I believe your are a little late with your remark. The issue
 has been resolved.

Oops!  Hopefully as list moderator you will accept my apologies
for having drawn out a discussion beyond its useful time!!

Dave Eckhardt



Re: [9fans] An Observation

2008-11-17 Thread Michaelian Ennis
On Mon, Nov 17, 2008 at 4:18 AM, Robert Raschke [EMAIL PROTECTED] wrote:
 On Sat, Nov 15, 2008 at 4:11 AM, Andrew Simmons [EMAIL PROTECTED] wrote:
 On the one hand, Too many cooks spoil the broth. On the other hand,
 Many hands make light work.

 Cooks don't work, they give orders.

If we are speaking of cooking. The cooks cook.  The Sous Chef cooks
and contributes to the menu.  The Executive Chef gives orders and
shakes hands with the customers.

Ian



Re: [9fans] those funny gnu guys

2008-11-17 Thread sqweek
On Mon, Nov 17, 2008 at 3:06 PM, Enrico Weigelt [EMAIL PROTECTED] wrote:
 * erik quanstrom [EMAIL PROTECTED] wrote:

 Hi,

 this is just stupifying:

 http://tech.slashdot.org/comments.pl?sid=1029797cid=25761431

 gcc is a mess, right. But is there an usable alternative ?

 8c! http://gsoc.cat-v.org/hg/kenc
 (Anant, did you have another port as part of Glendix, or am I getting
mixed up?)
-sqweek



Re: [9fans] those funny gnu guys

2008-11-17 Thread Anant Narayanan

8c! http://gsoc.cat-v.org/hg/kenc
(Anant, did you have another port as part of Glendix, or am I getting
mixed up?)


Yes, 8c  8l now work on Glendix.

Regards,
Anant




Re: [9fans] nat

2008-11-17 Thread Sergey Zhilkin
Hello !

Look at 6in4(8) sources, it uses ipmux to get packets.
This will be the first step to NAT.

P.S.: I'm using hardware NAT (by Cisco)

2008/11/16 erik quanstrom [EMAIL PROTECTED]

   Obviously, a linux server is going to have a hard time importing /net
  (in a useful way, at least until Glendix gets there).

 i've got a lot of folk in the house who run whatever.
 i'd really like to decommission the non-plan 9 machine.
 the one thing i need from it is nat.  (and i don't want
 to be stuck fiddling more stuff on the dsl appliance.)
 doing nat just isn't that hard.  i just need to find the time.
 this is about a summer-of-code sized project.  i don't think
 it would require anything from the kernel.

 - erik





-- 
С Уважением
Жилкин Сергей