Lines Matching defs:ggio
86 struct g_gate_ctl_io ggio;
96 ggio.gctl_version = G_GATE_VERSION;
97 ggio.gctl_unit = unit;
99 ggio.gctl_data = malloc(bsize);
103 ggio.gctl_length = bsize;
104 ggio.gctl_error = 0;
105 g_gate_ioctl(G_GATE_CMD_START, &ggio);
106 error = ggio.gctl_error;
112 free(ggio.gctl_data);
118 assert(ggio.gctl_cmd == BIO_DELETE ||
119 ggio.gctl_cmd == BIO_WRITE);
120 ggio.gctl_data = realloc(ggio.gctl_data,
121 ggio.gctl_length);
122 if (ggio.gctl_data != NULL) {
123 bsize = ggio.gctl_length;
134 switch (ggio.gctl_cmd) {
136 if ((size_t)ggio.gctl_length > bsize) {
137 ggio.gctl_data = realloc(ggio.gctl_data,
138 ggio.gctl_length);
139 if (ggio.gctl_data != NULL)
140 bsize = ggio.gctl_length;
145 if (pread(fd, ggio.gctl_data, ggio.gctl_length,
146 ggio.gctl_offset) == -1) {
153 if (pwrite(fd, ggio.gctl_data, ggio.gctl_length,
154 ggio.gctl_offset) == -1) {
162 ggio.gctl_error = error;
163 g_gate_ioctl(G_GATE_CMD_DONE, &ggio);