From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:41688) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ye0mh-00078v-8U for qemu-devel@nongnu.org; Fri, 03 Apr 2015 08:33:16 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Ye0mc-0000t9-0x for qemu-devel@nongnu.org; Fri, 03 Apr 2015 08:33:15 -0400 Received: from mail-bn1bon0110.outbound.protection.outlook.com ([157.56.111.110]:16323 helo=na01-bn1-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ye0mb-0000t1-Rp for qemu-devel@nongnu.org; Fri, 03 Apr 2015 08:33:09 -0400 Received: from localhost.localdomain (B07892-01.ea.freescale.net [10.171.74.79] (may be forged)) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id t33B1uKw005179 for ; Fri, 3 Apr 2015 04:01:57 -0700 From: Bogdan Purcareata Date: Fri, 3 Apr 2015 11:01:54 +0000 Message-ID: <1428058914-32050-1-git-send-email-bogdan.purcareata@freescale.com> MIME-Version: 1.0 Content-Type: text/plain Subject: [Qemu-devel] [PATCH] nbd/trivial: fix type cast for ioctl List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org This fixes ioctl behavior on powerpc e6500 platforms with 64bit kernel and 32bit userspace. The current type cast has no effect there and the value passed to the kernel is still 0. Probably an issue related to the compiler, since I'm assuming the same configuration works on a similar setup on x86. Also ensure consistency with previous type cast in TRACE message. Signed-off-by: Bogdan Purcareata --- nbd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nbd.c b/nbd.c index 91b7d56..da81a5b 100644 --- a/nbd.c +++ b/nbd.c @@ -681,7 +681,7 @@ int nbd_init(int fd, int csock, uint32_t flags, off_t size) TRACE("Setting size to %zd block(s)", (size_t)(size / BDRV_SECTOR_SIZE)); - if (ioctl(fd, NBD_SET_SIZE_BLOCKS, size / (size_t)BDRV_SECTOR_SIZE) < 0) { + if (ioctl(fd, NBD_SET_SIZE_BLOCKS, (size_t)(size / BDRV_SECTOR_SIZE) < 0)) { int serrno = errno; LOG("Failed setting size (in blocks)"); return -serrno; -- 2.1.4