On Fri, Jul 22, 2005 at 07:05:46AM +0100, Peter Galbavy wrote: >George Georgalis wrote: > >>Is there a way to rectify the renaming? eg "set BIOS_0x80 = wd0" I want >>to keep my root on ATA, but frequently add and remove storage drives >>from a 4 high sata carrier. >> >> >Custom kernel. I have done this on one of mine for the opposite reason, >I wanted the SATA drive to be wd0 while normal BIOS / PCI mapping makes >it appear as wd2. I do not have the same hardware, obviously. I cannot >get a cut'n'paste at the moment as the machine is off and I am on the >way out to work. This makes your system difficult to support, only >consider it if you are comfortable.
If you could send that over I'd much appreciate it. On my system, I'm pretty sure the kernel is numbering the wd* disks on its own, irrespective of BIOS. On one occasion I got the kernel from the disk on the on-board sata controller, which then proceeded to mount "wd0" which OBSD 3.7 assigned as the disk on the pci sata controller. Yep, my DFLY root fs on an auxiliary sata disk was mounted rw on top of the OBSD ro root partition that was used to boot, I was even able to log in and run a few commands before it locked up hard. It seems the GENERIC disk numbering is exactly opposite of what one would hope for when adding disks to a system. Regardless of what bios boots, the kernel numbers pata and sata controllers in this order (I don't have any aux pata controllers to try) pci controller(s) (furthest from the cpu) on-board sata on-board pata So there is pretty much no way to add a disk to a system without renumbering all the disks (you would have to have all the controllers installed before hand and start with a root on channel 0 of the controller furthest from the cpu, with additional disks being added toward the on-board pata in the list above. I cannot think of a downside of numbering them in the opposite direction (other than breaking systems that are in place). For this particular host, I definitely need to get this fixed, as I have a 4 high sata disk carrier that is intended for use as auxiliary (frequently changed) disk storage, with the pci/on-board sata controllers. On another list I got some recommendations for kernel configs, but I've not had a chance to try them yet. I'm pretty green with *BSD, though expert with Linux http://lists.nycbug.org/pipermail/talk/2005-July/006172.html You want to change that to something like: config bsd root on sd0a swap on sd0b dumps on sd0b and then rebuild your kernel. You might even want to build one for sd0 and one for sd1, so if a new SATA disk appears as sd0, you can still boot from the normal drive. ...I don't think that will work, ie it will be easier to just change fstab each time I add or remove a disk. http://lists.nycbug.org/pipermail/talk/2005-July/006173.html You can perhaps hardcode to what you want: wd0 at pciide0 channel 0 drive 0 flags 0x0000 wd1 at ....... If you hardcode all your drives, including ones you add/remove, maybe there is a chance your devices would always stay the same. ...this will take me a day of toying with once I'm able to try it out, I'm not sure if "pciide0" is named by BIOS or the kernel, in this context, if that's a bios 0x80 I think it could work. the thread starts here, with a lot more details http://lists.nycbug.org/pipermail/talk/2005-July/006123.html I really wanted to use mount point /mnt/c{0,1}c{0,1} for on-board/aux sata Controler, Channel 0/1, with OS installed on primary pata channel and cdrom on secondary pata. I have the sense there is a way to use GENERIC, somehow I just need to tell the kernel the BIOS disk 0x80 is wd0, 0x81 is wd1, 0x82 is wd2 and so fourth, not the other way around. Maybe "wd0 at pciide0 ..." above is the easiest way. // George -- George Georgalis, systems architect, administrator <IXOYE>< http://galis.org/ cell:646-331-2027 mailto:[EMAIL PROTECTED]