Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
                        University Research and Technology
                        Corporation.  All rights reserved.
Copyright (c) 2004-2005 The Regents of the University of California.
                        All rights reserved.
Copyright (c) 2006-2009 Cisco Systems, Inc.  All rights reserved.
$COPYRIGHT$

Additional copyrights may follow

$HEADER$

===========================================================================

This file contains the main features as well as overviews of specific
bug fixes (and other actions) for each version of PLPA since
version 1.0.

1.3.1
-----

- Fixed bug identified by Eugene Loh at Sun; plpa-taskset -c ranges
  were accidentally excluding the processor ID at the top of the
  range.
- For standalone PLPA builds, the .so library is now versioned
  according to the GNU Libtool guidelines.


1.3
---

- Added --with-valgrind support that allows building support for
  Valgrind into PLPA (i.e., tell Valgrind to not warn about things
  that we know are ok).


1.2
---

- Allow mapping from simple/contiguous processor, socket, and core
  numbers to the corresponding back-end Linux ID (and clean up
  documentation references between "X number" and "X ID", where X is
  one of processor, socket, core).
- Support CPU hot plugging.
- Add explicit control over the PLPA topology information cache.


1.1.1
-----

- Ensure that --enable-included also disables executables by default.
  Thanks to Brian Curtis for identifying the problem and supplying a
  patch.
- Add ENABLE_EXECUTABLES m4 macro to allow behavior in m4
  configuration analogous to "--enable-included --enable-executables".


1.1
---

- New command: plpa-taskset.  It is intended as a drop-in replacement
  for the "taskset" command, except it also understands sockets and
  cores.  See "plpa-taskset --help" for more details
- Renamed "plpa_info" to "plpa-info".
- Added PLPA_{MAJOR|MINOR|RELEASE}_VERSION integer macros in plpa.h.
  This release, they have the values of 1, 1, and 0, respectively.
- Add new API functions to map from (socket,core) back and forth from
  the Linux virtual processor ID.  Thanks to AMD for the initial code
  contribution that made this possible.  See the documentation for
  plpa_map_to_processor_id() as a starting point for more
  information.
- Various fixes to "included" mode.


1.0.5
-----

- Fix an issue where the PLPA get/set affinity functions would only
  operate on the current process; the PID argument to these functions
  was effectively ignored.


1.0.4
-----

- Fix some 64 bit issues.  Thanks to David Creasy for reporting the
  problems.
- Fix plpa.h to be C++-friendly.  Thanks to Emmanuel Paris for
  pointing out this problem.


1.0.3
-----

- Resolve some sizing / units ambiguities that mistakenly did not make
  it into 1.0.1.  Thanks to Bert Wesarg for pointing these problems out.


1.0.2
-----

- Ensure that plpa_sched_[set|get]affinity() returns 0 upon success.
  Thanks to David Creasy for bringing this to our attention.


1.0.1
-----

- Specify that cpusetsize should be in units of bytes and add some
  missing "* 8"'s in plpa_dispatch.c.


1.0
---

- Initial release.


0.9a2
-----

- Change the back-end type of the plpa_bitmask_t to unsigned long
  instead of unsigned char to avoid an endian problem.
- No longer attempt to set the affinity in plpa_api_probe() to avoid a
  possible race condition (setting it after getting it).
- Fix PLPA_CPU_ZERO macro.  Thanks to Bogdan Costescu for pointing
  this out.


0.9a1
-----

Initial public release.
