Index: uspace/lib/usbhost/include/usb/host/batch.h
===================================================================
--- uspace/lib/usbhost/include/usb/host/batch.h	(revision 620c710af8ea806f074c8dc9ea391400b6b82226)
+++ uspace/lib/usbhost/include/usb/host/batch.h	(revision 96e2d012578e18a483c12bb39e99a208a1ed7a38)
@@ -91,9 +91,33 @@
 );
 
-void usb_transfer_batch_call_in_and_dispose(usb_transfer_batch_t *instance);
-void usb_transfer_batch_call_out_and_dispose(usb_transfer_batch_t *instance);
 void usb_transfer_batch_finish(usb_transfer_batch_t *instance);
+void usb_transfer_batch_call_in(usb_transfer_batch_t *instance);
+void usb_transfer_batch_call_out(usb_transfer_batch_t *instance);
 void usb_transfer_batch_dispose(usb_transfer_batch_t *instance);
 
+/** Helper function, calls callback and correctly destroys batch structure.
+ *
+ * @param[in] instance Batch structure to use.
+ */
+static inline void usb_transfer_batch_call_in_and_dispose(
+    usb_transfer_batch_t *instance)
+{
+	assert(instance);
+	usb_transfer_batch_call_in(instance);
+	usb_transfer_batch_dispose(instance);
+}
+/*----------------------------------------------------------------------------*/
+/** Helper function calls callback and correctly destroys batch structure.
+ *
+ * @param[in] instance Batch structure to use.
+ */
+static inline void usb_transfer_batch_call_out_and_dispose(
+    usb_transfer_batch_t *instance)
+{
+	assert(instance);
+	usb_transfer_batch_call_out(instance);
+	usb_transfer_batch_dispose(instance);
+}
+/*----------------------------------------------------------------------------*/
 static inline void usb_transfer_batch_finish_error(
     usb_transfer_batch_t *instance, int error)
@@ -103,5 +127,5 @@
 	usb_transfer_batch_finish(instance);
 }
-
+/*----------------------------------------------------------------------------*/
 static inline usb_transfer_batch_t *usb_transfer_batch_from_link(link_t *l)
 {
