[9fans] unvac troubles...
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
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?
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?
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?
> 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
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
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?
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?
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?
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?
> 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?
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?
> > 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?
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?
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)
> > 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)
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
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?
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
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
> 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)
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
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
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
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 >>> >>> >> >> > >