From owner-svn-src-all@FreeBSD.ORG Mon Dec 7 19:08:10 2009 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 95D531065694; Mon, 7 Dec 2009 19:08:10 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 839B48FC22; Mon, 7 Dec 2009 19:08:10 +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 nB7J8AVR062954; Mon, 7 Dec 2009 19:08:10 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id nB7J8AOe062952; Mon, 7 Dec 2009 19:08:10 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <200912071908.nB7J8AOe062952@svn.freebsd.org> From: John Baldwin Date: Mon, 7 Dec 2009 19:08:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-6@freebsd.org X-SVN-Group: stable-6 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r200226 - stable/6/lib/libc/rpc X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 07 Dec 2009 19:08:10 -0000 Author: jhb Date: Mon Dec 7 19:08:10 2009 New Revision: 200226 URL: http://svn.freebsd.org/changeset/base/200226 Log: MFC 200061: The fd_mask type is an unsigned long, not an int, so treat the mask as a long instead of an int when examining the results of select() to look for RPC requests. Previously this routine would ignore RPC requests to sockets whose file descriptor mod 64 was greater than 31 on a 64-bit platform. Modified: stable/6/lib/libc/rpc/svc.c Directory Properties: stable/6/lib/libc/ (props changed) Modified: stable/6/lib/libc/rpc/svc.c ============================================================================== --- stable/6/lib/libc/rpc/svc.c Mon Dec 7 19:07:58 2009 (r200225) +++ stable/6/lib/libc/rpc/svc.c Mon Dec 7 19:08:10 2009 (r200226) @@ -598,8 +598,8 @@ svc_getreqset(readfds) maskp = readfds->fds_bits; for (sock = 0; sock < FD_SETSIZE; sock += NFDBITS) { - for (mask = *maskp++; (bit = ffs(mask)) != 0; - mask ^= (1 << (bit - 1))) { + for (mask = *maskp++; (bit = ffsl(mask)) != 0; + mask ^= (1ul << (bit - 1))) { /* sock has input waiting */ fd = sock + bit - 1; svc_getreq_common(fd);