2006-10-30  Jack Morgenstein  <jackm@mellanox.co.il>
	
	* src/cmd.c (ibv_cmd_query_qp): Unmarshall sq_draining instead of
	en_sqd_async_notify.

	* include/infiniband/kern-abi.h: Change en_sqd_async_notify member
	of struct ibv_query_qp_resp to sq_draining.

2006-10-30  Roland Dreier  <rdreier@cisco.com>

	* src/init.c (find_drivers): Make find_drivers() take a const
	directory name, and tweak how we strip trailing /s so that we
	don't have to modify the directory name passed in.  Constify
	default_path too.

2006-10-25  Roland Dreier  <rdreier@cisco.com>

	* src/init.c (init_drivers): Remove assignment to dev->driver now
	that it is gone for good.

	* include/infiniband/verbs.h: Remove .driver member of struct
	ibv_device, since it is never really used.

2006-10-17  Roland Dreier  <rdreier@cisco.com>

	* include/infiniband/arch.h: Update i386 and x86_64 memory barrier
	macros to be more than compiler barriers, to guard against
	out-of-order speculative reads.

	* include/infiniband/arch.h: Add rmb() and wmb() macros in
	addition to the full mb(), so that low-level drivers can ask for
	weaker ordering if that's all that is needed.
	
2006-10-03  Roland Dreier  <rdreier@cisco.com>

	* src/cmd.c (ibv_cmd_get_context_v2, ibv_cmd_get_context)
	(ibv_cmd_query_device, ibv_cmd_query_port, ibv_cmd_alloc_pd)
	(ibv_cmd_reg_mr, ibv_cmd_create_cq_v2, ibv_cmd_create_cq)
	(ibv_cmd_poll_cq, ibv_cmd_resize_cq, ibv_cmd_destroy_cq)
	(ibv_cmd_create_srq, ibv_cmd_create_qp, ibv_cmd_post_send)
	(ibv_cmd_post_recv, ibv_cmd_post_srq_recv, ibv_cmd_create_ah)
	(ibv_cmd_destroy_qp): Annotate so that Valgrind knows responses
	are defined after write() succeeds.  The kernel writes into the
	response structure directly, so without these, Valgrind thinks
	that response structures are undefined memory.  This is based on
	patches and suggestions by Rainer Keller <keller@hlrs.de>, Jeff
	Squyres <jsquyres@cisco.com> and Siqing Fan.

	* src/ibverbs.h: Add wrapper for VALGRIND_MAKE_MEM_DEFINED so that
	it can be used in .c files without worrying about whether Valgrind
	is installed or enabled.

	* configure.in: Add support for Valgrind annotation (enabled with
	--with-valgrind option to configure).

	* src/cmd.c (ibv_cmd_query_port, ibv_cmd_create_cq,
	ibv_cmd_modify_qp): Set reserved fields to 0 to avoid future
	problems and also to make Valgrind a little quieter.

	* src/init.c (init_drivers): Set node_type and transport_type
	values of device being created.

	* include/infiniband/verbs.h: Add ibv_node_type enum value
	IBV_NODE_RNIC, and add enum ibv_transport_type.  Add node_type and
	transport_type fields to struct ibv_device.

2006-09-12  Roland Dreier  <rdreier@cisco.com>

	* include/infiniband/verbs.h: Swap wr_id and next members of
	struct ibv_send_wr and struct ibv_recv_wr.  This allows wr_id to
	be naturally aligned without padding on 32-bit platforms.

2006-08-23  Roland Dreier  <rdreier@cisco.com>

	* include/infiniband/driver.h: Add a definition of the macro
	IBV_CMD_RESIZE_CQ_HAS_RESP_PARAMS so that low-level driver plugins
	can detect the changed signature of ibv_cmd_resize_cq().

2006-08-23  Ralph Campbell  <ralph.campbell@qlogic.com>

	* src/cmd.c (ibv_cmd_resize_cq): Add resp and resp_size parameters
	so that the low-level driver in the kernel can return
	device-specific information from the resize CQ operation.

