This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] Add wake optimisation to PowerPC POSIX semaphores
- From: Anton Blanchard <anton at samba dot org>
- To: Jakub Jelinek <jakub at redhat dot com>
- Cc: libc-alpha at sources dot redhat dot com, sjmunroe at us dot ibm dot com
- Date: Mon, 30 Jul 2007 18:19:57 -0500
- Subject: Re: [PATCH] Add wake optimisation to PowerPC POSIX semaphores
- References: <20070730175955.GB13661@kryten> <20070730182837.GW4603@sunsite.mff.cuni.cz>
Hi Jakub,
> Heh, this is almost the same as I posted last week in
> http://sources.redhat.com/ml/libc-hacker/2007-07/msg00044.html
Sorry I didnt realise your patch fixed this issue, but good to know I
was on the right track :)
> The only differences are: I used atomic_full_barrier,
> guess your __asm __volatile (__lll_acq_instr ::: "memory"); is better
> and LLL_SHARED shouldn't be used in the new sem_post case,
> but isem->private ^ FUTEX_PRIVATE_FLAG.
Yep atomic_full_barrier is a full sync which is very slow. The
lwarx/stwcx/bne/isync combination should still force subsequent loads to
be ordered, but should be quicker.
Anton