On 06/02/2011 07:00 PM, Tony Luck wrote: >> But there seems to be another problem. >> Why is pt_regs of type void *? >> >> gcc complains: >> In file included from include/linux/fsnotify.h:15:0, >> from include/linux/security.h:26, >> from init/main.c:32: >> include/linux/audit.h: In function ‘audit_syscall_exit’: >> include/linux/audit.h:440:17: warning: dereferencing ‘void *’ pointer >> include/linux/audit.h:440:3: error: invalid use of void expression >> include/linux/audit.h:441:21: warning: dereferencing ‘void *’ pointer >> include/linux/audit.h:441:21: error: void value not ignored as it ought to be > > Perhaps same issue on ia64 - but symptoms are different: > > CC crypto/cipher.o > In file included from include/linux/fsnotify.h:15, > from include/linux/security.h:26, > from init/do_mounts.c:8: > include/linux/audit.h: In function ‘audit_syscall_exit’: > include/linux/audit.h:440: warning: dereferencing ‘void *’ pointer > include/linux/audit.h:440: error: request for member ‘r10’ in > something not a structure or union > include/linux/audit.h:441: error: request for member ‘r10’ in > something not a structure or union > include/linux/audit.h:441: error: request for member ‘r8’ in something > not a structure or union > include/linux/audit.h:441: error: request for member ‘r8’ in something > not a structure or union > include/linux/audit.h:441: error: expected ‘;’ before ‘}’ token > include/linux/audit.h:441: error: void value not ignored as it ought to be I think it is the same problem. I'll redo the patch with typed static inlines instead of #defines and all of this should hopefully work out. -Eric