From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17996 invoked by alias); 18 Jun 2008 19:26:41 -0000 Received: (qmail 17986 invoked by uid 22791); 18 Jun 2008 19:26:40 -0000 X-Spam-Status: No, hits=-1.3 required=5.0 tests=AWL,BAYES_20,SUBJECT_FUZZY_TION X-Spam-Check-By: sourceware.org Received: from anchor-post-37.mail.demon.net (HELO anchor-post-37.mail.demon.net) (194.217.242.87) by sourceware.org (qpsmtpd/0.31) with ESMTP; Wed, 18 Jun 2008 19:26:15 +0000 Received: from calivar.demon.co.uk ([83.104.54.243] helo=xl5.calivar.com) by anchor-post-37.mail.demon.net with esmtp (Exim 4.68) id 1K93IL-0005D0-N7; Wed, 18 Jun 2008 19:26:13 +0000 Received: from xl5.calivar.com (localhost [127.0.0.1]) by xl5.calivar.com (Postfix) with ESMTP id 5A7CD1386A9; Wed, 18 Jun 2008 18:18:19 +0100 (BST) To: Frank Pagliughi Cc: ecos-devel@ecos.sourceware.org Subject: Re: Partition support for FAT file system References: <92187523-464B-4EFE-A03F-AA54E4AD3E6A@wh2.tu-dresden.de> <20080618095232.GA10893@lunn.ch> <38B53518-83B4-47A6-A64D-FC8266DB0602@wh2.tu-dresden.de> <20080618102248.GB10893@lunn.ch> <136E7846-7252-43D7-A7A4-02ED213ADFF8@wh2.tu-dresden.de> <48593730.1050600@mindspring.com> <48593F4C.7000808@mindspring.com> From: Nick Garnett Original-Sender: nickg@ecoscentric.com Date: Wed, 18 Jun 2008 19:26:00 -0000 In-Reply-To: <48593F4C.7000808@mindspring.com> Message-ID: User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Mailing-List: contact ecos-devel-help@ecos.sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: ecos-devel-owner@ecos.sourceware.org X-SW-Source: 2008-06/txt/msg00030.txt.bz2 Frank Pagliughi writes: > So then it's the IDE driver that should scan the partition table on > the physical disk and export separate mount points for each? Would > that be the proper way to go? No, the generic disk layer already does all of this. It reads the MBR from the disk, looks for a partition table and sets up its data structures accordingly. Take a look in io/disk/current/src/disk.c, specifically the read_mbr() and read_partition() functions. And the code in disk_lookup() which selects the right partition. In the same way that it shouldn't be done at too high a level, partitioning shouldn't be done at too low a level either. Partitions can exist on a wide variety of media, not just IDE disks. -- Nick Garnett eCos Kernel Architect eCosCentric Limited http://www.eCosCentric.com The eCos experts Barnwell House, Barnwell Drive, Cambridge, UK. Tel: +44 1223 245571 Registered in England and Wales: Reg No: 4422071