Home
last modified time | relevance | path

Searched refs:plex (Results 1 – 23 of 23) sorted by relevance

/dflybsd-src/sys/dev/raid/vinum/
H A Dvinumconfig.c75 static void made_plex(struct plex *plex);
159 if (vol->plex[i] == plexno) in my_plex()
172 struct plex *plex; in my_sd() local
174 plex = &PLEX[plexno]; in my_sd()
175 for (i = 0; i < plex->subdisks; i++) in my_sd()
176 if (plex->sdnos[i] == sdno) in my_sd()
205 vol->plex[vol->plexes] = plexno; /* this one */ in give_plex_to_volume()
211 vol->size = u64max(vol->size, PLEX[vol->plex[i]].length); in give_plex_to_volume()
222 struct plex *plex; in give_sd_to_plex() local
235 plex = &PLEX[plexno]; /* point to the plex */ in give_sd_to_plex()
[all …]
H A Dvinumstate.c107 struct plex *plex; in set_sd_state() local
237 plex = &PLEX[sd->plexno]; in set_sd_state()
238 if (plex->volno >= 0) /* have a volume */ in set_sd_state()
239 vol = &VOL[plex->volno]; in set_sd_state()
252 && ((!isparity(plex)) in set_sd_state()
253 || (plex->sddowncount > 1))) { in set_sd_state()
314 struct plex *plex; /* point to our plex */ in set_plex_state() local
318 plex = &PLEX[plexno]; /* point to our plex */ in set_plex_state()
319 oldstate = plex->state; in set_plex_state()
322 if (plex->state == plex_unallocated) in set_plex_state()
[all …]
H A Dvinumioctl.c156 bcopy(&PLEX[index], data, sizeof(struct plex)); in vinumioctl()
403 struct plex *
464 struct plex *plex = &PLEX[msg->index]; in resetstats() local
465 if (plex->state > plex_referenced) { in resetstats()
466 plex->reads = 0; in resetstats()
467 plex->writes = 0; /* number of writes on this plex */ in resetstats()
468 plex->bytes_read = 0; /* number of bytes read */ in resetstats()
469 plex->bytes_written = 0; /* number of bytes written */ in resetstats()
470 plex->recovered_reads = 0; /* number of recovered read operations */ in resetstats()
471 plex->degraded_writes = 0; /* number of degraded writes */ in resetstats()
[all …]
H A Dvinumrevive.c60 struct plex *plex; in revive_block() local
78 plex = &PLEX[sd->plexno]; /* point to plex */ in revive_block()
79 if (plex->volno >= 0) in revive_block()
80 vol = &VOL[plex->volno]; in revive_block()
93 switch (plex->organization) { in revive_block()
99 stripeoffset = sd->revived % plex->stripesize; /* offset from beginning of stripe */ in revive_block()
100 if (stripeoffset + (size >> DEV_BSHIFT) > plex->stripesize) in revive_block()
101 size = (plex->stripesize - stripeoffset) << DEV_BSHIFT; in revive_block()
103 + (sd->revived - stripeoffset) * plex->subdisks /* offset to beginning of stripe */ in revive_block()
109 stripeoffset = sd->revived % plex->stripesize; /* offset from beginning of stripe */ in revive_block()
[all …]
H A Dvinumlock.c108 lockrange(vinum_off_t stripe, struct buf *bp, struct plex *plex) in lockrange() argument
139 while (plex->usedlocks == PLEX_LOCKS) /* all in use */ in lockrange()
140 tsleep(&plex->usedlocks, 0, "vlock", 0); in lockrange()
143 if (plex->usedlocks >= PLEX_LOCKS) in lockrange()
147 lock = plex->lock; /* pointer in lock table */ in lockrange()
148 if (plex->usedlocks > 0) /* something locked, */ in lockrange()
150 for (; lock < &plex->lock[PLEX_LOCKS] in lockrange()
151 && foundlocks < plex->usedlocks; in lockrange()
166 plex->lockwaits++; /* waited one more time */ in lockrange()
168 lock = &plex->lock[-1]; /* start again */ in lockrange()
[all …]
H A Dvinumraid5.c90 enum requeststatus build_rq_buffer(struct rqelement *rqe, struct plex *plex);
125 struct plex *plex; in bre5() local
138 plex = &PLEX[plexno]; /* point to the plex */ in bre5()
142 if (*diskaddr >= plex->length) /* beyond the end of the plex */ in bre5()
153 m.stripeoffset = *diskaddr % (plex->stripesize * (plex->subdisks - 1)); in bre5()
162 if (plex->organization == plex_raid5) in bre5()
163 m.psdno = plex->subdisks - 1 in bre5()
164 - (*diskaddr / (plex->stripesize * (plex->subdisks - 1))) in bre5()
165 % plex->subdisks; in bre5()
167 m.psdno = plex->subdisks - 1; in bre5()
[all …]
H A Dvinumext.h76 int plex_index(struct plex *plex);
187 void invalidate_subdisks(struct plex *, enum sdstate);
194 struct buf *parityrebuild(struct plex *, vinum_off_t, int, enum parityop, struct rangelock **, off_…
203 enum sdstates sdstatemap(struct plex *plex);
204 enum volplexstate vpstate(struct plex *plex);
220 struct plex *validplex(int plexno, struct _ioctl_reply *);
234 int lockplex(struct plex *plex);
235 void unlockplex(struct plex *plex);
236 struct rangelock *lockrange(vinum_off_t stripe, struct buf *bp, struct plex *plex);
H A Dvinum.c232 struct plex *plex = &vinum_conf.plex[i]; in free_vinum() local
234 if (plex->plex_dev) { in free_vinum()
235 destroy_dev(plex->plex_dev); in free_vinum()
236 plex->plex_dev = NULL; in free_vinum()
239 if (plex->state != plex_unallocated) { /* we have real data there */ in free_vinum()
240 if (plex->sdnos) in free_vinum()
241 Free(plex->sdnos); in free_vinum()
281 PLEX = (struct plex *) Malloc(sizeof(struct plex) * INITIAL_PLEXES); in vinum_initconf()
283 bzero(PLEX, sizeof(struct plex) * INITIAL_PLEXES); in vinum_initconf()
378 struct plex *plex; in vinumopen() local
[all …]
H A Dvinumrequest.c58 enum requeststatus build_rq_buffer(struct rqelement *rqe, struct plex *plex);
474 struct plex *plex; in bre() local
487 plex = &PLEX[plexno]; /* point to the plex */ in bre()
489 switch (plex->organization) { in bre()
492 for (sdno = 0; sdno < plex->subdisks; sdno++) { in bre()
493 sd = &SD[plex->sdnos[sdno]]; in bre()
535 if (build_rq_buffer(rqe, plex)) { /* build the buffer */ in bre()
563 if (*diskaddr >= plex->length) /* beyond the end of the plex */ in bre()
567 stripeoffset = *diskaddr % (plex->stripesize * plex->subdisks); in bre()
573 sdno = stripeoffset / plex->stripesize; in bre()
[all …]
H A Dvinumio.c450 vinum_conf.plex[vol->preferred_plex].name); in format_config()
459 struct plex *plex; in format_config() local
461 plex = &vinum_conf.plex[i]; in format_config()
462 if ((plex->state > plex_referenced) in format_config()
463 && (plex->name[0] != '\0')) { /* paranoia */ in format_config()
467 plex->name, in format_config()
468 plex_state(plex->state), in format_config()
469 plex_org(plex->organization)); in format_config()
472 if (isstriped(plex)) { in format_config()
476 (int) plex->stripesize); in format_config()
[all …]
H A Dvinumvar.h228 unsigned plex:3; /* up to 8 plexes per volume */
320 struct plex *plex; member
350 #define PLEX vinum_conf.plex
548 struct plex { struct
634 int plex[MAXPLEX]; /* index of plexes */ member
H A Dvinumutil.c80 if (((unsigned) state) >= STATECOUNT(plex)) { in plex_state()
157 for (i = 0; i < STATECOUNT(plex); i++) in PlexState()
261 return VOL[Volno(dev)].plex[(minor(dev) >> VINUM_PLEX_SHIFT) & (MASK(VINUM_PLEX_WIDTH))]; in Plexno()
H A Drequest.h263 struct plex *plex; /* for daemonrq_init */ member
H A Dvinumio.h128 #define VINUM_PLEXCONFIG _IOWR(L, 68, struct plex)
H A Dvinumparser.c89 keypair(plex),
/dflybsd-src/sbin/vinum/
H A Dlist.c317 get_plex_info(&plex, vol.plex[vol.preferred_plex]); in vinum_lvi()
318 printf("plex %d (%s)\n", vol.preferred_plex, plex.name); in vinum_lvi()
369 get_plex_info(&plex, vol.plex[plexno]); in vinum_lvi()
373 plex.name, in vinum_lvi()
374 plex_org(plex.organization), in vinum_lvi()
375 roughlength(plex.length << DEV_BSHIFT, 0)); in vinum_lvi()
380 vinum_lpi(vol.plex[plexno], 0); /* first show the plexes */ in vinum_lvi()
382 get_plex_info(&plex, vol.plex[plexno]); in vinum_lvi()
383 if (plex.subdisks > 0) { in vinum_lvi()
386 for (sdno = 0; sdno < plex.subdisks; sdno++) { in vinum_lvi()
[all …]
H A Dv.c93 struct plex plex; variable
466 get_plex_info(struct plex *plex, int index) in get_plex_info() argument
468 *(int *) plex = index; /* put in plex to hand to driver */ in get_plex_info()
469 if (ioctl(superdev, VINUM_PLEXCONFIG, plex) < 0) { in get_plex_info()
622 make_plex_dev(plex.plexno, recurse);
637 get_plex_info(&plex, plexno);
638 if (plex.state != plex_unallocated) {
642 sprintf(filename, VINUM_DIR "/plex/%s", plex.name);
646 if (plex.volno >= 0) {
647 get_volume_info(&vol, plex.volno);
[all …]
H A Dcommands.c388 for (sdno = 0; sdno < plex.subdisks; sdno++) { /* initialize each subdisk */ in initplex()
412 syslog(LOG_INFO | LOG_KERN, "plex %s initialized", plex.name); in initplex()
415 plex.name, in initplex()
588 if (plex.state == plex_up) /* already up */ in vinum_start()
589 fprintf(stderr, "%s is already up\n", plex.name); in vinum_start()
603 message->index = plex.plexno; /* pass object number */ in vinum_start()
608 for (sdno = 0; sdno < plex.subdisks; sdno++) { in vinum_start()
808 reset_plex_stats(vol.plex[plexno], recurse); in reset_volume_stats()
826 struct plex plex; in reset_plex_stats() local
830 get_plex_info(&plex, plexno); in reset_plex_stats()
[all …]
H A Dvext.h131 void get_plex_info(struct plex *plex, int index);
162 extern struct plex plex;
H A Dvinumutil.c75 if (((unsigned) state) >= STATECOUNT(plex)) { in plex_state()
152 for (i = 0; i < STATECOUNT(plex); i++) in PlexState()
256 return VOL[Volno(dev)].plex[(minor(dev) >> VINUM_PLEX_SHIFT) & (MASK(VINUM_PLEX_WIDTH))]; in Plexno()
H A Dvinumparser.c77 keypair(plex),
/dflybsd-src/games/fortune/datfiles/
H A Dlimerick3086 She could easily plex them
/dflybsd-src/share/dict/
H A Dweb2148681 plex