Browse Source

De-anonymise SDperm in various sd.h structs. Also De-anonymise qlock.

The qlock seems not to have been used. Another reason to deanonymise;
hidden things are clearer.

What a shame. I used to like anon struct members. I no longer do.

Change-Id: Ib800c0957f9c689d65593e37b210eb6f41b2a072
Signed-off-by: Ronald G. Minnich <rminnich@gmail.com>
Ronald G. Minnich 8 years ago
parent
commit
85a9bb509b
5 changed files with 42 additions and 42 deletions
  1. 14 14
      sys/src/9/386/sdiahci.c
  2. 1 1
      sys/src/9/k10/sdata.c
  3. 23 23
      sys/src/9/port/devsd.c
  4. 3 3
      sys/src/9/port/sd.h
  5. 1 1
      sys/src/9/port/sdscsi.c

+ 14 - 14
sys/src/9/386/sdiahci.c

@@ -750,7 +750,7 @@ ahciconfigdrive(Drive *d)
 	}
 
 	if (d->unit)
-		name = d->unit->name;
+		name = d->unit->SDperm.name;
 	else
 		name = nil;
 	if(p->sstatus & (Devphycomm|Devpresent) && h->cap & Hsss){
@@ -937,8 +937,8 @@ updatedrive(Drive *d)
 	serr = p->serror;
 	p->isr = cause;
 	name = "??";
-	if(d->unit && d->unit->name)
-		name = d->unit->name;
+	if(d->unit && d->unit->SDperm.name)
+		name = d->unit->SDperm.name;
 
 	if(p->ci == 0){
 		d->portm.flag |= Fdone;
@@ -1088,7 +1088,7 @@ resetdisk(Drive *d)
 		setstate(d, Dmissing);
 		configdrive(d);
 	}
-	dprint("ahci: %s: resetdisk: %s → %s\n", (d->unit? d->unit->name: nil),
+	dprint("ahci: %s: resetdisk: %s → %s\n", (d->unit? d->unit->SDperm.name: nil),
 		diskstates[state], diskstates[d->state]);
 	qunlock(&d->portm.ql);
 }
@@ -1103,7 +1103,7 @@ newdrive(Drive *d)
 	c = &d->portc;
 	pm = &d->portm;
 
-	name = d->unit->name;
+	name = d->unit->SDperm.name;
 	if(name == 0)
 		name = "??";
 
@@ -1126,13 +1126,13 @@ newdrive(Drive *d)
 	setstate(d, Dready);
 	qunlock(&c->pm->ql);
 
-	idprint("%s: %sLBA %,llud sectors: %s %s %s %s\n", d->unit->name,
+	idprint("%s: %sLBA %,llud sectors: %s %s %s %s\n", d->unit->SDperm.name,
 		(pm->feat & Dllba? "L": ""), d->sectors, d->model, d->firmware,
 		d->serial, d->mediachange? "[mediachange]": "");
 	return 0;
 
 lose:
-	idprint("%s: can't be initialized\n", d->unit->name);
+	idprint("%s: can't be initialized\n", d->unit->SDperm.name);
 	setstate(d, Dnull);
 	qunlock(&c->pm->ql);
 	return -1;
@@ -1144,7 +1144,7 @@ westerndigitalhung(Drive *d)
 	if((d->portm.feat&Datapi) == 0 && d->active &&
 	    TK2MS(sys->ticks - d->intick) > 5000){
 		dprint("%s: drive hung; resetting [%#lux] ci %#lx\n",
-			d->unit->name, d->port->task, d->port->ci);
+			d->unit->SDperm.name, d->port->task, d->port->ci);
 		d->state = Dreset;
 	}
 }
@@ -1204,7 +1204,7 @@ checkdrive(Drive *d, int i)
 		iunlock(d);
 		return;
 	}
-	name = d->unit->name;
+	name = d->unit->SDperm.name;
 	s = d->port->sstatus;
 	if(s)
 		d->lastseen = sys->ticks;
@@ -1341,7 +1341,7 @@ isdrivejabbering(Drive *d)
 	}
 	if (++d->intrs > Maxintrspertick) {
 		iprint("sdiahci: %lud interrupts per tick for %s\n",
-			d->intrs, d->unit->name);
+			d->intrs, d->unit->SDperm.name);
 		d->intrs = 0;
 	}
 }
@@ -1398,7 +1398,7 @@ awaitspinup(Drive *d)
 		iunlock(d);
 		return;
 	}
