From owner-freebsd-fs@FreeBSD.ORG Wed May 26 15:07:22 2010 Return-Path: Delivered-To: freebsd-fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BED53106566B for ; Wed, 26 May 2010 15:07:22 +0000 (UTC) (envelope-from gljennjohn@googlemail.com) Received: from mail-fx0-f54.google.com (mail-fx0-f54.google.com [209.85.161.54]) by mx1.freebsd.org (Postfix) with ESMTP id 4BA5F8FC1E for ; Wed, 26 May 2010 15:07:21 +0000 (UTC) Received: by fxm17 with SMTP id 17so1863420fxm.13 for ; Wed, 26 May 2010 08:07:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:received:received:date:from:to:cc:subject :message-id:in-reply-to:references:reply-to:x-mailer:mime-version :content-type:content-transfer-encoding; bh=HiBAYgLoSo86stkj/Oh5VcIl4YZC4F1BsjGG3EwfyME=; b=P5b2L7w9+Gc2PS2K4r+irK4glFCautF5pXhLlT9d6HX111wsGeEpUM78EQrlJI1ZZs xzJpmBK03mQt4nvD/GnA1hOvSyYe34HzWON/9vKuzerqkLcnZaJJRgJieTi9Yv77cXl7 7sLc0vN3SF5HsNbO8DqEH/0VwqRtOsFsDUXI8= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=date:from:to:cc:subject:message-id:in-reply-to:references:reply-to :x-mailer:mime-version:content-type:content-transfer-encoding; b=hrHI2rTdgQ4FTx+i5fvKxTNp2n7HPYrkRZBf1VFBQhi/ttuhgDsaORFvTZTKD7zy8T 1xIX8IYcQZxGHSGqfL9T5CeCnq+UsfAEW2IFzYNjlnc2xhGSYCeMyE6L8ScmzFcQ8jAp Y9CIZFLIc4Ng4GJKbviA/mNQh6KspZ1Bqkhpw= Received: by 10.223.98.24 with SMTP id o24mr7749087fan.29.1274886440768; Wed, 26 May 2010 08:07:20 -0700 (PDT) Received: from ernst.jennejohn.org (p578E2F2C.dip.t-dialin.net [87.142.47.44]) by mx.google.com with ESMTPS id g10sm802160fai.12.2010.05.26.08.07.18 (version=TLSv1/SSLv3 cipher=RC4-MD5); Wed, 26 May 2010 08:07:18 -0700 (PDT) Date: Wed, 26 May 2010 17:07:16 +0200 From: Gary Jennejohn To: Dima Naumov Message-ID: <20100526170716.11f24c4a@ernst.jennejohn.org> In-Reply-To: <4BFD8E12.9040909@rambler.ru> References: <4BFD8E12.9040909@rambler.ru> X-Mailer: Claws Mail 3.7.5 (GTK+ 2.18.7; amd64-portbld-freebsd9.0) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: freebsd-fs@freebsd.org Subject: Re: FS to physical disk block conversion X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: gljennjohn@googlemail.com List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 May 2010 15:07:22 -0000 On Wed, 26 May 2010 21:09:38 +0000 Dima Naumov wrote: > I am sorry for my English. OK my problem: i do not understand how i can > get real address of disk block, when i use macros fsbtodb() to convert > fs address to physical disk block address i receive odd result, explain > me please where my error. > Example: > struct fs *sblock; > ino_t inode = 2; > caddr_t inoblock; > struct ufs2_dinode * ino; > ... > if(pread(dev_fd, ino, sizeof(struct ufs2_dinode),\ > (sblock->fs_bsize * fsbtodb(sblock, \ > ino_to_fsba(sblock, inode)))) != sizeof(struct > ufs2_dinode)) > error(__LINE__, errno); > After executing this string a not get correct inode in "ino". Please > explain, it important to me! > See /usr/src/sbin/dump/traverse.c:getino() for how to do it. -- Gary Jennejohn