From owner-svn-src-projects@FreeBSD.ORG Tue Aug 24 21:25:59 2010 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 41D851065698; Tue, 24 Aug 2010 21:25:59 +0000 (UTC) (envelope-from jeff@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 3162B8FC1C; Tue, 24 Aug 2010 21:25:59 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id o7OLPx8n088465; Tue, 24 Aug 2010 21:25:59 GMT (envelope-from jeff@svn.freebsd.org) Received: (from jeff@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o7OLPx2c088463; Tue, 24 Aug 2010 21:25:59 GMT (envelope-from jeff@svn.freebsd.org) Message-Id: <201008242125.o7OLPx2c088463@svn.freebsd.org> From: Jeff Roberson Date: Tue, 24 Aug 2010 21:25:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r211776 - projects/ofed/head/contrib/ofed/libibverbs/src X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 Aug 2010 21:25:59 -0000 Author: jeff Date: Tue Aug 24 21:25:58 2010 New Revision: 211776 URL: http://svn.freebsd.org/changeset/base/211776 Log: - Fix the ibdev_path, it is not used to open the actual device as I had thought. The sysctl path is appropriate. Sponsored by: Isilon Systems, iX Systems, and Panasas Modified: projects/ofed/head/contrib/ofed/libibverbs/src/init.c Modified: projects/ofed/head/contrib/ofed/libibverbs/src/init.c ============================================================================== --- projects/ofed/head/contrib/ofed/libibverbs/src/init.c Tue Aug 24 21:16:37 2010 (r211775) +++ projects/ofed/head/contrib/ofed/libibverbs/src/init.c Tue Aug 24 21:25:58 2010 (r211776) @@ -182,7 +182,8 @@ static int find_sysfs_devs(void) continue; snprintf(sysfs_dev->ibdev_path, sizeof sysfs_dev->ibdev_path, - "/dev/%s", sysfs_dev->ibdev_name); + "%s/class/infiniband/%s", ibv_get_sysfs_path(), + sysfs_dev->ibdev_name); sysfs_dev->next = sysfs_dev_list; sysfs_dev->have_driver = 0; @@ -385,19 +386,13 @@ static struct ibv_device *try_driver(str struct ibv_sysfs_dev *sysfs_dev) { struct ibv_device *dev; - char *path; char value[8]; dev = driver->init_func(sysfs_dev->sysfs_path, sysfs_dev->abi_ver); if (!dev) return NULL; - if (asprintf(&path, "/sys/class/infiniband/%s", - strrchr(sysfs_dev->ibdev_path, '/')+1) < 0) { - dev->node_type = IBV_NODE_UNKNOWN; - goto out; - } - if (ibv_read_sysfs_file(path, "node_type", value, sizeof value) < 0) { + if (ibv_read_sysfs_file(sysfs_dev->ibdev_path, "node_type", value, sizeof value) < 0) { fprintf(stderr, PFX "Warning: no node_type attr under %s.\n", sysfs_dev->ibdev_path); dev->node_type = IBV_NODE_UNKNOWN; @@ -406,7 +401,6 @@ static struct ibv_device *try_driver(str if (dev->node_type < IBV_NODE_CA || dev->node_type > IBV_NODE_RNIC) dev->node_type = IBV_NODE_UNKNOWN; } - free(path); out: switch (dev->node_type) {