Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 12 Nov 2006 12:47:21 GMT
From:      Roman Divacky <rdivacky@FreeBSD.org>
To:        Perforce Change Reviews <perforce@FreeBSD.org>
Subject:   PERFORCE change 109793 for review
Message-ID:  <200611121247.kACClLSW084793@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
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); }



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200611121247.kACClLSW084793>