Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 10 Sep 2009 08:33:28 +0000 (UTC)
From:      Dag-Erling Smorgrav <des@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r197057 - in head/sys: compat/freebsd32 sys
Message-ID:  <200909100833.n8A8XSIc011874@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: des
Date: Thu Sep 10 08:33:28 2009
New Revision: 197057
URL: http://svn.freebsd.org/changeset/base/197057

Log:
  If a certain feature that was present in FreeBSD 7 was removed or changed in
  FreeBSD 8, the compatibility shims should be built not just when FreeBSD 7
  compatibility is requested, but also when compatibility with any older
  FreeBSD version where that feature was present is requested.o
  
  Without this patch, a kernel config that sets COMPAT_FREEBSD6 but not *7
  would fail to build due to inconsistencies between the declaration of the
  compatibility shims and their use in the SysV code.
  
  There are similar errors in other *proto.h headers in the tree.
  
  MFC after:	3 weeks

Modified:
  head/sys/compat/freebsd32/freebsd32_proto.h
  head/sys/sys/sysproto.h

Modified: head/sys/compat/freebsd32/freebsd32_proto.h
==============================================================================
--- head/sys/compat/freebsd32/freebsd32_proto.h	Thu Sep 10 07:37:36 2009	(r197056)
+++ head/sys/compat/freebsd32/freebsd32_proto.h	Thu Sep 10 08:33:28 2009	(r197057)
@@ -626,7 +626,8 @@ int	freebsd4_freebsd32_sigreturn(struct 
 #endif /* COMPAT_FREEBSD4 */
 
 
-#ifdef COMPAT_FREEBSD6
+#if defined(COMPAT_FREEBSD4) || defined(COMPAT_FREEBSD5) || \
+	defined(COMPAT_FREEBSD6)
 
 struct freebsd6_freebsd32_pread_args {
 	char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
@@ -680,10 +681,11 @@ int	freebsd6_freebsd32_lseek(struct thre
 int	freebsd6_freebsd32_truncate(struct thread *, struct freebsd6_freebsd32_truncate_args *);
 int	freebsd6_freebsd32_ftruncate(struct thread *, struct freebsd6_freebsd32_ftruncate_args *);
 
-#endif /* COMPAT_FREEBSD6 */
+#endif /* COMPAT_FREEBSD[456] */
 
 
-#ifdef COMPAT_FREEBSD7
+#if defined(COMPAT_FREEBSD4) || defined(COMPAT_FREEBSD5) || \
+	defined(COMPAT_FREEBSD6) || defined(COMPAT_FREEBSD7)
 
 struct freebsd7_freebsd32_semctl_args {
 	char semid_l_[PADL_(int)]; int semid; char semid_r_[PADR_(int)];
@@ -705,7 +707,7 @@ int	freebsd7_freebsd32_semctl(struct thr
 int	freebsd7_freebsd32_msgctl(struct thread *, struct freebsd7_freebsd32_msgctl_args *);
 int	freebsd7_freebsd32_shmctl(struct thread *, struct freebsd7_freebsd32_shmctl_args *);
 
-#endif /* COMPAT_FREEBSD7 */
+#endif /* COMPAT_FREEBSD[4567] */
 
 #define	FREEBSD32_SYS_AUE_freebsd32_wait4	AUE_WAIT4
 #define	FREEBSD32_SYS_AUE_freebsd4_freebsd32_getfsstat	AUE_GETFSSTAT

Modified: head/sys/sys/sysproto.h
==============================================================================
--- head/sys/sys/sysproto.h	Thu Sep 10 07:37:36 2009	(r197056)
+++ head/sys/sys/sysproto.h	Thu Sep 10 08:33:28 2009	(r197057)
@@ -2233,13 +2233,21 @@ int	freebsd4_sigreturn(struct thread *, 
 #endif /* COMPAT_FREEBSD4 */
 
 
-#ifdef COMPAT_FREEBSD6
+#if defined(COMPAT_FREEBSD4) || defined(COMPAT_FREEBSD5)
 
 
-#endif /* COMPAT_FREEBSD6 */
+#endif /* COMPAT_FREEBSD[45] */
 
 
-#ifdef COMPAT_FREEBSD7
+#if defined(COMPAT_FREEBSD4) || defined(COMPAT_FREEBSD5) || \
+	defined(COMPAT_FREEBSD6)
+
+
+#endif /* COMPAT_FREEBSD[456] */
+
+
+#if defined(COMPAT_FREEBSD4) || defined(COMPAT_FREEBSD5) || \
+	defined(COMPAT_FREEBSD6) || defined(COMPAT_FREEBSD7)
 
 struct freebsd7___semctl_args {
 	char semid_l_[PADL_(int)]; int semid; char semid_r_[PADR_(int)];
@@ -2261,7 +2269,7 @@ int	freebsd7___semctl(struct thread *, s
 int	freebsd7_msgctl(struct thread *, struct freebsd7_msgctl_args *);
 int	freebsd7_shmctl(struct thread *, struct freebsd7_shmctl_args *);
 
-#endif /* COMPAT_FREEBSD7 */
+#endif /* COMPAT_FREEBSD[4567] */
 
 #define	SYS_AUE_syscall	AUE_NULL
 #define	SYS_AUE_exit	AUE_EXIT



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