This is the mail archive of the libc-alpha@sources.redhat.com mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Synch with 2.4.0-test9 && note for port maintainers about fcntl64



Linux 2.4.0-test9-pre4 has correct constants for the F_*64 flags on
powerpc - but still not fcntl64 call :-(.  

fcntl64 is so far only correctly implemented on the following 32 bit
systems: i386 and Sparc.  Port maintainers for Arm, SH, S390, PowerPC
and MIPS, please send patches to Linus to add a fcntl64 syscall with
the right defines - and then fix glibc.

I'd like to add the following patches to synch glibc with 2.4.0-test9.

Uli, can I commit them?

Andreas

2000-09-19  Andreas Jaeger  <aj@suse.de>

	* sysdeps/gnu/netinet/tcp.h: Add tcp_info defines and types. 

	* sysdeps/unix/sysv/linux/sys/mount.h (enum): New flag MS_BIND.

	* sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (F_SETLKW64,
	F_GETLK64, F_SETLK64): Update from Linux-2.4.0-test9-pre4.

============================================================
Index: sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h
--- sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h	2000/09/01 07:13:37	1.1
+++ sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h	2000/09/19 08:56:42
@@ -78,10 +78,9 @@
 # define F_SETLKW	F_SETLKW64 /* Set record locking info (blocking).  */
 #endif
 
-/* XXX missing */
-#define F_GETLK64	5	/* Get record locking info.  */
-#define F_SETLK64	6	/* Set record locking info (non-blocking).  */
-#define F_SETLKW64	7	/* Set record locking info (blocking).  */
+#define F_GETLK64	12	/* Get record locking info.  */
+#define F_SETLK64	13	/* Set record locking info (non-blocking).  */
+#define F_SETLKW64	14	/* Set record locking info (blocking).  */
 
 #if defined __USE_BSD || defined __USE_XOPEN2K
 # define F_SETOWN	8	/* Get owner of socket (receiver of SIGIO).  */

============================================================
Index: sysdeps/unix/sysv/linux/sys/mount.h
--- sysdeps/unix/sysv/linux/sys/mount.h	1999/10/19 03:05:21	1.10
+++ sysdeps/unix/sysv/linux/sys/mount.h	2000/09/19 09:10:29
@@ -1,5 +1,5 @@
 /* Header file for mounting/unmount Linux filesystems.
-   Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
+   Copyright (C) 1996, 1997, 1998, 1999, 2000 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
@@ -55,8 +55,10 @@
 #define S_IMMUTABLE	S_IMMUTABLE
   MS_NOATIME = 1024,		/* Do not update access times.  */
 #define MS_NOATIME	MS_NOATIME
-  MS_NODIRATIME = 2048		/* Do not update directory access times.  */
+  MS_NODIRATIME = 2048,		/* Do not update directory access times.  */
 #define MS_NODIRATIME	MS_NODIRATIME
+  MS_BIND = 4096,		/* Bind directory at different place.  */
+#define MS_BIND		MS_BIND
 };
 
 /* Flags that can be altered by MS_REMOUNT  */

============================================================
Index: sysdeps/gnu/netinet/tcp.h
--- sysdeps/gnu/netinet/tcp.h	2000/07/28 07:37:38	1.4
+++ sysdeps/gnu/netinet/tcp.h	2000/09/19 13:06:38
@@ -161,8 +161,63 @@
 #define TCP_LINGER2	0x08	/* Life time of orphaned FIN-WAIT-2 state */
 #define TCP_DEFER_ACCEPT 0x09	/* Wake up listener only when data arrive */
 #define TCP_WINDOW_CLAMP 0x10	/* Bound advertised window */
+#define TCP_INFO	 0x11	/* Information about this connection. */
 
 #define SOL_TCP		6	/* TCP level */
+
+
+#define TCPI_OPT_TIMESTAMPS	1
+#define TCPI_OPT_SACK		2
+#define TCPI_OPT_WSCALE		4
+#define TCPI_OPT_ECN		8
+
+/* Values for tcpi_state.  */
+enum tcp_ca_state
+{
+  TCP_CA_Open = 0,
+  TCP_CA_Disorder = 1,
+  TCP_CA_CWR = 2,
+  TCP_CA_Recovery = 3,
+  TCP_CA_Loss = 4
+};
+
+struct tcp_info
+{
+  uint8_t	tcpi_state;
+  uint8_t	tcpi_ca_state;
+  uint8_t	tcpi_retransmits;
+  uint8_t	tcpi_probes;
+  uint8_t	tcpi_backoff;
+  uint8_t	tcpi_options;
+  uint8_t	tcpi_snd_wscale : 4, tcpi_rcv_wscale : 4;
+
+  uint32_t	tcpi_rto;
+  uint32_t	tcpi_ato;
+  uint32_t	tcpi_snd_mss;
+  uint32_t	tcpi_rcv_mss;
+
+  uint32_t	tcpi_unacked;
+  uint32_t	tcpi_sacked;
+  uint32_t	tcpi_lost;
+  uint32_t	tcpi_retrans;
+  uint32_t	tcpi_fackets;
+
+  /* Times. */
+  uint32_t	tcpi_last_data_sent;
+  uint32_t	tcpi_last_ack_sent;	/* Not remembered, sorry.  */
+  uint32_t	tcpi_last_data_recv;
+  uint32_t	tcpi_last_ack_recv;
+
+  /* Metrics. */
+  uint32_t	tcpi_pmtu;
+  uint32_t	tcpi_rcv_ssthresh;
+  uint32_t	tcpi_rtt;
+  uint32_t	tcpi_rttvar;
+  uint32_t	tcpi_snd_ssthresh;
+  uint32_t	tcpi_snd_cwnd;
+  uint32_t	tcpi_advmss;
+  uint32_t	tcpi_reordering;
+};
 
 __END_DECLS
 

-- 
 Andreas Jaeger
  SuSE Labs aj@suse.de
   private aj@arthur.inka.de
    http://www.suse.de/~aj

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]