Rev 2735 | Rev 2753 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2735 | Rev 2741 | ||
---|---|---|---|
Line 173... | Line 173... | ||
173 | futex_up(&vfs_phone_futex); |
173 | futex_up(&vfs_phone_futex); |
174 | return res; |
174 | return res; |
175 | } |
175 | } |
176 | } |
176 | } |
177 | req = async_send_1(vfs_phone, VFS_READ, fildes, &answer); |
177 | req = async_send_1(vfs_phone, VFS_READ, fildes, &answer); |
178 | if (ipc_data_read_start(vfs_phone, (void *)buf, nbyte) != EOK) { |
178 | rc = ipc_data_read_start(vfs_phone, (void *)buf, nbyte); |
- | 179 | if (rc != EOK) { |
|
179 | async_wait_for(req, NULL); |
180 | async_wait_for(req, NULL); |
180 | async_serialize_end(); |
181 | async_serialize_end(); |
181 | futex_up(&vfs_phone_futex); |
182 | futex_up(&vfs_phone_futex); |
182 | return (ssize_t) rc; |
183 | return (ssize_t) rc; |
183 | } |
184 | } |
Line 206... | Line 207... | ||
206 | futex_up(&vfs_phone_futex); |
207 | futex_up(&vfs_phone_futex); |
207 | return res; |
208 | return res; |
208 | } |
209 | } |
209 | } |
210 | } |
210 | req = async_send_1(vfs_phone, VFS_WRITE, fildes, &answer); |
211 | req = async_send_1(vfs_phone, VFS_WRITE, fildes, &answer); |
211 | if (ipc_data_write_start(vfs_phone, (void *)buf, nbyte) != EOK) { |
212 | rc = ipc_data_write_start(vfs_phone, (void *)buf, nbyte); |
- | 213 | if (rc != EOK) { |
|
212 | async_wait_for(req, NULL); |
214 | async_wait_for(req, NULL); |
213 | async_serialize_end(); |
215 | async_serialize_end(); |
214 | futex_up(&vfs_phone_futex); |
216 | futex_up(&vfs_phone_futex); |
215 | return (ssize_t) rc; |
217 | return (ssize_t) rc; |
216 | } |
218 | } |