Announcing the release of BLCR 0.6.0_beta7

From: Paul H. Hargrove (PHHargrove_at_lbl_dot_gov)
Date: Tue Aug 28 2007 - 16:00:51 PDT

  • Next message: Abhinav Jha: "Extending BLCR"
    I am pleased to announce the release of the seventh Beta version of BLCR
    0.6.0, now available at  for a source tarball
    or for a source RPM
    The respective MD5 checksums are
    a4ef0659777a6a8a008f32f933abfebf  blcr-0.6.0_b7.tar.gz
    f4ecec4863ae72ae7c9b810078dad3fd  blcr-0.6.0_b7-1.src.rpm
    I appreciate your patience with this uncharacteristically long beta 
    process, but I honestly believe that this will be the last beta prior to 
    a final 0.6.0 release. If no show-stopper bugs are reported, the full 
    0.6.0 is expected in about 10 days.
    There have been many changes in BLCR relative to the 0.5.6 release.
    These are summarized in the NEWS file, a portion of which is reproduced
    Relative to the previous beta, this release has
    - Added support for 2.6.22 kernels
    - Added full save/restore of pending (raised while blocked) signals
       and a corresponding test is added to the test suite.
    - Fixed compilation against 2.6.14+ uniprocessor kernels
    - Fixed the standard "install-exec" and "install-data" make targets
    - Continued code cleanup
    You are receiving this message because you are subscribed to the
    checkpoint_at_lbl_dot_gov mailing list, OR you have recently sent e-mail to
    that list (or to me personally) that indicates an interest in BLCR, OR
    you have reported a bug believed to be fixed in this release.  In the
    near future you can expect announcements of the final 0.6.0 release of
    BLCR, and of any additional betas that precede it.  Those of you not
    subscribed to the mailing list can let me know if you want to be
    excluded from those upcoming announcements.
    NEWS excerpt:
    July, 2007 - DEPRECATED support for LinuxThreads and for Linux 2.4.X kernels
    - Starting with the 0.6.0 release, new bug reports that one cannot reproduce
       under NPTL + Linux 2.6.x will receive little or none of our attention.
       However, we will try to distribute user-contributed fixes for such bugs.
       Note that the 0.6.0 release *does* pass the BLCR test-suite under
       LinuxThreads and/or 2.4.x kernels on the developers' x86 systems.
       However, we have seen test failures on PPC64 when running LinuxThreads
       with a 2.6.12 kernel (Gentoo distro).
    - Beginning with the next "full" release (0.7.0) we will begin to remove
       code in BLCR that exists only to support LinuxThreads and/or Linux 2.4.x.
    - We have not yet decided the fate of support for those 2.4.x kernels which
       include Red Hat's backport of NPTL support (RHL9.0, RHEL, RHAS, etc.).
    - If anybody cares enough about 2.4.x and/or LinuxThreads to volunteer to
       take over testing and maintenance of BLCR on such platforms, let us know.
    August 28, 2007
    Functionality and expanded-support release.
      - This release adds support for 2.6.22 kernels.
      - This release includes experimental support for PPC64 platforms
         + PPC64 supports both 32- and 64-bit applications.
         + No support for 32-bit kernels.
           Contact us if you would like to help w/ a PPC32 port.
         + No support for 2.4.x kernels
         + Tested with NPTL and kernels 2.6.12 (Gentoo) and 2.6.18 (FC6)
         + There are known problems with BLCR with LinuxThreads
      - This release includes experimental support for ARM platforms.
         + Tested only for 2.6.12 and newer kernels
         + Has a known failure in "bug2003" in the test suite.
           (test simulates a buggy/misbehaved process)
         + Thanks to Anton V. Uzunov <>
           of the Australian Government Department of Defence, Defence
           Science and Technology Organisation for contributing this port.
         + ARM-specific questions should be directed to blcr-arm_at_hpcrd_dot_lbl_dot_gov
      - This release includes experimental support for cross-compilation.
         + See config/cross_helper.c for information on cross-compilation.
         + This has been tested only in the context of the ARM port
         + Thanks to Anton V. Uzonov for motivating and testing this work
      - This release includes a new API for issuing a checkpoint request.
         + Allows a program to request a checkpoint without the need to invoke
           system("cr_checkpoint ...").
         + See comments in include/libcr.h for information on the following:
      - This release adds a mechanism (CR_CHECKPOINT_OMIT) for processes to
        exclude themselves from a checkpoint (useful for batch-system helper or
        shepherd processes).
      - This release makes cr_checkpoint and cr_restart utilities checkpointable
      - This release adds full support for mmap()-based shared memory
         + Repairs the loss of sharing that existed in 0.5.x releases
         + Supports hugetlbfs
      - This release adds full support for save/restore of pending signals.
      - Default scope of cr_checkpoint is now --tree, rather than --pid.
      - Now checkpoint/restart unlinked open files.
      - Revised handling of certain file-descriptors at restart:
        + No longer override "normal" files with correspondingly-numbered fds
          from cr_restart as that consistently breaks shell "here documents".
        + Restore pipes endpoints that lie outside the checkpoint scope by
          attaching them to stdin or stdout of cr_restart, rather than to its
          correspondingly-numbered fds.
        + Opens of a process's controlling tty are attached to "/dev/tty" at
          restart, even if they were open by their "exact" name at checkpoint
          time (e.g.  "/dev/pts/0").
      - Experimental support for relocatable kernels on x86 and x86-64
      - Expanded test-suite
      - Option to install the testsuite (--enable-testsuite)
      - Support "install-strip", "install-exec" and "install-data" make targets
      - Tested against many scripting and programming language environments:
        + shells:  ash, bash, (t)csh, (pd)ksh and zsh
        + scripting-type languages: perl, python, tcl/expect, ruby and guile
        + java runtime environments: Sun, IBM and GNU
        + misc. language runtimes: php, rep, clisp, emacslisp, gst, ocaml 
    and sml
        + Run "make bonus-tests" to run these tests on your own machine, but be
          warned that the tests themselves are fragile (contain races) and may
          experience random failures.  However, please do report any tests that
          fail consistently.
      - Many minor bug fixes and code cleanups
    Paul H. Hargrove                          PHHargrove_at_lbl_dot_gov
    Future Technologies Group
    HPC Research Department                   Tel: +1-510-495-2352
    Lawrence Berkeley National Laboratory     Fax: +1-510-486-6900

  • Next message: Abhinav Jha: "Extending BLCR"