From owner-p4-projects@FreeBSD.ORG Sun Nov 12 12:47:22 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A859A16A415; Sun, 12 Nov 2006 12:47:22 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4E0A116A40F for ; Sun, 12 Nov 2006 12:47:22 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EBFF643D5E for ; Sun, 12 Nov 2006 12:47:21 +0000 (GMT) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id kACClLFf084797 for ; Sun, 12 Nov 2006 12:47:21 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id kACClLSW084793 for perforce@freebsd.org; Sun, 12 Nov 2006 12:47:21 GMT (envelope-from rdivacky@FreeBSD.org) Date: Sun, 12 Nov 2006 12:47:21 GMT Message-Id: <200611121247.kACClLSW084793@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 109793 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Nov 2006 12:47:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=109793 Change 109793 by rdivacky@rdivacky_witten on 2006/11/12 12:46:38 Add stubs for upcoming sendfile implementation. Affected files ... .. //depot/projects/linuxolator/src/sys/amd64/linux32/linux32_dummy.c#5 edit .. //depot/projects/linuxolator/src/sys/amd64/linux32/linux32_proto.h#13 edit .. //depot/projects/linuxolator/src/sys/amd64/linux32/linux32_syscall.h#13 edit .. //depot/projects/linuxolator/src/sys/amd64/linux32/linux32_sysent.c#12 edit .. //depot/projects/linuxolator/src/sys/amd64/linux32/syscalls.master#12 edit .. //depot/projects/linuxolator/src/sys/compat/linux/linux_socket.c#9 edit .. //depot/projects/linuxolator/src/sys/i386/linux/linux_dummy.c#5 edit .. //depot/projects/linuxolator/src/sys/i386/linux/linux_proto.h#13 edit .. //depot/projects/linuxolator/src/sys/i386/linux/linux_syscall.h#12 edit .. //depot/projects/linuxolator/src/sys/i386/linux/linux_sysent.c#12 edit .. //depot/projects/linuxolator/src/sys/i386/linux/syscalls.master#11 edit Differences ... ==== //depot/projects/linuxolator/src/sys/amd64/linux32/linux32_dummy.c#5 (text+ko) ==== @@ -56,7 +56,6 @@ DUMMY(rt_sigqueueinfo); DUMMY(capget); DUMMY(capset); -DUMMY(sendfile); DUMMY(truncate64); DUMMY(setfsuid); DUMMY(setfsgid); ==== //depot/projects/linuxolator/src/sys/amd64/linux32/linux32_proto.h#13 (text+ko) ==== @@ -594,7 +594,10 @@ char uoss_l_[PADL_(l_stack_t *)]; l_stack_t * uoss; char uoss_r_[PADR_(l_stack_t *)]; }; struct linux_sendfile_args { - register_t dummy; + char out_l_[PADL_(int)]; int out; char out_r_[PADR_(int)]; + char in_l_[PADL_(int)]; int in; char in_r_[PADR_(int)]; + char offset_l_[PADL_(l_long *)]; l_long * offset; char offset_r_[PADR_(l_long *)]; + char count_l_[PADL_(l_size_t)]; l_size_t count; char count_r_[PADR_(l_size_t)]; }; struct linux_vfork_args { register_t dummy; ==== //depot/projects/linuxolator/src/sys/amd64/linux32/linux32_syscall.h#13 (text+ko) ==== ==== //depot/projects/linuxolator/src/sys/amd64/linux32/linux32_sysent.c#12 (text+ko) ==== @@ -207,7 +207,7 @@ { 0, (sy_call_t *)linux_capget, AUE_CAPGET, NULL, 0, 0 }, /* 184 = linux_capget */ { 0, (sy_call_t *)linux_capset, AUE_CAPSET, NULL, 0, 0 }, /* 185 = linux_capset */ { AS(linux_sigaltstack_args), (sy_call_t *)linux_sigaltstack, AUE_NULL, NULL, 0, 0 }, /* 186 = linux_sigaltstack */ - { 0, (sy_call_t *)linux_sendfile, AUE_SENDFILE, NULL, 0, 0 }, /* 187 = linux_sendfile */ + { AS(linux_sendfile_args), (sy_call_t *)linux_sendfile, AUE_SENDFILE, NULL, 0, 0 }, /* 187 = linux_sendfile */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 188 = getpmsg */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 189 = putpmsg */ { 0, (sy_call_t *)linux_vfork, AUE_VFORK, NULL, 0, 0 }, /* 190 = linux_vfork */ ==== //depot/projects/linuxolator/src/sys/amd64/linux32/syscalls.master#12 (text+ko) ==== @@ -330,7 +330,8 @@ 185 AUE_CAPSET STD { int linux_capset(void); } 186 AUE_NULL STD { int linux_sigaltstack(l_stack_t *uss, \ l_stack_t *uoss); } -187 AUE_SENDFILE STD { int linux_sendfile(void); } +187 AUE_SENDFILE STD { int linux_sendfile(int out, int in, l_long *offset, \ + l_size_t count); } 188 AUE_GETPMSG UNIMPL getpmsg 189 AUE_PUTPMSG UNIMPL putpmsg 190 AUE_VFORK STD { int linux_vfork(void); } ==== //depot/projects/linuxolator/src/sys/compat/linux/linux_socket.c#9 (text+ko) ==== @@ -1298,3 +1298,9 @@ uprintf("LINUX: 'socket' typ=%d not implemented\n", args->what); return (ENOSYS); } + +int +linux_sendfile(struct thread *td, struct linux_sendfile_args *args) +{ + return (ENOSYS); +} ==== //depot/projects/linuxolator/src/sys/i386/linux/linux_dummy.c#5 (text+ko) ==== @@ -59,7 +59,6 @@ DUMMY(rt_sigqueueinfo); DUMMY(capget); DUMMY(capset); -DUMMY(sendfile); /* different semantics */ DUMMY(truncate64); DUMMY(setfsuid); DUMMY(setfsgid); ==== //depot/projects/linuxolator/src/sys/i386/linux/linux_proto.h#13 (text+ko) ==== @@ -589,7 +589,10 @@ char uoss_l_[PADL_(l_stack_t *)]; l_stack_t * uoss; char uoss_r_[PADR_(l_stack_t *)]; }; struct linux_sendfile_args { - register_t dummy; + char out_l_[PADL_(int)]; int out; char out_r_[PADR_(int)]; + char in_l_[PADL_(int)]; int in; char in_r_[PADR_(int)]; + char offset_l_[PADL_(l_long *)]; l_long * offset; char offset_r_[PADR_(l_long *)]; + char count_l_[PADL_(l_size_t)]; l_size_t count; char count_r_[PADR_(l_size_t)]; }; struct linux_vfork_args { register_t dummy; ==== //depot/projects/linuxolator/src/sys/i386/linux/linux_syscall.h#12 (text+ko) ==== ==== //depot/projects/linuxolator/src/sys/i386/linux/linux_sysent.c#12 (text+ko) ==== @@ -206,7 +206,7 @@ { 0, (sy_call_t *)linux_capget, AUE_CAPGET, NULL, 0, 0 }, /* 184 = linux_capget */ { 0, (sy_call_t *)linux_capset, AUE_CAPSET, NULL, 0, 0 }, /* 185 = linux_capset */ { AS(linux_sigaltstack_args), (sy_call_t *)linux_sigaltstack, AUE_NULL, NULL, 0, 0 }, /* 186 = linux_sigaltstack */ - { 0, (sy_call_t *)linux_sendfile, AUE_SENDFILE, NULL, 0, 0 }, /* 187 = linux_sendfile */ + { AS(linux_sendfile_args), (sy_call_t *)linux_sendfile, AUE_SENDFILE, NULL, 0, 0 }, /* 187 = linux_sendfile */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 188 = getpmsg */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 189 = putpmsg */ { 0, (sy_call_t *)linux_vfork, AUE_VFORK, NULL, 0, 0 }, /* 190 = linux_vfork */ ==== //depot/projects/linuxolator/src/sys/i386/linux/syscalls.master#11 (text+ko) ==== @@ -333,7 +333,8 @@ 185 AUE_CAPSET STD { int linux_capset(void); } 186 AUE_NULL STD { int linux_sigaltstack(l_stack_t *uss, \ l_stack_t *uoss); } -187 AUE_SENDFILE STD { int linux_sendfile(void); } +187 AUE_SENDFILE STD { int linux_sendfile(int out, int in, l_long *offset, \ + l_size_t count); } 188 AUE_GETPMSG UNIMPL getpmsg 189 AUE_PUTPMSG UNIMPL putpmsg 190 AUE_VFORK STD { int linux_vfork(void); }