[Top][All Lists]

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

[Guile-commits] GNU Guile branch, wip-thread-safe-popen, created. v2.0.9

From: Mark H Weaver
Subject: [Guile-commits] GNU Guile branch, wip-thread-safe-popen, created. v2.0.9-106-g7feebb7
Date: Sun, 17 Nov 2013 09:54:51 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Guile".

The branch, wip-thread-safe-popen has been created
        at  7feebb721114e0a20a19ec152bfceaf27b7bb57d (commit)

- Log -----------------------------------------------------------------
commit 7feebb721114e0a20a19ec152bfceaf27b7bb57d
Author: Mark H Weaver <address@hidden>
Date:   Sun Nov 17 02:54:31 2013 -0500

    Make (ice-9 popen) thread-safe.
    * module/ice-9/popen.scm: Import (ice-9 threads).
      (port/pid-table): Mark as deprecated in comment.
      (port/pid-table-mutex): New variable.
      (open-pipe*): Stash the pid in the port's alist.  Lock
      'port/pid-table-mutex' while mutating 'port/pid-table'.
      (fetch-pid): Fetch the pid from the port's alist.  Don't touch
      (close-process-quietly): Don't add the port to 'port/pid-table-mutex',
      since it was never removed.
      (close-pipe): Improve error message.
      (reap-pipes): Check to see if the port is already closed.

commit aa2d1143a05b82692ca965a2aa7d07e12c92e8c6
Author: Mark H Weaver <address@hidden>
Date:   Sun Nov 17 02:46:08 2013 -0500

    Stylistic improvements for (ice-9 popen).
    * module/ice-9/popen.scm (close-process, close-process-quietly): Accept
      'port' and 'pid' as separate arguments.  Improve style.
      (close-pipe, read-pipes): Improve style.

commit 5eb377ad8db716457b5750b54daa28b249006acd
Author: Mark H Weaver <address@hidden>
Date:   Sun Nov 17 01:11:57 2013 -0500

    Make port alists accessible from Scheme.
    * libguile/ports.c (scm_i_port_alist, scm_i_set_port_alist_x): Make
      these available from Scheme, as '%port-alist' and '%set-port-alist!'.
      Validate port argument.
    * libguile/ports.h (scm_i_set_port_alist_x): Change return type from
      'void' to 'SCM'.

commit 467e1d4c0438d24e310a45bc7370bd19b0e8c659
Author: Mark H Weaver <address@hidden>
Date:   Sun Nov 17 03:35:09 2013 -0500

    Make guardians thread-safe.
    * libguile/guardians.c (t_guardian): Add mutex.
      (finalize_guarded, scm_i_guard, scm_i_get_one_zombie): Lock mutex and
      block system asyncs during critical sections.
      (scm_make_guardian): Initialize mutex.

commit f68f42d2014bb3dfb8a0d7c502f9d3d9593ee458
Author: Mark H Weaver <address@hidden>
Date:   Sun Nov 17 03:19:32 2013 -0500

    Block system asyncs while 'overrides_lock' is held.
    * libguile/procprop.c (scm_set_procedure_property_x): Block system
      asyncs while overrides_lock is held.  Use dynwind block in case
      an exception is thrown.

commit 9b48be7107f3f98cdf2e756d4c1f4c937ff233d7
Author: Mark H Weaver <address@hidden>
Date:   Sun Nov 17 04:00:29 2013 -0500

    Add mutex locking functions that also block asyncs.
    * libguile/async.h (scm_i_pthread_mutex_lock_with_asyncs,
      scm_i_pthread_mutex_unlock_with_asyncs): New macros.
    * libguile/threads.c (do_unlock_with_asyncs): New static helper.
      (scm_i_dynwind_pthread_mutex_lock_with_asyncs): New function.
    * libguile/threads.h (scm_i_dynwind_pthread_mutex_lock_with_asyncs):
      Add prototype.


GNU Guile

reply via email to

[Prev in Thread] Current Thread [Next in Thread]