__get_uset_x

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



HI,
     I am a kernel newbie have been reading i386 related code.Can
anybody tell me the implementation of __get_user_x in uaccess.h. I am
not able to understand the inline assembly code. Thanks in advance

extern void __get_user_1(void);
extern void __get_user_2(void);
extern void __get_user_4(void);

#define __get_user_x(size,ret,x,ptr) \
     __asm__ __volatile__("call __get_user_" #size \
          :"=a" (ret),"=d" (x) \
          :"0" (ptr))

/* Careful: we have to cast the result to the type of the pointer for sign
reasons */
#define get_user(x,ptr)                                 \
({   int __ret_gu,__val_gu;                             \
     switch(sizeof (*(ptr))) {                          \
     case 1:  __get_user_x(1,__ret_gu,__val_gu,ptr); break;       \
     case 2:  __get_user_x(2,__ret_gu,__val_gu,ptr); break;       \
     case 4:  __get_user_x(4,__ret_gu,__val_gu,ptr); break;       \
     default: __get_user_x(X,__ret_gu,__val_gu,ptr); break;       \
     }                                        \
     (x) = (__typeof__(*(ptr)))__val_gu;                     \
     __ret_gu;                                \
})

praveen



-- 

_______________________________________________
Sign-up for your own FREE Personalized E-mail at Mail.com
http://www.mail.com/?sr=signup


1 cent a minute calls anywhere in the U.S.!

http://www.getpennytalk.com/cgi-bin/adforward.cgi?p_key=RG9853KJ&url=http://www.getpennytalk.com


--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
IRC Channel:   irc.openprojects.net / #kernelnewbies
Web Page:      http://www.kernelnewbies.org/



[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux