From owner-freebsd-bugs@FreeBSD.ORG Mon Feb 20 21:50:09 2006 Return-Path: X-Original-To: freebsd-bugs@hub.freebsd.org Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3122616A420 for ; Mon, 20 Feb 2006 21:50:09 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id F30CC43D49 for ; Mon, 20 Feb 2006 21:50:08 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id k1KLo8Fs029232 for ; Mon, 20 Feb 2006 21:50:08 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id k1KLo8EJ029231; Mon, 20 Feb 2006 21:50:08 GMT (envelope-from gnats) Date: Mon, 20 Feb 2006 21:50:08 GMT Message-Id: <200602202150.k1KLo8EJ029231@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org From: Jeff Anton Cc: Subject: Re: kern/91488: [isofs] [patch] cd9660 filesystem cannot handle files larger than 2GB X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Jeff Anton List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Feb 2006 21:50:09 -0000 The following reply was made to PR kern/91488; it has been noted by GNATS. From: Jeff Anton To: bug-followup@FreeBSD.org, freebsd-cd9660-bug@z42.net Cc: Subject: Re: kern/91488: [isofs] [patch] cd9660 filesystem cannot handle files larger than 2GB Date: Mon, 20 Feb 2006 13:42:33 -0800 The initial patch is not enough for the amd64 platform and any other platform where the long and unsigned long types have more bits than the int types. I also needed... --- cd9660_vfsops.c.org Thu Aug 18 04:32:06 2005 +++ cd9660_vfsops.c Mon Feb 20 13:32:54 2006 @@ -756,7 +756,7 @@ } ip->iso_extent = isonum_733(isodir->extent); - ip->i_size = isonum_733(isodir->size); + ip->i_size = (u_int32_t) isonum_733(isodir->size); ip->iso_start = isonum_711(isodir->ext_attr_length) + ip->iso_extent; /* I hope this gets into the main code path. I'm going to have many files in the multi Gbyte size range (hence the 64 bit platform) for a long time to come.