[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[commits] r6018 - in /fsf/glibc-2_8-branch/ports: ./ sysdeps/unix/sysv/linux/arm/ sysdeps/unix/sysv/linux/arm/bits/ sysdeps/unix/sysv/...



Author: eglibc
Date: Mon Apr 21 12:33:10 2008
New Revision: 6018

Log:
Import glibc-ports-2.8 for 2008-04-21

Added:
    fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/arm/bits/shm.h
Removed:
    fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/mips/xmknod.c
Modified:
    fsf/glibc-2_8-branch/ports/ChangeLog.arm
    fsf/glibc-2_8-branch/ports/ChangeLog.hppa
    fsf/glibc-2_8-branch/ports/ChangeLog.mips
    fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/arm/check_pf.c
    fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/arm/ioperm.c
    fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h
    fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/hppa/bits/shm.h
    fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/mips/bits/shm.h

Modified: fsf/glibc-2_8-branch/ports/ChangeLog.arm
==============================================================================
--- fsf/glibc-2_8-branch/ports/ChangeLog.arm (original)
+++ fsf/glibc-2_8-branch/ports/ChangeLog.arm Mon Apr 21 12:33:10 2008
@@ -1,3 +1,21 @@
+2008-04-21  Daniel Jacobowitz  <dan@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/arm/check_pf.c: Update from generic
+	version.
+
+2008-04-21  Khem Raj  <kraj@xxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/arm/ioperm.c: Don't include asm/page.h.
+
+2008-04-21  Mike Frysinger  <vapier@xxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h (DOCARGS_6,
+	UNDOCARGS_6): Define.
+
+2008-04-21  Khem Raj  <kraj@xxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/arm/bits/shm.h: New file.
+
 2008-04-11  Paul Brook  <paul@xxxxxxxxxxxxxxxx>
 	    Sandra Loosemore  <sandra@xxxxxxxxxxxxxxxx>
 

Modified: fsf/glibc-2_8-branch/ports/ChangeLog.hppa
==============================================================================
--- fsf/glibc-2_8-branch/ports/ChangeLog.hppa (original)
+++ fsf/glibc-2_8-branch/ports/ChangeLog.hppa Mon Apr 21 12:33:10 2008
@@ -1,3 +1,8 @@
+2008-04-21  Daniel Jacobowitz  <dan@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/hppa/bits/shm.h: Fix comment describing
+	shmid_ds.
+
 2008-04-04  Carlos O'Donell  <carlos@xxxxxxxxxxxxxxxx>
 
 	* sysdeps/unix/sysv/linux/hppa/bits/atomic.h: Remove

Modified: fsf/glibc-2_8-branch/ports/ChangeLog.mips
==============================================================================
--- fsf/glibc-2_8-branch/ports/ChangeLog.mips (original)
+++ fsf/glibc-2_8-branch/ports/ChangeLog.mips Mon Apr 21 12:33:10 2008
@@ -1,3 +1,12 @@
+2008-04-21  Daniel Jacobowitz  <dan@xxxxxxxxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/mips/bits/shm.h: Fix comment describing
+	shmid_ds.
+
+2008-04-21  Khem Raj  <kraj@xxxxxxxxxx>
+
+	* sysdeps/unix/sysv/linux/mips/xmknod.c: Delete file.
+
 2008-04-02  Aurelien Jarno  <aurelien@xxxxxxxxxxx>
 
 	* sysdeps/unix/sysv/linux/mips/mips64/n32/syscalls.list: Add 

Added: fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/arm/bits/shm.h
==============================================================================
--- fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/arm/bits/shm.h (added)
+++ fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/arm/bits/shm.h Mon Apr 21 12:33:10 2008
@@ -1,0 +1,104 @@
+/* Copyright (C) 1995,1996,1997,2000,2002,2004,2008
+   Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#ifndef _SYS_SHM_H
+# error "Never include <bits/shm.h> directly; use <sys/shm.h> instead."
+#endif
+
+#include <bits/types.h>
+
+/* Permission flag for shmget.  */
+#define SHM_R		0400		/* or S_IRUGO from <linux/stat.h> */
+#define SHM_W		0200		/* or S_IWUGO from <linux/stat.h> */
+
+/* Flags for `shmat'.  */
+#define SHM_RDONLY	010000		/* attach read-only else read-write */
+#define SHM_RND		020000		/* round attach address to SHMLBA */
+#define SHM_REMAP	040000		/* take-over region on attach */
+
+/* Commands for `shmctl'.  */
+#define SHM_LOCK	11		/* lock segment (root only) */
+#define SHM_UNLOCK	12		/* unlock segment (root only) */
+
+__BEGIN_DECLS
+
+/* Segment low boundary address multiple.  */
+#define SHMLBA		(__getpagesize () << 2)
+extern int __getpagesize (void) __THROW __attribute__ ((__const__));
+
+
+/* Type to count number of attaches.  */
+typedef unsigned long int shmatt_t;
+
+/* Data structure describing a shared memory segment.  */
+struct shmid_ds
+  {
+    struct ipc_perm shm_perm;		/* operation permission struct */
+    size_t shm_segsz;			/* size of segment in bytes */
+    __time_t shm_atime;			/* time of last shmat() */
+    unsigned long int __unused1;
+    __time_t shm_dtime;			/* time of last shmdt() */
+    unsigned long int __unused2;
+    __time_t shm_ctime;			/* time of last change by shmctl() */
+    unsigned long int __unused3;
+    __pid_t shm_cpid;			/* pid of creator */
+    __pid_t shm_lpid;			/* pid of last shmop */
+    shmatt_t shm_nattch;		/* number of current attaches */
+    unsigned long int __unused4;
+    unsigned long int __unused5;
+  };
+
+#ifdef __USE_MISC
+
+/* ipcs ctl commands */
+# define SHM_STAT 	13
+# define SHM_INFO 	14
+
+/* shm_mode upper byte flags */
+# define SHM_DEST	01000	/* segment will be destroyed on last detach */
+# define SHM_LOCKED	02000   /* segment will not be swapped */
+# define SHM_HUGETLB	04000	/* segment is mapped via hugetlb */
+# define SHM_NORESERVE	010000	/* don't check for reservations */
+
+struct	shminfo
+  {
+    unsigned long int shmmax;
+    unsigned long int shmmin;
+    unsigned long int shmmni;
+    unsigned long int shmseg;
+    unsigned long int shmall;
+    unsigned long int __unused1;
+    unsigned long int __unused2;
+    unsigned long int __unused3;
+    unsigned long int __unused4;
+  };
+
+struct shm_info
+  {
+    int used_ids;
+    unsigned long int shm_tot;	/* total allocated shm */
+    unsigned long int shm_rss;	/* total resident shm */
+    unsigned long int shm_swp;	/* total swapped shm */
+    unsigned long int swap_attempts;
+    unsigned long int swap_successes;
+  };
+
+#endif /* __USE_MISC */
+
+__END_DECLS

Modified: fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/arm/check_pf.c
==============================================================================
--- fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/arm/check_pf.c (original)
+++ fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/arm/check_pf.c Mon Apr 21 12:33:10 2008
@@ -1,5 +1,5 @@
 /* Determine protocol families for which interfaces exist.  Linux version.
-   Copyright (C) 2003, 2006, 2007 Free Software Foundation, Inc.
+   Copyright (C) 2003, 2006, 2007, 2008 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -35,11 +35,11 @@
 #include <kernel-features.h>
 
 
-#ifndef IFA_F_TEMPORARY
-# define IFA_F_TEMPORARY IFA_F_SECONDARY
-#endif
 #ifndef IFA_F_HOMEADDRESS
 # define IFA_F_HOMEADDRESS 0
+#endif
+#ifndef IFA_F_OPTIMISTIC
+# define IFA_F_OPTIMISTIC 0
 #endif
 
 
@@ -140,89 +140,67 @@
 	      struct rtattr *rta = IFA_RTA (ifam);
 	      size_t len = nlmh->nlmsg_len - NLMSG_LENGTH (sizeof (*ifam));
 
-	      switch (ifam->ifa_family)
+	      if (ifam->ifa_family != AF_INET
+		  && ifam->ifa_family != AF_INET6)
+		continue;
+
+	      const void *local = NULL;
+	      const void *address = NULL;
+	      while (RTA_OK (rta, len))
 		{
-		  const void *local;
-		  const void *address;
-
-		case AF_INET:
-		  local = NULL;
-		  address = NULL;
-		  while (RTA_OK (rta, len))
+		  switch (rta->rta_type)
 		    {
-		      switch (rta->rta_type)
-			{
-			case IFA_LOCAL:
-			  local = RTA_DATA (rta);
-			  break;
-
-			case IFA_ADDRESS:
-			  address = RTA_DATA (rta);
-			  goto out_v4;
-			}
-
-		      rta = RTA_NEXT (rta, len);
+		    case IFA_LOCAL:
+		      local = RTA_DATA (rta);
+		      break;
+
+		    case IFA_ADDRESS:
+		      address = RTA_DATA (rta);
+		      goto out;
 		    }
 
-		  if (local != NULL)
+		  rta = RTA_NEXT (rta, len);
+		}
+
+	      if (local != NULL)
+		{
+		  address = local;
+		out:
+		  if (ifam->ifa_family == AF_INET)
 		    {
-		    out_v4:
-		      if (*(const in_addr_t *) (address ?: local)
+		      if (*(const in_addr_t *) address
 			  != htonl (INADDR_LOOPBACK))
 			*seen_ipv4 = true;
 		    }
-		  break;
-
-		case AF_INET6:
-		  local = NULL;
-		  address = NULL;
-		  while (RTA_OK (rta, len))
+		  else
 		    {
-		      switch (rta->rta_type)
-			{
-			case IFA_LOCAL:
-			  local = RTA_DATA (rta);
-			  break;
-
-			case IFA_ADDRESS:
-			  address = RTA_DATA (rta);
-			  goto out_v6;
-			}
-
-		      rta = RTA_NEXT (rta, len);
-		    }
-
-		  if (local != NULL)
-		    {
-		    out_v6:
-		      if (!IN6_IS_ADDR_LOOPBACK (address ?: local))
+		      if (!IN6_IS_ADDR_LOOPBACK (address))
 			*seen_ipv6 = true;
 		    }
-
-		  if (ifam->ifa_flags & (IFA_F_DEPRECATED
-					 | IFA_F_TEMPORARY
-					 | IFA_F_HOMEADDRESS))
-		    {
-		      struct in6ailist *newp = alloca (sizeof (*newp));
-		      newp->info.flags = (((ifam->ifa_flags & IFA_F_DEPRECATED)
-					   ? in6ai_deprecated : 0)
-					  | ((ifam->ifa_flags
-					      & IFA_F_TEMPORARY)
-					     ? in6ai_temporary : 0)
-					  | ((ifam->ifa_flags
-					      & IFA_F_HOMEADDRESS)
-					     ? in6ai_homeaddress : 0));
-		      memcpy (newp->info.addr, address ?: local,
-			      sizeof (newp->info.addr));
-		      newp->next = in6ailist;
-		      in6ailist = newp;
-		      ++in6ailistlen;
-		    }
-		  break;
-		default:
-		  /* Ignore.  */
-		  break;
 		}