2006-07-26  Roland Dreier  <rdreier@cisco.com>

	* src/verbs.c (ibv_reg_mr, ibv_dereg_mr): Add calls to
	ibv_dontfork_range() and ibv_dofork_range() for memory regions
	registered by library consumers.

	* include/infiniband/verbs.h: Add declaration of ibv_fork_init().

	* include/infiniband/driver.h: Add declarations of
	ibv_dontfork_range() and ibv_dofork_range().

	* src/memory.c: Rewrite to use a red-black tree instead of a
	linked list.  Change from doing mlock()/munlock() to
	madvise(..., MADV_DONTFORK) and madvise(..., MADV_DOFORK), and
	change the name of the entry points to ibv_dontfork_range() and
	ibv_dofork_range().  Add ibv_fork_init() for applications to
	request fork-safe behavior.

	* src/ibverbs.h: Kill off unused declarations.

	* src/init.c (ibverbs_init): Get rid of call to ibv_init_mem_map().

	* include/infiniband/verbs.h: Add addr and length field to struct
	ibv_mr so that memory regions can be madvised().  This changes the
	ABI, since the layout of struct ibv_mr is changed.

2006-07-04  Roland Dreier  <rdreier@cisco.com>

	* include/infiniband/arch.h: Fix typo in sparc mb()
	implementation: the asm should just be empty -- the "sync"
	instruction was mistakenly cut and pasted from the ppc version.

2006-06-07  Sean Hefty     <sean.hefty@intel.com>

	* src/verbs.c include/infiniband/verbs.h: Add new routines:
	ibv_init_ah_from_wc() and ibv_create_ah_from_wc() to simplify UD QP
	communication.

	* src/marshall.c include/infiniband/marshall.h: Expose
	ibv_copy_ah_attr_from_kern to retrieve ibv_ah_attr from kernel for
	a UD QP.

2006-06-01  Roland Dreier  <rdreier@cisco.com>

	* src/device.c (ibv_get_device_list): Actually return a
	NULL-terminated array as the documentation promises.

2006-05-31  Roland Dreier  <rdreier@cisco.com>

	* src/init.c (find_drivers): Fix memory leak: the result of
	asprintf() needs to be freed when we're done with it.

	* examples/asyncwatch.c (event_name_str): Print human-readable
	form of IBV_EVENT_CLIENT_REREGISTER.

2006-05-31  Leonid Arsh  <leonida@voltaire.com>

	* include/infiniband/verbs.h: Add IBV_EVENT_CLIENT_REREGISTER.

2006-05-22  Roland Dreier  <rdreier@cisco.com>

	* examples/devinfo.c (print_hca_cap): Read board_id attribute from
	sysfs using ibv_read_sysfs_file() instead of libsysfs.

	* src/cmd.c, src/marshall.c, src/sysfs.c: Include <string.h>,
	since it is no longer implicitly included via <sysfs/libsysfs.h>.

	* include/infiniband/driver.h, include/infiniband/verbs.h,
	src/device.c, src/init.c, src/verbs.c: Remove dependency on
	libsysfs by implementing what is required directly on top of
	filesystem operations.

	* include/infiniband/driver.h, src/init.c: Change name of driver
	entry point to ibv_driver_init(), and update prototype to remove
	libsysfs dependency.

	* src/marshall.c, include/infiniband/marshall.h,
	include/infiniband/sa.h: Remove deprecated ib_xxx symbols.

	* Makefile.am: Bump SONAME to 2, since libibverbs 1.1 will be
	ABI-incompatible with libibverbs 1.0.

	* Create libibverbs 1.1 branch and bump version number to 1.1-pre1.

2006-05-22  Michael S. Tsirkin  <mst@mellanox.co.il>

	* include/infiniband/verbs.h: Remove trailing commas from
	enumerators to quiet warnings from obsolete compilers.

2006-05-02  Roland Dreier  <rdreier@cisco.com>

	* Release version 1.0.3.

2006-05-01  Roland Dreier  <rdreier@cisco.com>

	* include/infiniband/arch.h: Only SPARC V9 ISA supports membar.
	So just use generic memory barrier for older sparc archs.

