[9fans] unvac troubles...

2009-08-20 Thread Venkatesh Srinivas
Hi,

I'm using unvac to try to extract some vac archives I made in the fall
of 2008. I'm running into a pair of problems.

First, unvac is outputting directories with the write bit off. This
causes it to fail pretty early, as it can't write files to the
newly-extracted directories. Is this expected? Is there a way to avoid
this problem?

Second I get this error: (on p9p unvac)

unvac: pthread_mutex_lock.c:289: __pthread_mutex_lock: Assertion
`(-(e)) != 3 || !robust' failed.
[New Thread 0xb7e548d0 (LWP 3743)]

Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb7e548d0 (LWP 3743)]
0xb8022430 in __kernel_vsyscall ()
(gdb) bt
#0  0xb8022430 in __kernel_vsyscall ()
#1  0xb7fc64b0 in raise ()
  from /lib/tls/i686/cmov/libpthread.so.0
#2  0x0805c6b2 in child () at daemonize.c:38
#3  0x0805c927 in _threadsetupdaemonize ()
   at daemonize.c:153
#4  0x0805c49d in p9main (argc=3, argv=0xbfa3e1c4)
   at thread.c:714
#5  0x08060d92 in main (argc=Cannot access memory at address 0xe9f
) at main.c:10
(gdb)

Have any of you seen anything like this?

-- vs



Re: [9fans] pipefrom fun

2009-08-20 Thread Russ Cox
pipefrom is too late to rewrite outgoing addresses,
because marshal has already written the To:
line with the local address.  Your post says
To: 9f...@steponnopets.net
You can create /mail/box/$user/names
to get aliases that won't go out.

http://9fans.net/archive/2004/01/530
http://9fans.net/archive/2004/01/533
http://9fans.net/archive/2004/04/99  # ,s/%/@/g I think

Russ



Re: [9fans] Recursive structural expressions?

2009-08-20 Thread Charles Forsyth
qed allowed naming of regular expressions using `e' and their recursive 
invocation
using \E, with results suggested earlier.

http://cm.bell-labs.com/cm/cs/who/dmr/qedman.html
http://cm.bell-labs.com/cm/cs/who/dmr/qedman.pdf

``It should be noted that the ability to define regular expressions recursively 
makes the term "regular expression" a misnomer: it is not hard to see that 
expressions can be constructed to match exactly the members of any given 
context-free language.''



Re: [9fans] dump9660?

2009-08-20 Thread erik quanstrom
On Thu Aug 20 19:42:04 EDT 2009, iru.mu...@gmail.com wrote:
> On Thu, Aug 20, 2009 at 6:34 PM, Venkatesh Srinivas wrote:
> > Hi,
> >
> > Do any of you still use dump9660? Any recent experiences or stuff I
> > should watch out for using it?
> >
> 
> mk9660(8) is the main user, but i don't think she reads the list.

they are effectively quite different.  there are 11 if(mk9660)'s in the
source.

- erik



Re: [9fans] Recursive structural expressions?

