Date: Wed, 1 Nov 1995 17:40:01 -0700 (MST) From: Terry Lambert <terry@lambert.org> To: nate@rocky.sri.MT.net (Nate Williams) Cc: terry@lambert.org, nate@rocky.sri.MT.net, jkh@time.cdrom.com, hackers@FreeBSD.org Subject: Re: More nits Message-ID: <199511020040.RAA00822@phaeton.artisoft.com> In-Reply-To: <199511012300.QAA15788@rocky.sri.MT.net> from "Nate Williams" at Nov 1, 95 04:00:23 pm
next in thread | previous in thread | raw e-mail | index | archive | help
> > > Terry, notice *what* the subject is. It's not about changing how things > > > are done, but *when* things are done. :) > > > > That would be "Re: More nits". > > That's the subject of the email, but not the subject of your diatribe. Wrong. You are misrepresenting me. > > And the partition editor is fdisk. > > Right, and *after* you leave the fdisk editor, should Jordan ask to > install the MBR then? Sounds like a 'different' tool than fdisk to me. He didn't say *after*, he said *when*. As in "a consequent action of". As in "implemented by the exit code rather than by code following the exit". [ ... ] > See above. "I will have it ask when you leave the editor". This > implies to me (especially after having used the intall tools for *many* > intalls) that 'when I leave the editor' sysinstall will ask me questions > on my MBR. I take this to mean that 'right after' I leave the editor > (because you *MUST* write the partition table *BEFORE* the new MBR will > be valid) I will have the option of installing a 'new' MBR to select my > 'new' partition. :) I take this to mean "when" just like he said in the quoted text above. He didn't say "I will have it ask after you leave the editor". ----- > > > [ Irrelevant ranting about fdisk and devfs deleted ] > > > > > > Since *NONE* of this stuff is relevant until *after* FreeBSD is booted, > > > how is at all related to the partition menu? The MBR stuff is necessary > > > for the PC hardware, and once FreeBSD is running it's no longer an > > > issue. > > > > So now FreeBSD is not running when the install takes place? BZZZZZZZT. > > Yes, but what does this have to do with devfs? We *don't* have devfs, > and writing a MBR entry doesn't need it. For God sake's, it can only > exist in *one* place on the disk, and can't exist *ANY* other place on > the disk. Why do I need a devfs to find it, since it *never* moves. The devfs is the rationale for not munging it uncermoniously into the fdisk utility itself. Which is what I was objecting to. I don't give a damn how it ends up appearing to the user, it's whether the way it is implemented is going to cause it to have to be reimplemented later or not, when both approaches are otherwise *identical* cost and the end appearance to the user is *identical*. To answer your question, you need the devfs to find where it goes because it may not go anywhere at all. You obviously missed the discussion about installing BSD onto WD1007 drives, which only works with a *naked* BSD partition, where the disk MBR *is* the BSD second stage boot because of the non-linear nature of WD1007 BIOS translation when the controller's sector sparing option has been enabled. Without a devfs, you can make a standalone utility that looks for 0xaa55... AND WHICH ISN'T PART OF THE FDISK CODE: meaning it gets run *after* and not *when* you leave the editor. THIS IS BROKEN, since it doesn't use devfs like a future version would, but it's less broken than rolling platform specific code into a supposedly platform independent utility (fdisk). An install without a DOS partition table and MBR works on the WD1007 because there isn't a sector reserved by the BIOS for sparing in the first 8k + sizeof(disklabel) of the drive (another good reason to avoid jacking the second stage boot up to 100k, like some have suggested recently). Putting the MBR write in the fdisk puts another nail in the coffin of being able to install without a DOS partition table. I'm not saying that an install without a DOS partition table shouldn't be the default: it should. But it should be *possible* to run on older hardware, don't you think? And that requires *removing* the partition table requirement, not *adding* to it. Currently, the stupid code won't allow installs without DOS partition tables, and so WD1007 installs require setting two jumpers (W8 & W14) and doing a low level format on the stupid drive. THIS IS BROKEN. A user is likely to bail rather than install FreeBSD at this point. It is a pain to get the utility, it's a pain to get the drive data necessary, and it's a pain to get the jumper settings for your particular controller revision. Pain, pain, pain == no install of FreeBSD. Then the stupid code won't allow an install if the BSD area of the disk spans cylinder 1024 because the stupid bad144 code in the second stage boot can't read the bad sector replacements, which may not be in use anyway. THIS IS BROKEN. The user is likely to bail to Linux, rather than install FreeBSD at this point, since then at least he can use his whole drive instead of just phisical cylinders 0-1023 on a 2000+ cylinder 700M ESDI disk. Here we make the requirement that they kill the translation that makes the rest of the drive visible to DOS, then we turn around and make the rest of the invisible to FreeBSD. Pain == a limit unique to FreeBSD == no install of FreeBSD. Because the bad144 code puts the replacement sectors at the end of the disk. THIS IS ALSO BROKEN. The devfs comes in here because it supports the idea of "media perfection" as a seperate logical layer (non-collapsable). And the replacement sectors can be made to *always* be below 1023. Pain == a limit unique to FreeBSD == no install of FreeBSD. Alternately, you could "fix" bad144, leaving in the limitations that the disklabel and superblock blocks can still go bad and hose you, but removing the one of the three problems that happens to be inconveniencing you in this particular case. That would be expedient, so it's probably what Microsoft and USL would do (quetionable company). > > > Huh? Moving where he installs the MBR to a different spot on the menu > > > is hardly adding a *wart* to the slice API. > > > > Making it a default prompt after editing the partitions in fdisk would be. > > Why? It's the most logical place to put it, hence the reason it was > brought up in the first place. No. Making it "a default prompt in the *install program* after *exiting* the fdisk utility such that it is *apparently* a prompt after editing the partitions in fdisk" is the most logical place to put it. > Dare I ask, where would you put in in the menu, knowing that it is a > *mandatory* question. The same place, of course, just in a different underlying utility, said utility NOT BEING FDISK ITSELF. Or I'd put it *before* the partitioning, since it's possible that the MBR you want to write is the BSD second stage boot, not the DOS MBR replacement at all. And the partition table you will be editing may not exist until you write an MBR that contains a partition table. You are doing what Jordan did, confusing logical and implementational architectures. This particular case is a bleed-through boundry where the implementation should match the logical abstraction to prevent having to *rewrite everything*, yet again, when the devfs *is* online. Regards, Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199511020040.RAA00822>