-	name = (d->unit? d->unit->name: nil);
+	name = (d->unit? d->unit->SDperm.name: nil);
 	s = d->port->sstatus;
 	if(!(s & Devpresent)) {			/* never going to be ready */
 		dprint("awaitspinup: %s absent, not waiting\n", name);
@@ -1673,7 +1673,7 @@ waitready(Drive *d)
 			return 0;	/* ready, present & phy. comm. */
 		esleep(250);
 	}
-	print("%s: not responding; offline\n", d->unit->name);
+	print("%s: not responding; offline\n", d->unit->SDperm.name);
 	setstate(d, Doffline);
 	return -1;
 }
@@ -1715,7 +1715,7 @@ iariopkt(SDreq *r, Drive *d)
 	Asleep as;
 
 	cmd = r->cmd;
-	name = d->unit->name;
+	name = d->unit->SDperm.name;
 	p = d->port;
 
 	aprint("ahci: iariopkt: %04#ux %04#ux %c %d %p\n",
@@ -1842,7 +1842,7 @@ iario(SDreq *r)
 	if(d->portm.feat & Datapi)
 		return iariopkt(r, d);
 	cmd = r->cmd;
-	name = d->unit->name;
+	name = d->unit->SDperm.name;
 	p = d->port;
 
 	if(r->cmd[0] == 0x35 || r->cmd[0] == 0x91){

+ 1 - 1
sys/src/9/k10/sdata.c

@@ -1737,7 +1737,7 @@ retry:
 	if(status == SDretry){
 		if(DbgDEBUG)
 			print("%s: retry: dma %8.8uX rwm %4.4uX\n",
-				unit->name, drive->dmactl, drive->rwmctl);
+				unit->SDperm.name, drive->dmactl, drive->rwmctl);
 		goto retry;
 	}
 	if(status == SDok){

+ 23 - 23
sys/src/9/port/devsd.c

@@ -100,7 +100,7 @@ sdaddpart(SDunit* unit, char* name, uint64_t start, uint64_t end)
 					partno = i;
 				break;
 			}
-			if(strcmp(name, pp->name) == 0){
+			if(strcmp(name, pp->SDperm.name) == 0){
 				if(pp->start == start && pp->end == end)
 					return;
 				error(Ebadctl);
@@ -138,9 +138,9 @@ sdaddpart(SDunit* unit, char* name, uint64_t start, uint64_t end)
 	pp = &unit->part[partno];
 	pp->start = start;
 	pp->end = end;
-	kstrdup(&pp->name, name);
-	kstrdup(&pp->user, eve);
-	pp->perm = 0640;
+	kstrdup(&pp->SDperm.name, name);
+	kstrdup(&pp->SDperm.user, eve);
+	pp->SDperm.perm = 0640;
 	pp->valid = 1;
 }
 
@@ -156,13 +156,13 @@ sddelpart(SDunit* unit, char* name)
 	 */
 	pp = unit->part;
 	for(i = 0; i < unit->npart; i++){
-		if(strcmp(name, pp->name) == 0)
+		if(strcmp(name, pp->SDperm.name) == 0)
 			break;
 		pp++;
 	}
 	if(i >= unit->npart)
 		error(Ebadctl);
-	if(strcmp(up->user, pp->user) && !iseve())
+	if(strcmp(up->user, pp->SDperm.user) && !iseve())
 		error(Eperm);
 	pp->valid = 0;
 	pp->vers++;
@@ -226,7 +226,7 @@ sdinitpart(SDunit* unit)
 		 * The gen functions patch it up.
 		 */
 #if 0
-		snprint(buf, sizeof buf, "%spart", unit->name);
+		snprint(buf, sizeof buf, "%spart", unit->SDperm.name);
 		for(p = getconf(buf); p != nil; p = q){
 			if(q = strchr(p, '/'))
 				*q++ = '\0';
@@ -309,9 +309,9 @@ sdgetunit(SDev* sdev, int subno)
 		sdev->unitflg[subno] = 1;
 
 		snprint(buf, sizeof(buf), "%s%d", sdev->name, subno);
-		kstrdup(&unit->name, buf);
-		kstrdup(&unit->user, eve);
-		unit->perm = 0555;
+		kstrdup(&unit->SDperm.name, buf);
+		kstrdup(&unit->SDperm.user, eve);
+		unit->SDperm.perm = 0555;
 		unit->subno = subno;
 		unit->dev = sdev;
 
@@ -461,9 +461,9 @@ sd2gen(Chan* c, int i, Dir* dp)
 		l = (pp->end - pp->start) * unit->secsize;
 		mkqid(&q, QID(DEV(c->qid), UNIT(c->qid), PART(c->qid), Qpart),
 			unit->vers+pp->vers, QTFILE);
-		if(emptystr(pp->user))
-			kstrdup(&pp->user, eve);
-		devdir(c, q, pp->name, l, pp->user, pp->perm, dp);
+		if(emptystr(pp->SDperm.user))
+			kstrdup(&pp->SDperm.user, eve);
+		devdir(c, q, pp->SDperm.name, l, pp->SDperm.user, pp->SDperm.perm, dp);
 		rv = 1;
 		break;
 	}
@@ -540,9 +540,9 @@ sdgen(Chan* c, char* d, Dirtab* dir, int j, int s, Dir* dp)
 			}
 
 		mkqid(&q, QID(sdev->idno, s, 0, Qunitdir), 0, QTDIR);
-		if(emptystr(unit->user))
-			kstrdup(&unit->user, eve);
-		devdir(c, q, unit->name, 0, unit->user, unit->perm, dp);
+		if(emptystr(unit->SDperm.user))
+			kstrdup(&unit->SDperm.user, eve);
+		devdir(c, q, unit->SDperm.name, 0, unit->SDperm.user, unit->SDperm.perm, dp);
 		decref(&sdev->r);
 		return 1;
 
@@ -595,9 +595,9 @@ sdgen(Chan* c, char* d, Dirtab* dir, int j, int s, Dir* dp)
 		l = (pp->end - pp->start) * (int64_t)unit->secsize;
 		mkqid(&q, QID(DEV(c->qid), UNIT(c->qid), i, Qpart),
 			unit->vers+pp->vers, QTFILE);
-		if(emptystr(pp->user))
-			kstrdup(&pp->user, eve);
-		devdir(c, q, pp->name, l, pp->user, pp->perm, dp);
+		if(emptystr(pp->SDperm.user))
+			kstrdup(&pp->SDperm.user, eve);
+		devdir(c, q, pp->SDperm.name, l, pp->SDperm.user, pp->SDperm.perm, dp);
 		qunlock(&unit->ctl);
 		decref(&sdev->r);
 		return 1;
@@ -1168,7 +1168,7 @@ sdread(Chan *c, void *a, int32_t n, int64_t off)
 				if(pp->valid)
 					l += snprint(p+l, mm-l,
 						"part %s %llud %llud\n",
-						pp->name, pp->start, pp->end);
+						pp->SDperm.name, pp->start, pp->end);
 				pp++;
 			}
 		}