2009-08-20 Thread erik quanstrom
> Here's an example. Let's make the syntax extra pukey: @#, where # is
> 1-9, defines a `named procedure', which is the same thing as putting
> something in braces in Sam.
> 
> x/.*\n/ @1{ ( @1 ) | @1 ( @1 ) ( ) | }
> 

x/re/ repeatedly sets . with matches until the input
is exhausted.  so i don't think i understand your example.
how does /.*\n/{(.*\n)|.*\n(.*\n)|} match anything
but the tautological .*\n|?  for example, if the input
is "line1\nline2\n", then . is in turn "line1\n" and "line2\n",
and both match .*\n|.

where do the actions go in your example?

- erik



Re: [9fans] pipefrom fun

2009-08-20 Thread erik quanstrom
On Thu Aug 20 20:53:27 EDT 2009, maht-9f...@maht0x0r.net wrote:
> All being well this is a mail routed by my pipefrom
> 
> /n/sources/contrib/maht/rc/pipefrom
> 
> It has seen the outgoing address  of "9fans" and changed it to 
> "9fans@9fans.net"
> It has seen the outgoing address of "9fans@9fans.net" and set upasname to be 
> "maht-9f...@maht0x0r.net"
>

why not use /mail/lib/names.local for the first example?

i haven't read the script, though.

; ls -l  /n/sources/contrib/maht/rc/pipefrom
--rwx--x--x M 675 maht sys 1107 Aug 20 20:50 /n/sources/contrib/maht/rc/pipefrom

one thing i've thought would be useful since people mail from
many places with many names is a translation from a set of from
addresses to a mailbox name so that, e.g. the ned f command doesn't
end up creating a bunch of folders for the same person.

- erik



[9fans] pipefrom fun

2009-08-20 Thread maht-9fans
All being well this is a mail routed by my pipefrom

/n/sources/contrib/maht/rc/pipefrom

It has seen the outgoing address  of "9fans" and changed it to "9fans@9fans.net"
It has seen the outgoing address of "9fans@9fans.net" and set upasname to be 
"maht-9f...@maht0x0r.net"





Re: [9fans] Recursive structural expressions?

2009-08-20 Thread J.R. Mauro
On Thu, Aug 20, 2009 at 5:26 PM, erik quanstrom wrote:
>> No, I know you can apply them `recursively', I mean something more
>> like an expression in a CFG or yacc.
>>
>> >
>> > can you outline somehow what you're thinking of?
>>
>> Basically, if you could take a bracketed expression in sam and then
>> name it, and then call it recursively.
>>
>> All the problems with CFGs (shift/reduce problems, ambiguities, etc)
>> would possibly apply.
>
> could you give an example in your proposed language?
> i don't see how greedy regular expressions wouldn't kill you.
> example.  let's say you have a SRE that breaks text into lines,
> you couldn't apply that recursively.  in fact i think you'd have
> the same problem with any SRE, since they are greedy and
> can't count.
>
> maybe i'm just confused because 'x' goes from a blob of text
> to a stream of tokens.  where as grammars go from a stream
> of tokens to productions.  maybe you mean to replace the
> traditional tokenizer with named SREs?

Here's an example. Let's make the syntax extra pukey: @#, where # is
1-9, defines a `named procedure', which is the same thing as putting
something in braces in Sam.

x/.*\n/ @1{ ( @1 ) | @1 ( @1 ) ( ) | }

Spaces have been added to reduce ugliness, but in the ``real'' syntax,
the spaces would have to be left out. The last pipe followed by a
space represents the null string. The entire expression should,
despite me being really rusty at CS Theory, match balanced strings of
parentheses.

The problems that would arise with this scheme include:
0) Infinite recursion
1) Shift/reduce errors
2) Ambiguities

I'm not sure if this is as powerful as CFGs, but it is at least more
powerful than regular expressions. Again, I'm not great at theory and
it's been a while since I did any. If we call this syntax S, I have
proven (hopefully correctly) only this:

L(Reg) < L(S) <= L(CFG)

Newsham was thinking about it more lucidly than I was on the IRC
channel about what it's really equivalent to.

Hopefully this makes it clear.

>
> - erik
>
>



Re: [9fans] dump9660?

2009-08-20 Thread Iruata Souza
On Thu, Aug 20, 2009 at 6:34 PM, Venkatesh Srinivas wrote:
> Hi,
>
> Do any of you still use dump9660? Any recent experiences or stuff I
> should watch out for using it?
>

mk9660(8) is the main user, but i don't think she reads the list.

iru



[9fans] dump9660?

2009-08-20 Thread Venkatesh Srinivas
Hi,

Do any of you still use dump9660? Any recent experiences or stuff I
should watch out for using it?

Thanks,
-- vs



Re: [9fans] Recursive structural expressions?

2009-08-20 Thread erik quanstrom
> No, I know you can apply them `recursively', I mean something more
> like an expression in a CFG or yacc.
> 
> >
> > can you outline somehow what you're thinking of?
> 
> Basically, if you could take a bracketed expression in sam and then
> name it, and then call it recursively.
> 
> All the problems with CFGs (shift/reduce problems, ambiguities, etc)
> would possibly apply.

