Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Linux/tools/virtio/linux/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 933 B image not shown  

Quelle  uaccess.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0 */
#ifndef UACCESS_H
#define UACCESS_H

#include <linux/compiler.h>

extern void *__user_addr_min, *__user_addr_max;

#define put_user(x, ptr)     \
({        \
 typeof(ptr) __pu_ptr = (ptr);    \
 __chk_user_ptr(__pu_ptr);    \
 WRITE_ONCE(*(__pu_ptr), x);    \
 0;       \
})

#define get_user(x, ptr)     \
({        \
 typeof(ptr) __pu_ptr = (ptr);    \
 __chk_user_ptr(__pu_ptr);    \
 x = READ_ONCE(*(__pu_ptr));    \
 0;       \
})

static void volatile_memcpy(volatile char *to, const volatile char *from, 
       unsigned long n)
{
 while (n--)
  *(to++) = *(from++);
}

static inline int copy_from_user(void *to, const void __user volatile *from,
     unsigned long n)
{
 volatile_memcpy(to, from, n);
 return 0;
}

static inline int copy_to_user(void __user volatile *to, const void *from,
          unsigned long n)
{
 volatile_memcpy(to, from, n);
 return 0;
}
#endif /* UACCESS_H */

Messung V0.5
C=93 H=93 G=92

¤ Dauer der Verarbeitung: 0.2 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.