summaryrefslogtreecommitdiff
path: root/sys/compat
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2013-05-28 05:52:03 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2013-05-28 05:52:03 +0000
commit25c2525dcc13565bf8a7c0072a10926251ac3ca4 (patch)
treeb3c0f4ea4b70e9b0ab66a4f08bc0f2fa54a713f0 /sys/compat
parent6ccc1ab13ece3c04e054285e4ff9e9f0f4c497aa (diff)
Notes
Diffstat (limited to 'sys/compat')
-rw-r--r--sys/compat/freebsd32/freebsd32_proto.h56
-rw-r--r--sys/compat/freebsd32/freebsd32_syscall.h5
-rw-r--r--sys/compat/freebsd32/freebsd32_syscalls.c8
-rw-r--r--sys/compat/freebsd32/freebsd32_sysent.c8
-rw-r--r--sys/compat/freebsd32/freebsd32_systrace_args.c151
5 files changed, 214 insertions, 14 deletions
diff --git a/sys/compat/freebsd32/freebsd32_proto.h b/sys/compat/freebsd32/freebsd32_proto.h
index 11662fd0ac1f..bb4af456a23e 100644
--- a/sys/compat/freebsd32/freebsd32_proto.h
+++ b/sys/compat/freebsd32/freebsd32_proto.h
@@ -3,7 +3,7 @@
*
* DO NOT EDIT-- this file is automatically generated.
* $FreeBSD$
- * created from FreeBSD: stable/9/sys/compat/freebsd32/syscalls.master 244172 2012-12-13 06:17:05Z kib
+ * created from FreeBSD: stable/9/sys/compat/freebsd32/syscalls.master 251051 2013-05-28 05:51:00Z kib
*/
#ifndef _FREEBSD32_SYSPROTO_H_
@@ -573,8 +573,10 @@ struct freebsd32_pselect_args {
char ts_l_[PADL_(const struct timespec32 *)]; const struct timespec32 * ts; char ts_r_[PADR_(const struct timespec32 *)];
char sm_l_[PADL_(const sigset_t *)]; const sigset_t * sm; char sm_r_[PADR_(const sigset_t *)];
};
+#ifdef PAD64_REQUIRED
struct freebsd32_posix_fallocate_args {
char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
+ char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
char offset1_l_[PADL_(uint32_t)]; uint32_t offset1; char offset1_r_[PADR_(uint32_t)];
char offset2_l_[PADL_(uint32_t)]; uint32_t offset2; char offset2_r_[PADR_(uint32_t)];
char len1_l_[PADL_(uint32_t)]; uint32_t len1; char len1_r_[PADR_(uint32_t)];
@@ -582,6 +584,7 @@ struct freebsd32_posix_fallocate_args {
};
struct freebsd32_posix_fadvise_args {
char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
+ char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
char offset1_l_[PADL_(uint32_t)]; uint32_t offset1; char offset1_r_[PADR_(uint32_t)];
char offset2_l_[PADL_(uint32_t)]; uint32_t offset2; char offset2_r_[PADR_(uint32_t)];
char len1_l_[PADL_(uint32_t)]; uint32_t len1; char len1_r_[PADR_(uint32_t)];
@@ -590,12 +593,40 @@ struct freebsd32_posix_fadvise_args {
};
struct freebsd32_wait6_args {
char idtype_l_[PADL_(int)]; int idtype; char idtype_r_[PADR_(int)];
- char id_l_[PADL_(int)]; int id; char id_r_[PADR_(int)];
+ char pad_l_[PADL_(int)]; int pad; char pad_r_[PADR_(int)];
+ char id1_l_[PADL_(uint32_t)]; uint32_t id1; char id1_r_[PADR_(uint32_t)];
+ char id2_l_[PADL_(uint32_t)]; uint32_t id2; char id2_r_[PADR_(uint32_t)];
char status_l_[PADL_(int *)]; int * status; char status_r_[PADR_(int *)];
char options_l_[PADL_(int)]; int options; char options_r_[PADR_(int)];
char wrusage_l_[PADL_(struct wrusage32 *)]; struct wrusage32 * wrusage; char wrusage_r_[PADR_(struct wrusage32 *)];
char info_l_[PADL_(siginfo_t *)]; siginfo_t * info; char info_r_[PADR_(siginfo_t *)];
};
+#else
+struct freebsd32_posix_fallocate_args {
+ char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
+ char offset1_l_[PADL_(uint32_t)]; uint32_t offset1; char offset1_r_[PADR_(uint32_t)];
+ char offset2_l_[PADL_(uint32_t)]; uint32_t offset2; char offset2_r_[PADR_(uint32_t)];
+ char len1_l_[PADL_(uint32_t)]; uint32_t len1; char len1_r_[PADR_(uint32_t)];
+ char len2_l_[PADL_(uint32_t)]; uint32_t len2; char len2_r_[PADR_(uint32_t)];
+};
+struct freebsd32_posix_fadvise_args {
+ char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
+ char offset1_l_[PADL_(uint32_t)]; uint32_t offset1; char offset1_r_[PADR_(uint32_t)];
+ char offset2_l_[PADL_(uint32_t)]; uint32_t offset2; char offset2_r_[PADR_(uint32_t)];
+ char len1_l_[PADL_(uint32_t)]; uint32_t len1; char len1_r_[PADR_(uint32_t)];
+ char len2_l_[PADL_(uint32_t)]; uint32_t len2; char len2_r_[PADR_(uint32_t)];
+ char advice_l_[PADL_(int)]; int advice; char advice_r_[PADR_(int)];
+};
+struct freebsd32_wait6_args {
+ char idtype_l_[PADL_(int)]; int idtype; char idtype_r_[PADR_(int)];
+ char id1_l_[PADL_(uint32_t)]; uint32_t id1; char id1_r_[PADR_(uint32_t)];
+ char id2_l_[PADL_(uint32_t)]; uint32_t id2; char id2_r_[PADR_(uint32_t)];
+ char status_l_[PADL_(int *)]; int * status; char status_r_[PADR_(int *)];
+ char options_l_[PADL_(int)]; int options; char options_r_[PADR_(int)];
+ char wrusage_l_[PADL_(struct wrusage32 *)]; struct wrusage32 * wrusage; char wrusage_r_[PADR_(struct wrusage32 *)];
+ char info_l_[PADL_(siginfo_t *)]; siginfo_t * info; char info_r_[PADR_(siginfo_t *)];
+};
+#endif
#if !defined(PAD64_REQUIRED) && defined(__powerpc__)
#define PAD64_REQUIRED
#endif
@@ -705,9 +736,15 @@ int freebsd32_semctl(struct thread *, struct freebsd32_semctl_args *);
int freebsd32_msgctl(struct thread *, struct freebsd32_msgctl_args *);
int freebsd32_shmctl(struct thread *, struct freebsd32_shmctl_args *);
int freebsd32_pselect(struct thread *, struct freebsd32_pselect_args *);
+#ifdef PAD64_REQUIRED
+int freebsd32_posix_fallocate(struct thread *, struct freebsd32_posix_fallocate_args *);
+int freebsd32_posix_fadvise(struct thread *, struct freebsd32_posix_fadvise_args *);
+int freebsd32_wait6(struct thread *, struct freebsd32_wait6_args *);
+#else
int freebsd32_posix_fallocate(struct thread *, struct freebsd32_posix_fallocate_args *);
int freebsd32_posix_fadvise(struct thread *, struct freebsd32_posix_fadvise_args *);
int freebsd32_wait6(struct thread *, struct freebsd32_wait6_args *);
+#endif
#ifdef COMPAT_43
@@ -776,6 +813,9 @@ struct ofreebsd32_getdirentries_args {
#ifdef PAD64_REQUIRED
#else
#endif
+#ifdef PAD64_REQUIRED
+#else
+#endif
int ofreebsd32_lseek(struct thread *, struct ofreebsd32_lseek_args *);
int ofreebsd32_stat(struct thread *, struct ofreebsd32_stat_args *);
int ofreebsd32_lstat(struct thread *, struct ofreebsd32_lstat_args *);
@@ -841,6 +881,9 @@ struct freebsd4_freebsd32_sigreturn_args {
#ifdef PAD64_REQUIRED
#else
#endif
+#ifdef PAD64_REQUIRED
+#else
+#endif
int freebsd4_freebsd32_getfsstat(struct thread *, struct freebsd4_freebsd32_getfsstat_args *);
int freebsd4_freebsd32_statfs(struct thread *, struct freebsd4_freebsd32_statfs_args *);
int freebsd4_freebsd32_fstatfs(struct thread *, struct freebsd4_freebsd32_fstatfs_args *);
@@ -908,6 +951,9 @@ struct freebsd6_freebsd32_ftruncate_args {
#ifdef PAD64_REQUIRED
#else
#endif
+#ifdef PAD64_REQUIRED
+#else
+#endif
int freebsd6_freebsd32_pread(struct thread *, struct freebsd6_freebsd32_pread_args *);
int freebsd6_freebsd32_pwrite(struct thread *, struct freebsd6_freebsd32_pwrite_args *);
int freebsd6_freebsd32_mmap(struct thread *, struct freebsd6_freebsd32_mmap_args *);
@@ -945,6 +991,9 @@ struct freebsd7_freebsd32_shmctl_args {
#ifdef PAD64_REQUIRED
#else
#endif
+#ifdef PAD64_REQUIRED
+#else
+#endif
int freebsd7_freebsd32_semctl(struct thread *, struct freebsd7_freebsd32_semctl_args *);
int freebsd7_freebsd32_msgctl(struct thread *, struct freebsd7_freebsd32_msgctl_args *);
int freebsd7_freebsd32_shmctl(struct thread *, struct freebsd7_freebsd32_shmctl_args *);
@@ -1085,6 +1134,9 @@ int freebsd7_freebsd32_shmctl(struct thread *, struct freebsd7_freebsd32_shmctl_
#define FREEBSD32_SYS_AUE_freebsd32_posix_fallocate AUE_NULL
#define FREEBSD32_SYS_AUE_freebsd32_posix_fadvise AUE_NULL
#define FREEBSD32_SYS_AUE_freebsd32_wait6 AUE_WAIT6
+#define FREEBSD32_SYS_AUE_freebsd32_posix_fallocate AUE_NULL
+#define FREEBSD32_SYS_AUE_freebsd32_posix_fadvise AUE_NULL
+#define FREEBSD32_SYS_AUE_freebsd32_wait6 AUE_WAIT6
#undef PAD_
#undef PADL_
diff --git a/sys/compat/freebsd32/freebsd32_syscall.h b/sys/compat/freebsd32/freebsd32_syscall.h
index eca12fee347f..b03b69455fd4 100644
--- a/sys/compat/freebsd32/freebsd32_syscall.h
+++ b/sys/compat/freebsd32/freebsd32_syscall.h
@@ -3,7 +3,7 @@
*
* DO NOT EDIT-- this file is automatically generated.
* $FreeBSD$
- * created from FreeBSD: stable/9/sys/compat/freebsd32/syscalls.master 244172 2012-12-13 06:17:05Z kib
+ * created from FreeBSD: stable/9/sys/compat/freebsd32/syscalls.master 251051 2013-05-28 05:51:00Z kib
*/
#define FREEBSD32_SYS_syscall 0
@@ -426,4 +426,7 @@
#define FREEBSD32_SYS_freebsd32_posix_fallocate 530
#define FREEBSD32_SYS_freebsd32_posix_fadvise 531
#define FREEBSD32_SYS_freebsd32_wait6 532
+#define FREEBSD32_SYS_freebsd32_posix_fallocate 530
+#define FREEBSD32_SYS_freebsd32_posix_fadvise 531
+#define FREEBSD32_SYS_freebsd32_wait6 532
#define FREEBSD32_SYS_MAXSYSCALL 533
diff --git a/sys/compat/freebsd32/freebsd32_syscalls.c b/sys/compat/freebsd32/freebsd32_syscalls.c
index 79fba7e35841..337961ecde71 100644
--- a/sys/compat/freebsd32/freebsd32_syscalls.c
+++ b/sys/compat/freebsd32/freebsd32_syscalls.c
@@ -3,7 +3,7 @@
*
* DO NOT EDIT-- this file is automatically generated.
* $FreeBSD$
- * created from FreeBSD: stable/9/sys/compat/freebsd32/syscalls.master 244172 2012-12-13 06:17:05Z kib
+ * created from FreeBSD: stable/9/sys/compat/freebsd32/syscalls.master 251051 2013-05-28 05:51:00Z kib
*/
const char *freebsd32_syscallnames[] = {
@@ -553,7 +553,13 @@ const char *freebsd32_syscallnames[] = {
"rctl_get_limits", /* 527 = rctl_get_limits */
"rctl_add_rule", /* 528 = rctl_add_rule */
"rctl_remove_rule", /* 529 = rctl_remove_rule */
+#ifdef PAD64_REQUIRED
+ "freebsd32_posix_fallocate", /* 530 = freebsd32_posix_fallocate */
+ "freebsd32_posix_fadvise", /* 531 = freebsd32_posix_fadvise */
+ "freebsd32_wait6", /* 532 = freebsd32_wait6 */
+#else
"freebsd32_posix_fallocate", /* 530 = freebsd32_posix_fallocate */
"freebsd32_posix_fadvise", /* 531 = freebsd32_posix_fadvise */
"freebsd32_wait6", /* 532 = freebsd32_wait6 */
+#endif
};
diff --git a/sys/compat/freebsd32/freebsd32_sysent.c b/sys/compat/freebsd32/freebsd32_sysent.c
index 631c81872e23..f4ab54d2efdf 100644
--- a/sys/compat/freebsd32/freebsd32_sysent.c
+++ b/sys/compat/freebsd32/freebsd32_sysent.c
@@ -3,7 +3,7 @@
*
* DO NOT EDIT-- this file is automatically generated.
* $FreeBSD$
- * created from FreeBSD: stable/9/sys/compat/freebsd32/syscalls.master 244172 2012-12-13 06:17:05Z kib
+ * created from FreeBSD: stable/9/sys/compat/freebsd32/syscalls.master 251051 2013-05-28 05:51:00Z kib
*/
#include "opt_compat.h"
@@ -590,7 +590,13 @@ struct sysent freebsd32_sysent[] = {
{ AS(rctl_get_limits_args), (sy_call_t *)sys_rctl_get_limits, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 527 = rctl_get_limits */
{ AS(rctl_add_rule_args), (sy_call_t *)sys_rctl_add_rule, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 528 = rctl_add_rule */
{ AS(rctl_remove_rule_args), (sy_call_t *)sys_rctl_remove_rule, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 529 = rctl_remove_rule */
+#ifdef PAD64_REQUIRED
+ { AS(freebsd32_posix_fallocate_args), (sy_call_t *)freebsd32_posix_fallocate, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 530 = freebsd32_posix_fallocate */
+ { AS(freebsd32_posix_fadvise_args), (sy_call_t *)freebsd32_posix_fadvise, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 531 = freebsd32_posix_fadvise */
+ { AS(freebsd32_wait6_args), (sy_call_t *)freebsd32_wait6, AUE_WAIT6, NULL, 0, 0, 0, SY_THR_STATIC }, /* 532 = freebsd32_wait6 */
+#else
{ AS(freebsd32_posix_fallocate_args), (sy_call_t *)freebsd32_posix_fallocate, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 530 = freebsd32_posix_fallocate */
{ AS(freebsd32_posix_fadvise_args), (sy_call_t *)freebsd32_posix_fadvise, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 531 = freebsd32_posix_fadvise */
{ AS(freebsd32_wait6_args), (sy_call_t *)freebsd32_wait6, AUE_WAIT6, NULL, 0, 0, 0, SY_THR_STATIC }, /* 532 = freebsd32_wait6 */
+#endif
};
diff --git a/sys/compat/freebsd32/freebsd32_systrace_args.c b/sys/compat/freebsd32/freebsd32_systrace_args.c
index 90a43df2364c..ffca26cafeec 100644
--- a/sys/compat/freebsd32/freebsd32_systrace_args.c
+++ b/sys/compat/freebsd32/freebsd32_systrace_args.c
@@ -3023,6 +3023,47 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args)
*n_args = 4;
break;
}
+#ifdef PAD64_REQUIRED
+ /* freebsd32_posix_fallocate */
+ case 530: {
+ struct freebsd32_posix_fallocate_args *p = params;
+ iarg[0] = p->fd; /* int */
+ iarg[1] = p->pad; /* int */
+ uarg[2] = p->offset1; /* uint32_t */
+ uarg[3] = p->offset2; /* uint32_t */
+ uarg[4] = p->len1; /* uint32_t */
+ uarg[5] = p->len2; /* uint32_t */
+ *n_args = 6;
+ break;
+ }
+ /* freebsd32_posix_fadvise */
+ case 531: {
+ struct freebsd32_posix_fadvise_args *p = params;
+ iarg[0] = p->fd; /* int */
+ iarg[1] = p->pad; /* int */
+ uarg[2] = p->offset1; /* uint32_t */
+ uarg[3] = p->offset2; /* uint32_t */
+ uarg[4] = p->len1; /* uint32_t */
+ uarg[5] = p->len2; /* uint32_t */
+ iarg[6] = p->advice; /* int */
+ *n_args = 7;
+ break;
+ }
+ /* freebsd32_wait6 */
+ case 532: {
+ struct freebsd32_wait6_args *p = params;
+ iarg[0] = p->idtype; /* int */
+ iarg[1] = p->pad; /* int */
+ uarg[2] = p->id1; /* uint32_t */
+ uarg[3] = p->id2; /* uint32_t */
+ uarg[4] = (intptr_t) p->status; /* int * */
+ iarg[5] = p->options; /* int */
+ uarg[6] = (intptr_t) p->wrusage; /* struct wrusage32 * */
+ uarg[7] = (intptr_t) p->info; /* siginfo_t * */
+ *n_args = 8;
+ break;
+ }
+#else
/* freebsd32_posix_fallocate */
case 530: {
struct freebsd32_posix_fallocate_args *p = params;
@@ -3050,14 +3091,16 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args)
case 532: {
struct freebsd32_wait6_args *p = params;
iarg[0] = p->idtype; /* int */
- iarg[1] = p->id; /* int */
- uarg[2] = (intptr_t) p->status; /* int * */
- iarg[3] = p->options; /* int */
- uarg[4] = (intptr_t) p->wrusage; /* struct wrusage32 * */
- uarg[5] = (intptr_t) p->info; /* siginfo_t * */
- *n_args = 6;
+ uarg[1] = p->id1; /* uint32_t */
+ uarg[2] = p->id2; /* uint32_t */
+ uarg[3] = (intptr_t) p->status; /* int * */
+ iarg[4] = p->options; /* int */
+ uarg[5] = (intptr_t) p->wrusage; /* struct wrusage32 * */
+ uarg[6] = (intptr_t) p->info; /* siginfo_t * */
+ *n_args = 7;
break;
}
+#endif
default:
*n_args = 0;
break;
@@ -8095,6 +8138,7 @@ systrace_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)
break;
};
break;
+#ifdef PAD64_REQUIRED
/* freebsd32_posix_fallocate */
case 530:
switch(ndx) {
@@ -8102,7 +8146,7 @@ systrace_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)
p = "int";
break;
case 1:
- p = "uint32_t";
+ p = "int";
break;
case 2:
p = "uint32_t";
@@ -8113,6 +8157,9 @@ systrace_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)
case 4:
p = "uint32_t";
break;
+ case 5:
+ p = "uint32_t";
+ break;
default:
break;
};
@@ -8124,7 +8171,7 @@ systrace_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)
p = "int";
break;
case 1:
- p = "uint32_t";
+ p = "int";
break;
case 2:
p = "uint32_t";
@@ -8136,6 +8183,9 @@ systrace_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)
p = "uint32_t";
break;
case 5:
+ p = "uint32_t";
+ break;
+ case 6:
p = "int";
break;
default:
@@ -8152,21 +8202,104 @@ systrace_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)
p = "int";
break;
case 2:
+ p = "uint32_t";
+ break;
+ case 3:
+ p = "uint32_t";
+ break;
+ case 4:
p = "int *";
break;
+ case 5:
+ p = "int";
+ break;
+ case 6:
+ p = "struct wrusage32 *";
+ break;
+ case 7:
+ p = "siginfo_t *";
+ break;
+ default:
+ break;
+ };
+ break;
+#else
+ /* freebsd32_posix_fallocate */
+ case 530:
+ switch(ndx) {
+ case 0:
+ p = "int";
+ break;
+ case 1:
+ p = "uint32_t";
+ break;
+ case 2:
+ p = "uint32_t";
+ break;
+ case 3:
+ p = "uint32_t";
+ break;
+ case 4:
+ p = "uint32_t";
+ break;
+ default:
+ break;
+ };
+ break;
+ /* freebsd32_posix_fadvise */
+ case 531:
+ switch(ndx) {
+ case 0:
+ p = "int";
+ break;
+ case 1:
+ p = "uint32_t";
+ break;
+ case 2:
+ p = "uint32_t";
+ break;
case 3:
+ p = "uint32_t";
+ break;
+ case 4:
+ p = "uint32_t";
+ break;
+ case 5:
+ p = "int";
+ break;
+ default:
+ break;
+ };
+ break;
+ /* freebsd32_wait6 */
+ case 532:
+ switch(ndx) {
+ case 0:
p = "int";
break;
+ case 1:
+ p = "uint32_t";
+ break;
+ case 2:
+ p = "uint32_t";
+ break;
+ case 3:
+ p = "int *";
+ break;
case 4:
- p = "struct wrusage32 *";
+ p = "int";
break;
case 5:
+ p = "struct wrusage32 *";
+ break;
+ case 6:
p = "siginfo_t *";
break;
default:
break;
};
break;
+#endif
default:
break;
};