X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=vss.c;fp=vss.c;h=23b64abbc2429d9b8a9baaa45e0ee16d881800e2;hb=181beb316afad036ac01a778544c5dec0a8d51c7;hp=f9bf57b5575a7348fa5b5bb8a2db3c446d9dd92c;hpb=810be60c845379bbe21c49c17139da02778b99e7;p=paraslash.git diff --git a/vss.c b/vss.c index f9bf57b5..23b64abb 100644 --- a/vss.c +++ b/vss.c @@ -950,13 +950,13 @@ static int recv_afs_msg(int afs_socket, int *fd, uint32_t *code, uint32_t *data) #define MAP_POPULATE 0 #endif -static void recv_afs_result(struct vss_task *vsst, fd_set *rfds) +static void recv_afs_result(struct vss_task *vsst, const struct sched *s) { int ret, passed_fd, shmid; uint32_t afs_code = 0, afs_data = 0; struct stat statbuf; - if (!FD_ISSET(vsst->afs_socket, rfds)) + if (!sched_read_ok(vsst->afs_socket, s)) return; ret = recv_afs_msg(vsst->afs_socket, &passed_fd, &afs_code, &afs_data); if (ret == -ERRNO_TO_PARA_ERROR(EAGAIN)) @@ -1137,8 +1137,8 @@ static int vss_post_select(struct sched *s, void *context) mmd->sender_cmd_data.cmd_num = -1; } if (vsst->afsss != AFS_SOCKET_CHECK_FOR_WRITE) - recv_afs_result(vsst, &s->rfds); - else if (FD_ISSET(vsst->afs_socket, &s->wfds)) { + recv_afs_result(vsst, s); + else if (sched_write_ok(vsst->afs_socket, s)) { PARA_INFO_LOG("requesting new fd from afs\n"); ret = write_buffer(vsst->afs_socket, "new"); if (ret < 0)