2006-04-11  Roland Dreier  <rdreier@cisco.com>

	* src/sysfs.c (ibv_read_sysfs_file): Fix memory leak if open fails.

	* src/device.c (ibv_get_device_guid), src/verbs.c (ibv_query_gid,
	ibv_query_pkey), src/init.c (init_drivers, check_abi_version): Use
	libibverbs functions instead of libsysfs functions to get to sysfs.

	* src/sysfs.c (ibv_get_sysfs_path, ibv_read_sysfs_file): Add some
	simple functions for accessing sysfs without using libsysfs.

	* include/infiniband/sa-kern-abi.h: Deprecate struct
	ib_kern_path_rec name; struct ibv_kern_path_rec is now preferred.

	* include/infiniband/sa.h: Deprecate struct ib_sa_XXX names;
	struct ibv_sa_XXX is now preferred.

	* src/marshall.c, include/infiniband/marshall.h: Deprecate
	ib_copy_XXX() names; ibv_copy_XXX() is preferred.  Add stub
	wrappers with the old names so old binaries still work.

2006-04-11  Hoang-Nam Nguyen  <HNGUYEN@de.ibm.com>

	* src/verbs.c (ibv_rate_to_mult, mult_to_ibv_rate): Add new
	functions to convert between IB rate enums and multiples of the
	base 2.5 Gb/sec rate.

2006-04-11  Roland Dreier  <rdreier@cisco.com>

	* include/infiniband/verbs.h: Add __attribute_const macro to
	portably mark functions as __attribute__((const))

2006-03-28  Roland Dreier  <rdreier@cisco.com>

	* src/init.c (load_driver): Print warning if dlopen() of a driver
	plugin fails.

2006-03-22  Dotan Barak  <dotanb@mellanox.co.il>

	* examples/asyncwatch.c: Print asynchronous event name as well as
	raw integer value.
	
2006-03-22  Roland Dreier  <rdreier@cisco.com>

	* include/infiniband/verbs.h (ibv_req_notify_cq): Document
	parameters better.

2006-03-16  Roland Dreier  <rdreier@cisco.com>

	* src/cmd.c, src/device.c, src/memory.c, src/verbs.c: Add include
	of <stdlib.h> to get a declaration of free() and avoid compile
	warnings.

2006-03-14  Roland Dreier  <rdreier@cisco.com>

	* Release version 1.0.2.

	* Makefile.am (EXTRA_DIST): Remove debian/ directory from
	tarballs, since Debian policy is that upstream tarballs should not
	include it.

2006-03-13  Roland Dreier  <rdreier@cisco.com>

	* Release version 1.0.1.

	* src/init.c (check_abi_version), src/verbs.c (ibv_query_gid,
	ibv_query_pkey): Use sysfs_open_attribute() and
	sysfs_read_attribute() instead of the deprecated function
	sysfs_read_attribute_value(), which is no longer present in
	libsysfs2 (which is already in Debian and Ubuntu).

	* Release version 1.0.

2006-03-06  Roland Dreier  <rdreier@cisco.com>

	* include/infiniband/verbs.h: Add enum ibv_rate to define encoding
	of static_rate field (based on a patch from Jack Morgenstein
	<jackm@mellanox.co.il>).

2006-03-06  Ralph Campbell  <ralphc@pathscale.com>

	* src/init.c (find_drivers): Fix minor memory leak: call
	globfree() to free memory allocated by glob().

2006-02-23  Dotan Barak  <dotanb@mellanox.co.il>

	* src/cmd.c (ibv_cmd_create_srq): Add support for kernel ABI
	version 6 (take SRQ capacity from kernel response to create SRQ).

2006-02-16  Roland Dreier  <rdreier@cisco.com>

	* Release version 1.0-rc7.

	* src/cmd.c (ibv_cmd_create_qp): Add support for kernel ABI
	version 5 (properly aligned struct ibv_create_qp_resp).

2006-02-15  Roland Dreier  <rdreier@cisco.com>

	* src/cmd.c (ibv_cmd_create_qp): Allow userspace device-specific
	driver to pass in a response buffer, so that the low-level driver
	in the kernel can pass back device-specific information.  This
	changes the userspace driver API, since the signature of
	ibv_cmd_create_qp() is changed.

2006-02-14  Roland Dreier  <rdreier@cisco.com>

	* Release version 1.0-rc6.

2006-02-13  Dotan Barak  <dotanb@mellanox.co.il>

	* examples/devinfo.c (print_hca_cap): Print board_id from sysfs,
	if present.

2006-02-13  Roland Dreier  <rdreier@cisco.com>

	* examples/asyncwatch.c, examples/device_list.c,
	examples/devinfo.c: Remove cpu_to_be64()/be64_to_cpu() and use
	htonll()/ntohll() from <infiniband/arch.h>.

2006-02-13  Dotan Barak  <dotanb@mellanox.co.il>

	* src/cmd.c (ibv_cmd_query_qp, ibv_cmd_query_srq),
	include/infiniband/driver.h: Add driver interface for calling
	query QP and query SRQ kernel commands.

	* include/infiniband/kern-abi.h: Add kernel ABI for query QP and
	query SRQ.

	* src/verbs.c (ibv_query_qp, ibv_query_srq),
	include/infiniband/verbs.h: Add query QP and query SRQ library
	APIs.  This changes the provider ABI, since new fields are added
	to struct ibv_context_ops; source compatibility with provider
	libraries is preserved, but binaries will have to be recompiled.
	Neither source nor binary compatibility with consumers of
	libibverbs is affected.

2006-02-01  Roland Dreier  <rdreier@cisco.com>

	* examples/rc_pingpong.c, examples/uc_pingpong.c,
	examples/ud_pingpong.c, examples/srq_pingpong.c: Fix bug in
	searching for device by name when there's more than one device.

2006-01-31  Roland Dreier  <rdreier@cisco.com>

	* include/infiniband/verbs.h, include/infiniband/driver.h: Remove
	useless "extern" from function declarations.

2006-01-26  Roland Dreier  <rdreier@cisco.com>

	* include/infiniband/driver.h, src/cmd.c (ibv_cmd_resize_cq): Add
	driver interface for calling resize CQ kernel command.

	* include/infiniband/kern-abi.h: Add resize CQ kernel ABI.

	* include/infiniband/verbs.h, src/verbs.c (ibv_resize_cq): Add
	resize CQ library API.  This changes the provider ABI, since a new
	field is added to struct ibv_context_ops; source compatibility
	with provider libraries is preserved, but binaries will have to be
	recompiled.  Neither source nor binary compatibility with
	consumers of libibverbs is affected.

2006-01-25  Roland Dreier  <rdreier@cisco.com>

	* examples/pingpong.c, examples/pingpong.h,
	examples/rc_pingpong.c, examples/uc_pingpong.c,
	examples/srq_pingpong.c: Move pp_get_local_lid() to pingpong.c to
	reduce code duplication.

2006-01-22  Roland Dreier  <rdreier@cisco.com>

	* Release version 1.0-rc5.

2006-01-22  Dotan Barak  <dotanb@mellanox.co.il>

	* examples/devinfo.c (main): Make ibv_devinfo list all IB devices
	by default, rather than the first device only.

2006-01-20  Roland Dreier  <rdreier@cisco.com>

	* examples/rc_pingpong.c, examples/uc_pingpong.c,
	examples/srq_pingpong.c: Add "-m/--mtu=" option to set path MTU.
	(Based on a patch from Ralph Campbell <ralphc@pathscale.com>)

	* examples/pingpong.c, examples/pingpong.h: Create generic
	pingpong files so that we can start factoring out common code from
	the pingpong examples.  Start with functions to convert MTU to an
	IBV enum value.

2006-01-17  Ralph Campbell  <ralphc@pathscale.com>

	* examples/rc_pingpong.c (main), examples/srq_pingpong.c (main),
	examples/uc_pingpong.c (main), examples/ud_pingpong.c (main): Fix
	race when using CQ events by arming CQ before allowing remote side
	to start sending.

2006-01-06  Roland Dreier  <rdreier@cisco.com>

	* examples/srq_pingpong.c (main): Fix SRQ example to avoid
	problems with many QPs and events.  Based on a patch from Dotan
	Barak (who also found the problem).

2006-01-06  Ralph Campbell  <ralphc@pathscale.com>

	* examples/rc_pingpong.c (main), examples/srq_pingpong.c (main),
	examples/uc_pingpong.c (main), examples/ud_pingpong.c (main): Fix
	test of return value of ibv_poll_cq().

