9 void stdin_pre_select(struct sched *s, struct task *t)
11 struct stdin_task *sit = t->private_data;
12 if (sit->loaded < sit->bufsize)
13 para_fd_set(STDIN_FILENO, &s->rfds, &s->max_fileno);
14 t->ret = 1; /* success */
17 void stdin_post_select(struct sched *s, struct task *t)
19 struct stdin_task *sit = t->private_data;
23 if (sit->loaded >= sit->bufsize)
25 if (!FD_ISSET(STDIN_FILENO, &s->rfds))
27 ret = read(STDIN_FILENO, sit->buf + sit->loaded, sit->bufsize - sit->loaded);
29 t->ret = -E_STDIN_READ;
38 "%p stdin reader: loaded = %d, ret = %d",
39 sit, sit->loaded, t->ret);