Introduce lttng_copy_from_user_check_nofault
[lttng-modules.git] / lib / ringbuffer / backend.h
index d811911020d10f0b9d32e9cfaa3ce18a4ad0ae70..46dcf1ccd9053443c4d00a743f5e1d19b2aa9ddb 100644 (file)
@@ -22,6 +22,7 @@
 #include <linux/fs.h>
 #include <linux/mm.h>
 #include <wrapper/uaccess.h>
+#include <probes/lttng-probe-user.h>
 
 /* Internal helpers */
 #include <wrapper/ringbuffer/backend_internal.h>
@@ -313,7 +314,7 @@ fill_buffer:
         * the pollution of static inline code.
         */
        _lib_ring_buffer_memset(bufb, offset, 0, len, 0);
-       ctx->priv.buf_offset += len;
+       ctx->buf_offset += len;
 }
 
 /**
@@ -396,7 +397,7 @@ fill_buffer:
        _lib_ring_buffer_memset(bufb, offset, pad, len - 1, 0);
        offset += len - 1;
        _lib_ring_buffer_memset(bufb, offset, '\0', 1, 0);
-       ctx->priv.buf_offset += len;
+       ctx->buf_offset += len;
 }
 
 /*
@@ -440,14 +441,7 @@ unsigned long lib_ring_buffer_copy_from_user_check_nofault(void *dest,
                                                const void __user *src,
                                                unsigned long len)
 {
-       unsigned long ret;
-
-       if (!lttng_access_ok(VERIFY_READ, src, len))
-               return 1;
-       pagefault_disable();
-       ret = __copy_from_user_inatomic(dest, src, len);
-       pagefault_enable();
-       return ret;
+       return lttng_copy_from_user_check_nofault(dest, src, len);
 }
 
 #endif /* _LIB_RING_BUFFER_BACKEND_H */
This page took 0.02492 seconds and 4 git commands to generate.