Commit Graph

139 Commits

Author SHA1 Message Date
jkh
5b33a2af7c + add u_long sector_size to struct disk (documented in libdisk.3)
+ make Open_Disk sense the sector size by trying 512, 1024 and 2048
  in this order. This makes the kernel note that
  dscheck(cd1): bio_bcount 512 is not on a sector boundary (ssize 2048)
  dscheck(cd1): bio_bcount 1024 is not on a sector boundary (ssize 2048)
  if 2048 is the sector size. If this worries anyone: the message is from
  /usr/src/sys/kern/subr_diskslice.c and shutups are to be placed there.
+ Have read_block and write_block use an additional parameter, the
  sector size.
+ replace all barfout calls with return NULL, 0, __LINE__, etc.
  Note that this does NOT emit diagnostics. More often than not,
  you don't want library functions to scribble on stderr -- it may
  not even be available. The right thing is to propagate the error
  condition to upper management. The app should take care of errors.
+ use d1->sector_size instead of 512 in various places. I've left many
  places untouched, especially those writing MBRs. I simply added
  another arg hardcoded as 512. This is because I would not know what
  I'm doing... I felt this approach would be reasonably backward
  compatible and not introduce any new bugs in critical software.
  Famous last words. Messing with MBRs might soon put me in the same
  screwup meister category as, uh, never mind.  :-)
+ bump the max no of disks from 20 to 32 (due to PR 24503).

