Re: src/fs/aufs/aiops.c

From: Henrik Nordstrom <hno@dont-contact.us>
Date: Thu, 14 Dec 2000 03:30:23 +0100

Since it is only a minor optimization, we could also add a configure
check for sched_yield, and make the section conditional..

/Henrik

Andres Kroonmaa wrote:
>
> Solaris does not have sched_yield() in standard libs.
> it is present in realtime lib (-lrt), but librt also defines
> aio_read, aio_write, etc. I'm not sure if such naming clashes
> can cause any problems.
> In any case, 2.4 does not compile by default. We either have to
> add another lib or use some other func. Seems that solaris
> has thr_yield() defined also in pthread lib. Maybe we can
> safely use yield() and rely on threads library to hook it.
> I'm not sure which way to go.
>
> Index: src/fs/aufs/aiops.c
> ===================================================================
> RCS file: /cvsroot/squid/squid/src/fs/aufs/aiops.c,v
> retrieving revision 1.3
> diff -u -r1.3 aiops.c
> --- src/fs/aufs/aiops.c 2000/11/11 09:40:02 1.3
> +++ src/fs/aufs/aiops.c 2000/11/17 17:21:59
> @@ -800,7 +800,11 @@
> }
> /* Give up the CPU to allow the threads to do their work */
> if (done_queue.head || request_queue.head)
> +#ifndef _SQUID_SOLARIS_
> sched_yield();
> +#else
> + yield();
> +#endif
> }
>
> aio_result_t *
>
> ------------------------------------
> Andres Kroonmaa <andre@online.ee>
> Delfi Online
> Tel: 6501 731, Fax: 6501 708
> Pärnu mnt. 158, Tallinn,
> 11317 Estonia
Received on Wed Dec 13 2000 - 20:22:03 MST

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:13:04 MST