could you give an example in your proposed language?
i don't see how greedy regular expressions wouldn't kill you.
example.  let's say you have a SRE that breaks text into lines,
you couldn't apply that recursively.  in fact i think you'd have
the same problem with any SRE, since they are greedy and
can't count.

maybe i'm just confused because 'x' goes from a blob of text
to a stream of tokens.  where as grammars go from a stream
of tokens to productions.  maybe you mean to replace the
traditional tokenizer with named SREs?

- erik



Re: [9fans] Recursive structural expressions?

2009-08-20 Thread J.R. Mauro
On Thu, Aug 20, 2009 at 4:39 PM, erik quanstrom wrote:
>> > i'm sure i've done them.  this is a lame example, since i can't remember
>> > where i've used these techniques off the top of my head
>> >
>> > ,x:.*: g/#pragma/ x:[^  ]+[     ]: g/print/p
>>
>> How is this recursive?
>
> in the sense that 'x' is recursively applied to the output of 'x'.
> i have no idea what you would mean by applying the same 'x'
> expression to the output of said 'x' expression, as regular expressions
> are greedy and can't count.  wouldn't they all loop forever?

No, I know you can apply them `recursively', I mean something more
like an expression in a CFG or yacc.

>
> can you outline somehow what you're thinking of?

Basically, if you could take a bracketed expression in sam and then
name it, and then call it recursively.

All the problems with CFGs (shift/reduce problems, ambiguities, etc)
would possibly apply.

>
> - erik
>
>



Re: [9fans] Recursive structural expressions?

2009-08-20 Thread erik quanstrom
> > i'm sure i've done them.  this is a lame example, since i can't remember
> > where i've used these techniques off the top of my head
> >
> > ,x:.*: g/#pragma/ x:[^  ]+[     ]: g/print/p
> 
> How is this recursive?

in the sense that 'x' is recursively applied to the output of 'x'.
i have no idea what you would mean by applying the same 'x'
expression to the output of said 'x' expression, as regular expressions
are greedy and can't count.  wouldn't they all loop forever?

can you outline somehow what you're thinking of?

- erik



Re: [9fans] Recursive structural expressions?

2009-08-20 Thread J.R. Mauro
On Thu, Aug 20, 2009 at 3:53 PM, erik quanstrom wrote:
> On Thu Aug 20 13:54:35 EDT 2009, jrm8...@gmail.com wrote:
>> Has anyone given thought to recursive structural regular expressions?
>
> i'm sure i've done them.  this is a lame example, since i can't remember
> where i've used these techniques off the top of my head
>
> ,x:.*: g/#pragma/ x:[^  ]+[     ]: g/print/p

How is this recursive?

>
> - erik
>
>



Re: [9fans] Recursive structural expressions?

2009-08-20 Thread erik quanstrom
On Thu Aug 20 13:54:35 EDT 2009, jrm8...@gmail.com wrote:
> Has anyone given thought to recursive structural regular expressions?

i'm sure i've done them.  this is a lame example, since i can't remember
where i've used these techniques off the top of my head

,x:.*: g/#pragma/ x:[^  ]+[ ]: g/print/p

- erik



Re: [9fans] vmware oddity (Fusion on Mac OS X)

2009-08-20 Thread erik quanstrom
> 
> http://fxr.watson.org/fxr/source/pc/devether.c?v=PLAN9#L202
> 

you may wish to give "standard" (at least to 9fans) links
to code, e.g:

/sys/src/9/pc/devether.c:202

you would probablly benefit from removing the print statements.
they're potentially going to make the problem much worse.
/net/ether0/stats will have the statistic so it can be tracked there
without printing on each error.

i would imagine snoopy would be informative.

- erik



Re: [9fans] vmware oddity (Fusion on Mac OS X)

2009-08-20 Thread james toy
I was just actually about to post about this. I have yet to find a
fix; however, it seems its after the multiplex code and can be found
here


http://fxr.watson.org/fxr/source/pc/devether.c?v=PLAN9#L202


I am not running venti; I am only running fossil.  I don't think that
is related in light of the fact we are running both options and its
happening on both.  I get the behavior after i put in my aescbc key
before rio.  I also get a whole bunch of download failed and see faces
freaking out as its trying to interact with my GMail.  I only get this
on updating or downloading my emails on first boot.

I am going to continue to look into it.

james toy

On Tue, Aug 18, 2009 at 10:49 AM, erik quanstrom wrote:
>> > it sounds like the interrupt handler takes long enough that
>> > there is no time to process the incoming frames.
>> >
>> > i wonder, are you running venti?
>>
>>
>> I am, and venti took a long time to start at boot this time around.  I
>> suppose I should just run fossil in vmware.
>
> well, there are a couple of things that should be done
> - the ethernet driver bug should be fixed
> - venti should be shown how to use a pipe instead of tcp.
>
> but, i think if you configure a proper loopback using
> loopbackmedium rather than going through your virtual
> ethernet controller, that might just fix the problem.
>
> - erik
>
>



[9fans] Netbook

2009-08-20 Thread james toy
Hello 9fans,

A few things:
1) I'm going to be installing and finishing up the Plan9 setup I have
at plan9.union.edu or plan9.cs.union.edu; I have not decided where I
would like to put it yet.  I'll be doing all of my senior projects on
Plan9 so that I can further my understanding of the system and
operating systems in general.  I would like to get a terminal that
runs Plan9 natively so that I can boot the root from the main server
and also be able to fall back on the installation on the computer.  I
would prefer avoiding drawterm because the other OS would certainly
provide a distraction to the plan9 work.

any thoughts?

2) I'll be finishing up my hg-git contrib as well as a few other
patches I've been working on.  I was having trouble with usb-ether on
the macbook air dongle and now how a few things that have fixed it so
USB ethernet it working for me.

hope you all are doing very well; respectfully,

james toy



[9fans] Recursive structural expressions?

2009-08-20 Thread J.R. Mauro
Has anyone given thought to recursive structural regular expressions?
I didn't see a way to do recursion from reading the paper and
experimenting.

The reason for recursion would be that instead of having hopped-up
regexes, we'd now have context-free expressions. Yacc needing tokens
makes doing CF things a pain, but I think if grep, sed, sam, etc
understood a simple CF expression language, we'd have something that
was (mathematically) more powerful.

One (perhaps silly) example is that you could see if your source code
had balanced parens/braces/brackets/tags in a jiffy, but other
examples include searching through records with complex structure.

I suppose it would likely be too slow, but would it cost anything when
it's not used?



Re: [9fans] make slides in plan 9

2009-08-20 Thread J.R. Mauro
On Wed, Aug 19, 2009 at 12:27 PM, Charles Forsyth wrote:
> i use html, then any browser will do, even ie6 for most things.
> i use an rc script and awk to take an outline format such as
>        - burble
>                - more burble
>                - even more burble
> with some other conventions to allow embedded code fragments.
> it's obviously easy to link to other things to allow diversions
> and connect to expanded information on the rare instances that
> anyone is awake enough to ask about them. the same script can generate
> a summary of the slides in troff as handouts.
>
> since there are drawbacks to the powerpoint approach, even without cruft

More people need to read Edward Tufte. Slideshows generally just
detract from what you're doing. Use a projector for things like
images, tables, etc.

> like clip art and transitions, i often simply
> write ordinary troff (-ms or -mpm), and then i can
> use pic, grap, eqn, tbl as needed.
>
>



Re: [9fans] varargs question

2009-08-20 Thread erik quanstrom
> what problem are you trying to solve?
> 
> the limit would check only that the right number of
> argument bytes are consumed, but not that they are
> interpreted correctly.  print("%s %d", 1, "hello") would
> still crash, as would print("%s", 1, "hello").
> 
> #pragma varargck is more precise and can be
> done at compile time instead of needing to wait
> until the code trips at run time.

varargck is very effective.  but it only works if the pragma
is used.  (i count 47 functions with ... in /sys/include and
only 27 #pragma varargck argpos.)   and it only works with
functions taking print verbs.  anyone else, is out-of-luck.
for example, the stdio functions.

here are some functions that don't appear to have varargck
that likely should:

auth_wep
ctlerror
hfail
vtDebug
vtFatal
threadsetname
vtlogprint
vtlog

- erik



[9fans] lspci for windows (sort of)

2009-08-20 Thread Steve Simon
I recently came across this, a tool which
can dump some PCI bus info from windows. This may be
of use to people trying to put plan9 on systems that
are already installed with windows.

perhaps this is old news and evryone knows about it,
but I didn't.

http://support.microsoft.com/kb/311272

example of usage:

acroncompile1% devcon find pci\*
PCI\VEN_10DE&DEV_0165&SUBSYS_029D10DE&REV_A1\4&14DB2FCF&0&0008: NVIDIA Quadro 
NVS 285
PCI\VEN_14E4&DEV_167B&SUBSYS_280C103C&REV_02\4&27454EAD&0&00E5: Broadcom 
NetXtreme Gigabit Ethernet
PCI\VEN_8086&DEV_244E&SUBSYS_&REV_E1\3&B1BFB68&0&F0 : Intel(R) 82801 
PCI Bridge - 244E
PCI\VEN_8086&DEV_277C&SUBSYS_&REV_00\3&B1BFB68&0&00 : PCI standard host 
CPU bridge
PCI\VEN_8086&DEV_277D&SUBSYS_&REV_00\3&B1BFB68&0&08 : PCI standard 
PCI-to-PCI bridge
PCI\VEN_8086&DEV_27B8&SUBSYS_&REV_01\3&B1BFB68&0&F8 : Intel(R) 82801GB 
LPC Interface Controller - 27B8
PCI\VEN_8086&DEV_27C0&SUBSYS_280C103C&REV_01\3&B1BFB68&0&FA : Intel(R) 82801GB 
Serial ATA Storage Controllers - 27C0
PCI\VEN_8086&DEV_27C8&SUBSYS_280C103C&REV_01\3&B1BFB68&0&E8 : Intel(R) 82801GB 
USB Universal Host Controller - 27C8
PCI\VEN_8086&DEV_27C9&SUBSYS_280C103C&REV_01\3&B1BFB68&0&E9 : Intel(R) 82801GB 
USB Universal Host Controller - 27C9
PCI\VEN_8086&DEV_27CA&SUBSYS_280C103C&REV_01\3&B1BFB68&0&EA : Intel(R) 82801GB 
USB Universal Host Controller - 27CA
PCI\VEN_8086&DEV_27CB&SUBSYS_280C103C&REV_01\3&B1BFB68&0&EB : Intel(R) 82801GB 
USB Universal Host Controller - 27CB
PCI\VEN_8086&DEV_27CC&SUBSYS_280C103C&REV_01\3&B1BFB68&0&EF : Intel(R) 82801GB 
USB2 Enhanced Host Controller - 27CC
PCI\VEN_8086&DEV_27D0&SUBSYS_&REV_01\3&B1BFB68&0&E0 : Intel(R) 82801GB 
PCI Express Root Port - 27D0
PCI\VEN_8086&DEV_27D8&SUBSYS_280C103C&REV_01\3&B1BFB68&0&D8 : Microsoft UAA Bus 
Driver for High Definition Audio
PCI\VEN_8086&DEV_27DF&SUBSYS_280C103C&REV_01\3&B1BFB68&0&F9 : Intel(R) 82801GB 
Ultra ATA Storage Controllers - 27DF
PCI\VEN_8086&DEV_27E0&SUBSYS_&REV_01\3&B1BFB68&0&E4 : Intel(R) 82801GB 
PCI Express Root Port - 27E0
PCI\VEN_8086&DEV_27E2&SUBSYS_&REV_01\3&B1BFB68&0&E5 : Intel(R) 82801GB 
PCI Express Root Port - 27E2

-Steve



Re: [9fans] varargs question

2009-08-20 Thread Russ Cox
On Thu, Aug 20, 2009 at 6:56 AM, erik quanstrom wrote:
> and i wondered why kenc doesn't add an argument
> count before the first vararg.  (bwc pointed out
> that the address following the last vararg would be
> more useful.)  va_* could be updated to deal with
> the silent extra and abort on access beyond the end
> of the actual variable arguments.  a function to check
> that list == end could added for the paranoid.

what problem are you trying to solve?

the limit would check only that the right number of
argument bytes are consumed, but not that they are
interpreted correctly.  print("%s %d", 1, "hello") would
still crash, as would print("%s", 1, "hello").

#pragma varargck is more precise and can be
done at compile time instead of needing to wait
until the code trips at run time.

russ



[9fans] varargs question

2009-08-20 Thread erik quanstrom
as i was drifting off to sleep the other night,
i was wondering about varargs.  (clearly, it's
time for a vacation.)

and i wondered why kenc doesn't add an argument
count before the first vararg.  (bwc pointed out
that the address following the last vararg would be
more useful.)  va_* could be updated to deal with
the silent extra and abort on access beyond the end
of the actual variable arguments.  a function to check
that list == end could added for the paranoid.

since all code is prototyped these days,
is there any reason why this is a bad idea that i
haven't thought of?

- erik



Re: [9fans] USB HDD connection problem

2009-08-20 Thread Bela Valek
I tried a recent distribution image (Aug15). The live CD worked with
my external harddrive, after plugging it in i issued 'usbfat:', and i
was able to read and write files on it. When I installed it, 'usbfat:'
said that there are no usb disks. usbd was running (5 threads), I will
try ls '#u' when i have access to the machine.


2009/8/19 Francisco J Ballesteros :
> there has been an update on usb software recently.
> the old kernel driver was called #U, the new one is #u.
> Tools like usb/usbd and usb/disk changed as well.
>
> Do you still have the problem?
> I'm just reading the mail thread and don't understand why
> /srv/usb is not there. It should.
>
> can you ls '#u' ?
> Do you have usbd running?
>
> Sorry, just came and I might be missing some eairlier mail.
> I'm still reading them all.
>
> On Sat, Aug 8, 2009 at 1:08 PM, Bela Valek wrote:
>> - usb/usbd is up and running
>> - the only option in my BIOS is to turn USB off
>> - I am sorry, i dont understand the part about the old and new USB
>> devices and tools. can you explain a bit?
>>
>> Thanks: Béla
>>
>> 2009/8/7 erik quanstrom :
>>> On Fri Aug  7 02:53:14 EDT 2009, bval...@gmail.com wrote:
 There is more:

 I don't have a usbdisk manpage. '%man usbdisk' complains that its not
 there, but if i do a '%lookman usbdisk', the manpage is listed as a
 hit, so it must be in the search index.

>>> [...]
 >>>
 >>> - usb/disk gives this:
 >>> usb/disk: /dev/usb: no devs
 >>>
 >>> - usbfat: writes:
 >>> mount: can't open /srv/usb: '/srv/usb' file does not exist
 >>> cannot mount /srv/usb
 >>>
 >>> The USB mouse works.
>>>
>>> hmm.  if the usb mouse works, yet plan 9 is not running
>>> usb/usbd (have you checked), it may be that your bios has
>>> put your usb in legacy mode and either won't or hasn't been
>>> asked to let go.
>>>
>>> if you are running usbd and usb/kb, then this could happen
>>> if you are mixing #U and tools for #U (the old usb device)
>>> and #u and tools for #u.
>>>
>>> your man page problem sounds like you've damaged your local fs.
>>> consider a pull to update.
>>>
>>> - erik
>>>
>>>
>>
>>
>
>