PR:		8434 / 8436 / 24503
Submitted by:	Jens Schweikhardt <schweikh@schweikhardt.net>
2001-05-13 20:08:54 +00:00
obrien
be7c1d1248 Add spaces around operators.
It's OK, the Project and afford them now -- they aren't as expensive as
they used to be.
2001-04-01 12:18:20 +00:00
obrien
51dae2254a Correct a comment. 2001-04-01 11:44:12 +00:00
obrien
090766603f Try to untangle some of the #ifdef spaghetti.
Also, looking to the future, don't assume all the world is an i386 and all
its disk layout brain damage will be repeated by other platforms.  So all
the diking out if we are an Alpha, becomes adding in if we are an i386.
2001-04-01 11:37:31 +00:00
obrien
e2cf0ccf62 Add back <err.h> for warn().
(of course it's pretty stupid to call it, as printf doesn't work w/in
sysinstall, and sysinstall is the only consumer of libdisk)
2001-04-01 11:32:56 +00:00
obrien
a47898d019 Quiet warnings on the Alpha. 2001-04-01 11:22:40 +00:00
obrien
a5f4cb4970 Add back <err.h> for warn().
(of course it's pretty stupid to call it, as printf doesn't work w/in
sysinstall, and sysinstall is the only consumer of libdisk)
2001-04-01 10:44:52 +00:00
ru
25ef23ac1c MAN[1-9] -> MAN. 2001-03-27 17:27:19 +00:00
obrien
981727ddcf Libraries should _never_ call exit() themselves (or its alternate spelling
`err()').  libdisk does! and additionally libdisk gets confused on Alpha
disks with foreign disklabels, throws up its hands and exits.  This is
the cause of the "going no where without my init" install bug on the Alpha.

So now on the Alpha, rather than call err(), we print the error string and
continue processing.

Submitted by:	jkh
2001-03-18 21:30:11 +00:00
bde
82a1988f70 Fixed bitrot in prototype(s) in synopsis. 2001-02-05 23:56:05 +00:00
ru
8a6f8b5fe4 mdoc(7) police: split punctuation characters + misc fixes. 2001-02-01 16:38:02 +00:00
ru
8ba4187688 Prepare for mdoc(7)NG. 2000-12-29 14:08:20 +00:00
rnordier
6c60f0fcfd Do install-time configuration of the i386 boot0 boot manager. At
present, this is limited to turning on the packet option if any of
disk slices begin above cylinder 1023.  The effect of this change
should therefore be to automatically enable LBA support, as needed,
when installing FreeBSD.

Something-of-the-kind-requested-by: peter
2000-12-12 17:25:06 +00:00
ru
1a6c69e84a log 2000-11-22 09:23:54 +00:00
ru
7d99729431 Use Fx macro wherever possible. 2000-11-14 11:20:58 +00:00
ru
a6f5d950d8 Avoid use of direct troff requests in mdoc(7) manual pages. 2000-11-10 17:46:15 +00:00
jkh
a1a6483d6a MFS: add ATA raid support for sysinstall 2000-11-06 23:15:01 +00:00
nyan
212e24871c Use kern.disks sysctl on PC-98. 2000-10-21 10:08:57 +00:00
phk
fc5495e38e Turn dkcksum() into an __inline function.
Change its type to u_int_16_t.
2000-09-16 13:43:00 +00:00
msmith
9f76441881 Teach libdisk about 'aac' 2000-09-13 05:04:48 +00:00
nyan
784618782e - Added support for installing boot0 and boot0.5 for PC-98.
- Cosmetic changes.
2000-08-12 14:20:31 +00:00
nyan
2a86f209a7 - Fixed warnings and typo.
- Recognize slice type 0x24 as FAT (only PC-98).

Submitted by:	Nobuyuki Koganemaru <kogane@koganemaru.co.jp>
2000-08-08 04:01:51 +00:00
nyan
fb32fc5d86 Don't use kern.disks sysctl on PC-98 because the wd driver doesn't call
disk_create() function.
2000-08-07 02:14:44 +00:00
jhb
b4c0d6aa68 - Allow support for MBR boot loaders that are longer than one sector. As
with fdisk, ensure that they are a multiple of the sector size in length.
- Axe all the 1024 cylinder checks as they are no longer relevant with the
  fixed bootstrap.
2000-07-12 18:05:18 +00:00
kris
b7f030c2c0 Don't call printf without a format string. 2000-07-11 23:49:24 +00:00
jhb
033721fb7a _PATH_DEV'ify libdisk 2000-06-28 22:28:50 +00:00
nbm
0b74e561b2 Let Disk_Names() take advantage of the kern.disks sysctl if it's
available.  If not, it falls back to the existing hack and slash method.

A positive side effect is that non-root users may now use Disk_Names(),
for non-dangerous libh/disk.tcl testing.

Reviewed by:	phk
2000-06-23 14:01:06 +00:00
nyan
78e26067f4 Re-support "wd" if PC98 is defined. Because PC-98 still uses the wd driver. 2000-06-05 13:33:39 +00:00
msmith
2dbe92be83 /dev/rXXX -> /dev/XXX
This should fix sysinstall and other tools that don't expect the 'r' devices
to exist anymore (and thus don't create them).
2000-05-31 00:51:57 +00:00
msmith
6af3825c82 De-support 'wd'; with it making a dual appearance with 'ad', things
depending on libdisk to detect a list of actually-there disk devices
were providing duplicate entries (eg. sysinstall).
2000-05-30 15:18:30 +00:00
alfred
5ba5b0230b fix stray 'i' from editor. 2000-05-25 08:24:38 +00:00
msmith
3040b8e835 Teach libdisk about 'twe' disks. 2000-05-25 02:23:47 +00:00
jkh
9809e4d713 catch up to the modern ATAPI disk naming conventions and add floppy
disks.

Submitted by:	bde
2000-05-24 20:25:42 +00:00
joerg
b13c8f158a Reassemble a sentence that has been botched in rev 1.4.
Reported by:	Alexander Leidinger <Alexander@leidinger.net>
2000-04-25 13:53:48 +00:00
phantom
c509417387 Introduce .Lb macro to libdisk manpage 2000-04-22 15:58:49 +00:00
obrien
04946447c6 Raw devices are now the normal device name, not prefixed with 'r'. 2000-04-19 18:51:28 +00:00
kato
54a7094e5d Changes for PC-98. 2000-03-29 15:10:28 +00:00
charnier
df60edbd20 lowercase error message 2000-03-26 15:14:16 +00:00
imp
a4af1d9ca0 Fix fd leak in libdisk's Disk_Names() 2000-03-10 22:54:04 +00:00
jlemon
af76e7b9bc Fix pointer addition bug (3 -> 4).
Submitted by:	 david.w.james@bt.com
2000-03-09 15:05:20 +00:00
jlemon
b81515b53b Correct device naming for IDA disk nodes (idad) 2000-03-08 18:14:02 +00:00
jkh
f657eab6de Hide more debugging behind isDebug(); what's currently
spewing out will only alarm people.
2000-02-18 03:06:43 +00:00
rgrimes
c127d0e61e Replace beforeinstall target with new variables used by .mk system.
Reviewed by:	marcel, and make world
2000-01-14 07:57:47 +00:00
phk
e396740391 Just on the off-chance that somebody might use libdisk in a totally
lobotomized environment, say booted from a floppy with no /etc full
of password and group files, give sensible fallbacks for roots uid
and operators gid.

This might fix sysinstall.
1999-12-22 19:06:29 +00:00
jkh
19ab44d39b Catch up to the fact that block devices are toast.
Teach about the afd driver.
Teach new char dev for ad driver.
Make ownerships correct.

Submitted by:	jhb
1999-12-15 08:33:56 +00:00
msmith
517fd10f04 Remove 'sd' support. SCSI disks are known as 'da' these days. 1999-11-27 21:20:57 +00:00
phk
ba79ac5ee3 Remove BAD144 support 1999-11-27 14:33:30 +00:00
msmith
9747814286 Teach libdisk about the AMI and Mylex RAID drivers. You should be able
to install directly to arrays managed by these controllers now.
1999-11-02 03:40:14 +00:00
phantom
6f948b9645 fix couple mdoc error
mention library name in header (.Nd field) - it allows to use "man -k libdisk"
1999-10-28 15:42:48 +00:00
peter
76f0c923fe $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00