I mean, dot's what I'm talking about it. Dot's all she wrote. ron
On Sat, Jan 9, 2016 at 9:01 PM ron minnich <[email protected]> wrote: > dot's what I mean. > > ron > > On Sat, Jan 9, 2016 at 8:35 PM Kevin Klues <[email protected]> wrote: > >> That's fucked >> >> On Saturday, January 9, 2016, Dan Cross <[email protected]> wrote: >> >>> On Sat, Jan 9, 2016 at 5:31 PM, barret rhoden <[email protected]> >>> wrote: >>> >>>> On 2016-01-09 at 22:22 ron minnich wrote: >>>> > It was for . >>>> >>>> It was for what? There's nothing after 'for' and before the period >>>> '.'. =) >>>> >>>> So are you saying that the previous comment: >>>> >>>> * the zeroth element of the table MUST be the directory itself for .. >>>> >>>> was: >>>> >>>> * the zeroth element of the table MUST be the directory itself for >>>> .PERIOD >>>> >>>> (first dot means '.', second dot is a period?) >>>> >>> >>> Haha; yes. Horrible, isn't it? >>> >>> The git log says that line came from the original dev.c (9838b574b8d0 >>>> ("dev.c, which has stubs we need"). >>>> >>>> Anyway, I don't disagree that the first entry in the devtab is DOT. >>>> But why does the first entry need to be DOT? I think it is because of >>>> DOTDOT processing, which goes on in the later lines of code. >>>> Specifically, if i == DEVDOTDOT, then we just devdir the first entry of >>>> the table. For DOTDOT to work correctly, this first entry should be >>>> the actual directory we're in (a.k.a. DOT). I think. >>>> >>> >>> That's right. >>> >>> Ironically, this is almost *exactly* the conversation Ron and I had >>> yesterday about this. "Wait, so that second dot is a dot?" "Yeah, but it's >>> a period...like an 'end of sentence, full-stop' type period." >>> >>> Who's on first? :-) >>> >>> - Dan C. >>> >>> Barret >>>> >>>> >>>> >>>> >>>> >>>> > ron >>>> > >>>> > On Sat, Jan 9, 2016 at 2:17 PM Dan Cross <[email protected]> wrote: >>>> > >>>> > > On Sat, Jan 9, 2016 at 11:21 AM, barret rhoden >>>> > > <[email protected]> wrote: >>>> > > >>>> > >> On 2016-01-08 at 15:53 Dan Cross wrote: >>>> > >> > diff --git a/kern/src/ns/dev.c b/kern/src/ns/dev.c >>>> > >> > index 8b23bbd..99ee384 100644 >>>> > >> > --- a/kern/src/ns/dev.c >>>> > >> > +++ b/kern/src/ns/dev.c >>>> > >> > @@ -85,28 +85,30 @@ devdir(struct chan *c, struct qid qid, char >>>> > >> > *n, } >>>> > >> > >>>> > >> > /* >>>> > >> > - * the zeroth element of the table MUST be the directory itself >>>> > >> > for .. >>>> > >> > - * Any entry with qid vers of -1 will return 0, indicating that >>>> > >> > the value is >>>> > >> > - * valid but there is nothing there continue walk. >>>> > >> > - * TODO(gvdl): Update akaros devgen man page. >>>> > >> > -*/ >>>> > >> > + * The zeroth element of the table MUST be the directory >>>> > >> > itself, or '.' (dot). >>>> > >> >>>> > >> The "for .." in the original comment was probably "for DOTDOT >>>> > >> processing", not that the 0th element represented "..". Clearly, >>>> > >> the comment needs to change a little, since it was unclear enough >>>> > >> that you changed it. =) >>>> > >> >>>> > > >>>> > > No, it was definitely for 'dot'. I got confused by that myself, but >>>> > > stared through it enough to finally understand that that's what it >>>> > > is, hence the change of the comment. >>>> > > >>>> > > > + * Any entry with qid verion of -1 will return 0, indicating >>>> > > > that the >>>> > >> > value is >>>> > >> > + * valid but there is nothing there, so continue walking. >>>> > >> > + * >>>> > >> > + * TODO(cross): Document devgen. >>>> > >> > + */ >>>> > >> > int >>>> > >> > -devgen(struct chan *c, char *unused_char_p_t, struct dirtab >>>> > >> > *tab, int ntab, >>>> > >> > - int i, struct dir *dp) >>>> > >> > +devgen(struct chan *c, char *unused_name, struct dirtab *tab, >>>> > >> > int ntab, >>>> > >> > + int i, struct dir *dp) >>>> > >> > { >>>> > >> > - if (tab == 0) >>>> > >> > + if (tab == NULL) >>>> > >> > return -1; >>>> > >> > if (i != DEVDOTDOT) { >>>> > >> > - /* skip over the first element, that for . itself */ >>>> > >> > + /* Skip over the first element, that for the directory itself. >>>> > >> > */ i++; >>>> > >> > - if (i >= ntab) >>>> > >> > + if (i < 0 || i >= ntab || tab[i] == NULL) >>>> > >> > return -1; >>>> > >> > tab += i; >>>> > >> > } >>>> > >> > - int ret = (tab->qid.vers == -1)? 0 : 1; >>>> > >> > - if (ret) >>>> > >> > - devdir(c, tab->qid, tab->name, tab->length, eve, tab->perm, >>>> > >> > dp); >>>> > >> > - return ret; >>>> > >> > + assert(tab != NULL); >>>> > >> >>>> > >> don't need the assert, since there's a check for tab == NULL >>>> > >> earlier. >>>> > > >>>> > > Ooops. Will change once I get access to my workstation again.... >>>> > > >>>> > > > + if (tab->qid.vers == -1) >>>> > >> > + return 0; >>>> > >> > + devdir(c, tab->qid, tab->name, tab->length, eve, tab->perm, >>>> > >> > dp); >>>> > >> > + return 1; >>>> > >> > } >>>> > >> >>>> > >> barret >>>> > >> >>>> > >> -- >>>> > >> You received this message because you are subscribed to the Google >>>> > >> Groups "Akaros" group. >>>> > >> To unsubscribe from this group and stop receiving emails from it, >>>> > >> send an email to [email protected]. >>>> > >> To post to this group, send email to [email protected]. >>>> > >> For more options, visit https://groups.google.com/d/optout. >>>> > >> >>>> > > -- >>>> > > You received this message because you are subscribed to the Google >>>> > > Groups "Akaros" group. >>>> > > To unsubscribe from this group and stop receiving emails from it, >>>> > > send an email to [email protected]. >>>> > > To post to this group, send email to [email protected]. >>>> > > For more options, visit https://groups.google.com/d/optout. >>>> > > >>>> > >>>> >>>> -- >>>> You received this message because you are subscribed to the Google >>>> Groups "Akaros" group. >>>> To unsubscribe from this group and stop receiving emails from it, send >>>> an email to [email protected]. >>>> To post to this group, send email to [email protected]. >>>> For more options, visit https://groups.google.com/d/optout. >>>> >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Akaros" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> To post to this group, send email to [email protected]. >>> For more options, visit https://groups.google.com/d/optout. >>> >> >> >> -- >> ~Kevin >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Akaros" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To post to this group, send email to [email protected]. >> For more options, visit https://groups.google.com/d/optout. >> > -- You received this message because you are subscribed to the Google Groups "Akaros" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. For more options, visit https://groups.google.com/d/optout.