+
+	      struct in6ailist *newp = alloca (sizeof (*newp));
+	      newp->info.flags = (((ifam->ifa_flags
+				    & (IFA_F_DEPRECATED
+				       | IFA_F_OPTIMISTIC))
+				   ? in6ai_deprecated : 0)
+				  | ((ifam->ifa_flags
+				      & IFA_F_HOMEADDRESS)
+				     ? in6ai_homeaddress : 0));
+	      newp->info.prefixlen = ifam->ifa_prefixlen;
+	      newp->info.index = ifam->ifa_index;
+	      if (ifam->ifa_family == AF_INET)
+		{
+		  newp->info.addr[0] = 0;
+		  newp->info.addr[1] = 0;
+		  newp->info.addr[2] = htonl (0xffff);
+		  newp->info.addr[3] = *(const in_addr_t *) address;
+		}
+	      else
+		memcpy (newp->info.addr, address, sizeof (newp->info.addr));
+	      newp->next = in6ailist;
+	      in6ailist = newp;
+	      ++in6ailistlen;
 	    }
 	  else if (nlmh->nlmsg_type == NLMSG_DONE)
 	    /* We found the end, leave the loop.  */

Modified: fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/arm/ioperm.c
==============================================================================
--- fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/arm/ioperm.c (original)
+++ fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/arm/ioperm.c Mon Apr 21 12:33:10 2008
@@ -45,7 +45,6 @@
 #include <sys/mman.h>
 
 #include <linux/version.h>
