[1/4] libio: Assume _IO_lock_inexpensive

Message ID 20210527204457.1250196-2-adhemerval.zanella@linaro.org
State Committed
Commit 57094e576aed174317fb7de2da34be8536891678
Delegated to: Florian Weimer
Headers
Series Move libio lock single-thread optimization to generic libc-lock |

Checks

Context Check Description
dj/TryBot-apply_patch success Patch applied to master at the time it was sent

Commit Message

Adhemerval Zanella May 27, 2021, 8:44 p.m. UTC
  It is already set by both Linux and Hurd.
---
 libio/libio.h             | 11 ++---------
 sysdeps/mach/libc-lock.h  |  3 ---
 sysdeps/nptl/stdio-lock.h |  3 ---
 3 files changed, 2 insertions(+), 15 deletions(-)
  

Comments

Florian Weimer May 30, 2021, 1:11 p.m. UTC | #1
* Adhemerval Zanella via Libc-alpha:

> It is already set by both Linux and Hurd.

Looks okay to me, thanks.

Florian
  

Patch

diff --git a/libio/libio.h b/libio/libio.h
index 511b39457f..be2cde61e2 100644
--- a/libio/libio.h
+++ b/libio/libio.h
@@ -282,17 +282,10 @@  libc_hidden_proto (_IO_sgetn)
 # undef _IO_ftrylockfile
 
 # define _IO_peekc(_fp) _IO_peekc_locked (_fp)
-# if _IO_lock_inexpensive
-#  define _IO_flockfile(_fp) \
+# define _IO_flockfile(_fp) \
   if (((_fp)->_flags & _IO_USER_LOCK) == 0) _IO_lock_lock (*(_fp)->_lock)
-#  define _IO_funlockfile(_fp) \
+# define _IO_funlockfile(_fp) \
   if (((_fp)->_flags & _IO_USER_LOCK) == 0) _IO_lock_unlock (*(_fp)->_lock)
-# else
-#  define _IO_flockfile(_fp) \
-  if (((_fp)->_flags & _IO_USER_LOCK) == 0) _IO_flockfile (_fp)
-#  define _IO_funlockfile(_fp) \
-  if (((_fp)->_flags & _IO_USER_LOCK) == 0) _IO_funlockfile (_fp)
-# endif
 #endif /* _IO_MTSAFE_IO */
 
 #endif /* _LIBIO_H */
diff --git a/sysdeps/mach/libc-lock.h b/sysdeps/mach/libc-lock.h
index d713f34b5f..220fcee921 100644
--- a/sysdeps/mach/libc-lock.h
+++ b/sysdeps/mach/libc-lock.h
@@ -24,9 +24,6 @@ 
 #include <tls.h>
 #include <lowlevellock.h>
 
-/* The locking here is very inexpensive, even for inlining.  */
-#define _IO_lock_inexpensive   1
-
 typedef unsigned int __libc_lock_t;
 typedef struct
 {
diff --git a/sysdeps/nptl/stdio-lock.h b/sysdeps/nptl/stdio-lock.h
index f2eee49816..a4f419b516 100644
--- a/sysdeps/nptl/stdio-lock.h
+++ b/sysdeps/nptl/stdio-lock.h
@@ -23,9 +23,6 @@ 
 #include <lowlevellock.h>
 
 
-/* The locking here is very inexpensive, even for inlining.  */
-#define _IO_lock_inexpensive	1
-
 typedef struct { int lock; int cnt; void *owner; } _IO_lock_t;
 #define _IO_lock_t_defined 1