2006-01-04  Dotan Barak  <dotanb@mellanox.co.il>

	* include/infiniband/verbs.h: Fix mask names in description of
	ibv_modify_srq.

2006-01-04  Michael S. Tsirkin  <mst@mellanox.co.il>

	* src/init.c (ibverbs_init): Fix ibverbs_init for multiple adapters.
	Noted by Christoph Raisch.

2005-12-15  Roland Dreier  <rdreier@cisco.com>

	* include/infiniband/verbs.h: Document that devices must be opened
	before calling ibv_free_device_list().
	
	* src/verbs.c (ibv_create_srq): Not all provider libraries will
	support SRQs, so check if the create_srq method is defined before
	calling it.  (Based on a patch from Shirley Ma <xma@us.ibm.com>)

2005-11-11  Roland Dreier  <roland@cisco.com>

	* examples/asyncwatch.c, examples/rc_pingpong.c,
	examples/srq_pingpong.c, examples/uc_pingpong.c,
	examples/ud_pingpong.c, examples/device_list.c,
	examples/devinfo.c: Update examples to match new API.
	
	* include/infiniband/verbs.h, src/device.c, src/init.c,
	src/ibverbs.h: Change from dlist-based ibv_get_devices() API to
	simpler ibv_get_device_list() and ibv_free_device_list() API.

2005-11-10  Sean Hefty  <sean.hefty@intel.com>

	* include/infiniband/sa-kern-abi.h: New include file to contain
	definitions of SA structures passed between userspace and kernel.

	* include/infiniband/sa.h: New include file for definitions of 
	SA structures used by multiple libraries.

	* include/infiniband/marshall.h src/marshall.c: New files to define
	routines used to exchange data with kernel modules.

	* include/infiniband/kern-abi.h: Added data structures used to exchange
	QP attribute with kernel modules.

2005-11-09  Michael S. Tsirkin  <mst@mellanox.co.il>

	* src/device.c (ibv_get_devices): Make function reentrant by using
	a mutex to make sure we initialize the device list at most once.

2005-11-08  Roland Dreier  <roland@cisco.com>

	* src/cmd.c (ibv_cmd_create_qp): Add handling for new create QP
	interface, which has the kernel return QP capabilities.

	* src/cmd.c (ibv_cmd_modify_srq): Split off handling of modify SRQ
	for ABI versions 3 and older, which passed max_sge as part of command.

2005-10-30  Roland Dreier  <roland@cisco.com>

	* examples/srq_pingpong.c (pp_init_ctx): Create CQ with rx_depth +
	num_qp entries, instead of just rx_depth + 1 entries, because
	there can be one send completion pending for each QP.

2005-10-25  Roland Dreier  <roland@cisco.com>

	* Release version 1.0-rc4.

	* examples/uc_pingpong.c (pp_connect_ctx): Fix QP attribute masks
	used to modify QP to RTR and RTS -- we should not be setting
	RDMA/atomic attributes for UC QPs.  Now that the mthca kernel
	driver bug is fixed, the error is exposed here.

	* examples/rc_pingpong.c, examples/srq_pingpong.c,
	examples/uc_pingpong.c, examples/ud_pingpong.c: Keep track of
	whether send and/or receive is pending.  This avoids failures when
	the remote side receives data and posts a send very quickly, and
	the local side completes the receive before the previous send.
	With the old code, this could result in posting a send before the
	previous send completed, and therefore overrun the send queue.

2005-10-23  Roland Dreier  <roland@cisco.com>

	* src/cmd.c (ibv_cmd_get_context_v2): Correct silly mistake in
	computation of size of buffer for old ABI command: we need to use
	sizeof *cmd instead of sizeof cmd, since cmd is a pointer.

2005-10-21  Roland Dreier  <roland@cisco.com>

	* src/cmd.c (ibv_cmd_post_send, ibv_cmd_post_recv,
	ibv_cmd_post_srq_recv): Correct value that we check write() return
	value against so that we check against the size we actually try to
	write, instead of just sizeof cmd.

2005-10-19  Roland Dreier  <roland@cisco.com>

	* src/cmd.c (ibv_cmd_req_notify_cq): Correct how we pass
	solicited_only flag into the kernel.

