merge
This commit is contained in:
commit
d9880518f0
|
@ -319,7 +319,7 @@ static long
|
||||||
segmentread(Chan *c, void *a, long n, vlong voff)
|
segmentread(Chan *c, void *a, long n, vlong voff)
|
||||||
{
|
{
|
||||||
Globalseg *g;
|
Globalseg *g;
|
||||||
char buf[32];
|
char buf[128];
|
||||||
|
|
||||||
if(c->qid.type == QTDIR)
|
if(c->qid.type == QTDIR)
|
||||||
return devdirread(c, a, n, (Dirtab *)0, 0L, segmentgen);
|
return devdirread(c, a, n, (Dirtab *)0, 0L, segmentgen);
|
||||||
|
@ -329,11 +329,11 @@ segmentread(Chan *c, void *a, long n, vlong voff)
|
||||||
g = c->aux;
|
g = c->aux;
|
||||||
if(g->s == nil)
|
if(g->s == nil)
|
||||||
error("segment not yet allocated");
|
error("segment not yet allocated");
|
||||||
if(g->s->type&SG_TYPE == SG_FIXED)
|
if((g->s->type&SG_TYPE) == SG_FIXED)
|
||||||
sprint(buf, "va %#p %#p fixed %#p\n", g->s->base, g->s->top-g->s->base,
|
snprint(buf, sizeof(buf), "va %#p %#p fixed %#p\n", g->s->base, g->s->top-g->s->base,
|
||||||
g->s->map[0]->pages[0]->pa);
|
g->s->map[0]->pages[0]->pa);
|
||||||
else
|
else
|
||||||
sprint(buf, "va %#p %#p\n", g->s->base, g->s->top-g->s->base);
|
snprint(buf, sizeof(buf), "va %#p %#p\n", g->s->base, g->s->top-g->s->base);
|
||||||
return readstr(voff, a, n, buf);
|
return readstr(voff, a, n, buf);
|
||||||
case Qdata:
|
case Qdata:
|
||||||
g = c->aux;
|
g = c->aux;
|
||||||
|
|
|
@ -267,7 +267,6 @@ fixfault(Segment *s, uintptr addr, int read, int doputmmu)
|
||||||
copypage(old, *pg);
|
copypage(old, *pg);
|
||||||
putpage(old);
|
putpage(old);
|
||||||
}
|
}
|
||||||
case SG_FIXED: /* Never paged out */
|
|
||||||
mmuphys = PPN((*pg)->pa) | PTEWRITE | PTEVALID;
|
mmuphys = PPN((*pg)->pa) | PTEWRITE | PTEVALID;
|
||||||
(*pg)->modref = PG_MOD|PG_REF;
|
(*pg)->modref = PG_MOD|PG_REF;
|
||||||
break;
|
break;
|
||||||
|
@ -280,6 +279,7 @@ fixfault(Segment *s, uintptr addr, int read, int doputmmu)
|
||||||
new->ref = 1;
|
new->ref = 1;
|
||||||
*pg = new;
|
*pg = new;
|
||||||
}
|
}
|
||||||
|
case SG_FIXED: /* Never paged out */
|
||||||
if (checkaddr && addr == addr2check)
|
if (checkaddr && addr == addr2check)
|
||||||
(*checkaddr)(addr, s, *pg);
|
(*checkaddr)(addr, s, *pg);
|
||||||
mmuphys = PPN((*pg)->pa) |PTEWRITE|PTEUNCACHED|PTEVALID;
|
mmuphys = PPN((*pg)->pa) |PTEWRITE|PTEUNCACHED|PTEVALID;
|
||||||
|
|
|
@ -21,6 +21,7 @@ dev
|
||||||
draw screen
|
draw screen
|
||||||
mouse
|
mouse
|
||||||
usb
|
usb
|
||||||
|
segment
|
||||||
|
|
||||||
link
|
link
|
||||||
etherzynq
|
etherzynq
|
||||||
|
|
Loading…
Reference in a new issue