-#include <asm/page.h>
 #include <sys/sysctl.h>
 
 #define PATH_ARM_SYSTYPE	"/etc/arm_systype"

Modified: fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h
==============================================================================
--- fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h (original)
+++ fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/arm/nptl/sysdep-cancel.h Mon Apr 21 12:33:10 2008
@@ -73,6 +73,9 @@
 # define DOCARGS_5	DOCARGS_4
 # define UNDOCARGS_5	UNDOCARGS_4
 
+# define DOCARGS_6	DOCARGS_5
+# define UNDOCARGS_6	UNDOCARGS_5
+
 # ifdef IS_IN_libpthread
 #  define CENABLE	bl PLTJMP(__pthread_enable_asynccancel)
 #  define CDISABLE	bl PLTJMP(__pthread_disable_asynccancel)

Modified: fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/hppa/bits/shm.h
==============================================================================
--- fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/hppa/bits/shm.h (original)
+++ fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/hppa/bits/shm.h Mon Apr 21 12:33:10 2008
@@ -42,7 +42,7 @@
 /* Type to count number of attaches.  */
 typedef unsigned long int shmatt_t;
 
-/* Data structure describing a set of semaphores.  */
+/* Data structure describing a shared memory segment.  */
 struct shmid_ds
   {
     struct ipc_perm shm_perm;		/* operation permission struct */

Modified: fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/mips/bits/shm.h
==============================================================================
--- fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/mips/bits/shm.h (original)
+++ fsf/glibc-2_8-branch/ports/sysdeps/unix/sysv/linux/mips/bits/shm.h Mon Apr 21 12:33:10 2008
@@ -42,7 +42,7 @@
 /* Type to count number of attaches.  */
 typedef unsigned long int shmatt_t;
 
-/* Data structure describing a set of semaphores.  */
+/* Data structure describing a shared memory segment.  */
 struct shmid_ds
   {
     struct ipc_perm shm_perm;		/* operation permission struct */