2005-10-13  Roland Dreier  <roland@cisco.com>

	* include/infiniband/driver.h, src/cmd.c, src/libibverbs.map: Add
	command functions for calling new kernel commands.

	* include/infiniband/verbs.h: Add qp_type to struct ibv_qp so that
	we know when we're posting a send on a UD QP, and add kernel
	handle member to struct ibv_ah so we can handle drivers that do
	create AH and destroy AH operations in the kernel.
	
	* include/infiniband/kern-abi.h: Add new command structures for
	poll CQ, request notification for CQ, post send, post receive,
	post SRQ receive, create AH and destroy AH commands.  These will
	be used by the PathScale userspace driver.

2005-10-12  Roland Dreier  <roland@cisco.com>

	* examples/srq_pingpong.c (main): Zero out unused entries in
	my_dest array to avoid string overflows when we send to the other
	side.

2005-10-09  Roland Dreier  <roland@cisco.com>

	* examples/devinfo.c (print_hca_cap): Only print max_mr_size and
	page_size_cap if verbose is set.

2005-10-05  Roland Dreier  <roland@cisco.com>

	* src/cmd.c (ibv_cmd_modify_srq): Add function for marshalling
	modify SRQ command.

2005-09-29  Roland Dreier  <roland@cisco.com>

	* examples/devinfo.c (print_hca_cap): Get rid of formatting of
	firmware version in what should be device-independent code.

	* include/infiniband/driver.h, include/infiniband/verbs.h,
	src/cmd.c (ibv_cmd_query_device): Change firmware version in
	struct ibv_device_attr to be a string formatted by device-specific
	library.

2005-09-25  Roland Dreier  <roland@cisco.com>

	* examples/rc_pingpong.c, examples/srq_pingpong.c,
	examples/uc_pingpong.c, examples/ud_pingpong.c: Update to match
	new completion channel and CQ creation API.

	* include/infiniband/driver.h, include/infiniband/verbs.h,
	src/device.c, src/ibverbs.h, src/verbs.c, src/cmd.c: Add notion of
	"completion channel" that allows consumers to dynamically create
	and destroy file descriptors for retrieving completion events.
	Completion channels are handled natively with kernel ABI version 3
	and simulated with backwards compatibility implementations for ABI
	versions 1 and 2.

	* include/infiniband/kern-abi.h: Update to match kernel ABI
	version 3.

2005-09-07  Roland Dreier  <roland@cisco.com>

	* src/device.c (ibv_get_device_guid): Use htonll() instead of
	relying on pointer aliasing (which seems to break for some gcc
	versions).

	* include/infiniband/arch.h: Add htonll() and ntohll() functions.

2005-09-06  Roland Dreier  <roland@cisco.com>

	* include/infiniband/kern-abi.h, include/infiniband/verbs.h,
	src/cmd.c, src/device.c, src/verbs.c, examples/asyncwatch.c:
	Update to handle new kernel ABI for avoiding stale completion
	events.  This is completely analogous to the previous asynchronous
	event change.

2005-08-31  Roland Dreier  <roland@cisco.com>

	* include/infiniband/kern-abi.h, include/infiniband/verbs.h,
	src/cmd.c, src/device.c, src/ibverbs.h, src/init.c, src/verbs.c,
	examples/asyncwatch.c: Update to handle new kernel ABI for
	avoiding stale asynchronous events.  When a CQ, QP or SRQ is
	destroyed, the kernel reports the number of events it has given to
	userspace, and we wait until we've handled the same number of
	events.

	This does introduce a library API change: consumers are now
	required to call ibv_put_async_event() to release every
	asynchronous event that they retrieve via ibv_get_async_event().

2005-08-30  Roland Dreier  <roland@cisco.com>

	* man/ibv_asyncwatch.1, man/ibv_devices.1, man/ibv_devinfo.1,
	man/ibv_rc_pingpong.1, man/ibv_srq_pingpong.1,
	man/ibv_uc_pingpong.1, man/ibv_ud_pingpong.1: Add man pages for
	example programs.

	* examples/devinfo.c: Merge with Dotan Barak's vstat tool.
