Lines Matching refs:dev
12 void bdev_driver(dev_t dev, char *label) in bdev_driver() argument
26 bdev_update(dev, label); in bdev_driver()
61 static int bdev_opcl(int req, dev_t dev, int bits) in bdev_opcl() argument
71 m.m_lbdev_lblockdriver_msg.minor = minor(dev); in bdev_opcl()
74 r = bdev_sendrec(dev, &m); in bdev_opcl()
80 int bdev_open(dev_t dev, int bits) in bdev_open() argument
87 r = bdev_opcl(BDEV_OPEN, dev, bits); in bdev_open()
90 bdev_minor_add(dev, bits); in bdev_open()
95 int bdev_close(dev_t dev) in bdev_close() argument
102 bdev_flush_asyn(dev); in bdev_close()
104 r = bdev_opcl(BDEV_CLOSE, dev, 0); in bdev_close()
107 bdev_minor_del(dev); in bdev_close()
112 static int bdev_rdwt_setup(int req, dev_t dev, u64_t pos, char *buf, in bdev_rdwt_setup() argument
123 if ((endpt = bdev_driver_get(dev)) == NONE) in bdev_rdwt_setup()
137 m->m_lbdev_lblockdriver_msg.minor = minor(dev); in bdev_rdwt_setup()
154 static ssize_t bdev_rdwt(int req, dev_t dev, u64_t pos, char *buf, in bdev_rdwt() argument
163 if ((r = bdev_rdwt_setup(req, dev, pos, buf, count, flags, &m)) != OK) in bdev_rdwt()
166 r = bdev_sendrec(dev, &m); in bdev_rdwt()
174 static int bdev_vrdwt_setup(int req, dev_t dev, u64_t pos, iovec_t *vec, in bdev_vrdwt_setup() argument
186 if ((endpt = bdev_driver_get(dev)) == NONE) in bdev_vrdwt_setup()
228 m->m_lbdev_lblockdriver_msg.minor = minor(dev); in bdev_vrdwt_setup()
252 static ssize_t bdev_vrdwt(int req, dev_t dev, u64_t pos, iovec_t *vec, in bdev_vrdwt() argument
262 if ((r = bdev_vrdwt_setup(req, dev, pos, vec, count, flags, &m, in bdev_vrdwt()
266 r = bdev_sendrec(dev, &m); in bdev_vrdwt()
274 ssize_t bdev_read(dev_t dev, u64_t pos, char *buf, size_t count, int flags) in bdev_read() argument
279 return bdev_rdwt(BDEV_READ, dev, pos, buf, count, flags); in bdev_read()
282 ssize_t bdev_write(dev_t dev, u64_t pos, char *buf, size_t count, int flags) in bdev_write() argument
287 return bdev_rdwt(BDEV_WRITE, dev, pos, buf, count, flags); in bdev_write()
290 ssize_t bdev_gather(dev_t dev, u64_t pos, iovec_t *vec, int count, int flags) in bdev_gather() argument
295 return bdev_vrdwt(BDEV_GATHER, dev, pos, vec, count, flags); in bdev_gather()
298 ssize_t bdev_scatter(dev_t dev, u64_t pos, iovec_t *vec, int count, int flags) in bdev_scatter() argument
303 return bdev_vrdwt(BDEV_SCATTER, dev, pos, vec, count, flags); in bdev_scatter()
306 static int bdev_ioctl_setup(dev_t dev, unsigned long request, void *buf, in bdev_ioctl_setup() argument
316 if ((endpt = bdev_driver_get(dev)) == NONE) in bdev_ioctl_setup()
338 m->m_lbdev_lblockdriver_msg.minor = minor(dev); in bdev_ioctl_setup()
354 int bdev_ioctl(dev_t dev, unsigned long request, void *buf, in bdev_ioctl() argument
363 if ((r = bdev_ioctl_setup(dev, request, buf, user_endpt, &m)) != OK) in bdev_ioctl()
366 r = bdev_sendrec(dev, &m); in bdev_ioctl()
374 void bdev_flush_asyn(dev_t dev) in bdev_flush_asyn() argument
382 while ((call = bdev_call_find(dev)) != NULL) in bdev_flush_asyn()
386 static bdev_id_t bdev_rdwt_asyn(int req, dev_t dev, u64_t pos, char *buf, in bdev_rdwt_asyn() argument
397 if ((r = bdev_rdwt_setup(req, dev, pos, buf, count, flags, &call->msg)) != in bdev_rdwt_asyn()
404 if ((r = bdev_senda(dev, &call->msg, call->id)) != OK) { in bdev_rdwt_asyn()
412 call->dev = dev; in bdev_rdwt_asyn()
423 static bdev_id_t bdev_vrdwt_asyn(int req, dev_t dev, u64_t pos, iovec_t *vec, in bdev_vrdwt_asyn() argument
434 if ((r = bdev_vrdwt_setup(req, dev, pos, vec, count, flags, &call->msg, in bdev_vrdwt_asyn()
441 if ((r = bdev_senda(dev, &call->msg, call->id)) != OK) { in bdev_vrdwt_asyn()
449 call->dev = dev; in bdev_vrdwt_asyn()
459 bdev_id_t bdev_read_asyn(dev_t dev, u64_t pos, char *buf, size_t count, in bdev_read_asyn() argument
465 return bdev_rdwt_asyn(BDEV_READ, dev, pos, buf, count, flags, callback, in bdev_read_asyn()
469 bdev_id_t bdev_write_asyn(dev_t dev, u64_t pos, char *buf, size_t count, in bdev_write_asyn() argument
475 return bdev_rdwt_asyn(BDEV_WRITE, dev, pos, buf, count, flags, callback, in bdev_write_asyn()
479 bdev_id_t bdev_gather_asyn(dev_t dev, u64_t pos, iovec_t *vec, int count, in bdev_gather_asyn() argument
485 return bdev_vrdwt_asyn(BDEV_GATHER, dev, pos, vec, count, flags, callback, in bdev_gather_asyn()
489 bdev_id_t bdev_scatter_asyn(dev_t dev, u64_t pos, iovec_t *vec, int count, in bdev_scatter_asyn() argument
495 return bdev_vrdwt_asyn(BDEV_SCATTER, dev, pos, vec, count, flags, callback, in bdev_scatter_asyn()
499 bdev_id_t bdev_ioctl_asyn(dev_t dev, unsigned long request, void *buf, in bdev_ioctl_asyn() argument
510 if ((r = bdev_ioctl_setup(dev, request, buf, user_endpt, in bdev_ioctl_asyn()
517 if ((r = bdev_senda(dev, &call->msg, call->id)) != OK) { in bdev_ioctl_asyn()
525 call->dev = dev; in bdev_ioctl_asyn()
549 result = bdev_senda(call->dev, &call->msg, call->id); in bdev_callback_asyn()
581 call->callback(call->dev, call->id, call->param, result); in bdev_callback_asyn()
606 r = bdev_rdwt_setup(type, call->dev, in bdev_restart_asyn()
617 r = bdev_vrdwt_setup(type, call->dev, in bdev_restart_asyn()
627 r = bdev_ioctl_setup(call->dev, call->msg.m_lbdev_lblockdriver_msg.request, in bdev_restart_asyn()
641 return bdev_senda(call->dev, &call->msg, call->id); in bdev_restart_asyn()