@@ -1250,7 +1250,7 @@ sdwrite(Chan* c, void* a, int32_t n, int64_t off)
 		}
 		/*
 		 * "ata arg..." invokes sdifc[i]->wtopctl(nil, cb),
-		 * where sdifc[i]->name=="ata" and cb contains the args.
+		 * where sdifc[i]->SDperm.name=="ata" and cb contains the args.
 		 */
 		ifc = nil;
 		sdev = nil;
@@ -1504,8 +1504,8 @@ unconfigure(char* spec)
 
 	for(i = 0; i != sdev->nunit; i++){
 		if(unit = sdev->unit[i]){
-			free(unit->name);
-			free(unit->user);
+			free(unit->SDperm.name);
+			free(unit->SDperm.user);
 			free(unit);
 		}
 	}

+ 3 - 3
sys/src/9/port/sd.h

@@ -27,7 +27,7 @@ struct SDperm {
 struct SDpart {
 	uint64_t	start;
 	uint64_t	end;
-	SDperm;
+	SDperm SDperm;
 	int	valid;
 	uint32_t	vers;
 };
@@ -37,7 +37,7 @@ struct SDunit {
 	int	subno;
 	unsigned char	inquiry[255];		/* format follows SCSI spec */
 	unsigned char	sense[18];		/* format follows SCSI spec */
-	SDperm;
+	SDperm SDperm;
 
 	QLock	ctl;
 	uint64_t	sectors;
@@ -65,7 +65,7 @@ struct SDev {
 	char	name[8];
 	SDev*	next;
 
-	QLock;				/* enable/disable */
+	QLock ql;				/* enable/disable */
 	int	enabled;
 	int	nunit;			/* Number of units */
 	QLock	unitlock;		/* `Loading' of units */

+ 1 - 1
sys/src/9/port/sdscsi.c

@@ -404,7 +404,7 @@ again:
 			break;
 		case 0x01:		/* recovered error */
 			print("%s: recovered error at sector %llud\n",
-				unit->name, bno);
+				unit->SDperm.name, bno);
 			rlen = r->rlen;
 			break;
 		case 0x06:		/* check condition */