Poul-Henning Kamp
c0c393a2aa
Re-order the the initialization slightly to improve structure.
2003-05-05 08:58:12 +00:00
Poul-Henning Kamp
0195276f54
Use a dedicated malloc(9) bucket for sector storage.
2003-05-05 08:37:07 +00:00
Poul-Henning Kamp
3fd530f7ec
Don't warn if the rawoffset is zero, that is actually the best value it
...
could have.
2003-05-05 08:30:59 +00:00
Poul-Henning Kamp
b9275c8fc6
Turn the check that rawoffset == mbroffset into a warning instead.
2003-05-05 06:46:49 +00:00
Poul-Henning Kamp
b624374de8
Only accept a rawoffset if it is identical to the mbroffset.
2003-05-04 19:26:31 +00:00
Poul-Henning Kamp
7f9e81b703
Add a way to read the current mbroffset from a BSD label class.
2003-05-04 19:25:48 +00:00
Poul-Henning Kamp
1ee055e692
Add gctl_set_param() function.
2003-05-04 19:24:34 +00:00
Poul-Henning Kamp
ce40bcd0d1
Remove debugging printfs which should not have been committed.
2003-05-04 18:48:25 +00:00
Poul-Henning Kamp
a767c3daa3
Add a OAM interface for changing the label and writing the boot code.
2003-05-03 08:01:34 +00:00
Poul-Henning Kamp
951fd0d157
remove unused variables.
...
Spotted by: dougb
2003-05-03 07:12:15 +00:00
Poul-Henning Kamp
56dde750d5
Make bsd_disklabel_le_enc calculate the checksum and fill it in.
...
(If there is a legitimate need to correctly encode and pack a
disklabel with an invalid checksum custom tools can be built for
that.)
Make bsd_disklabel_le_dec() validate the magics, number of partitions
(against a new parameter) and the checksum.
Vastly simplify the logic of the GEOM::BSD class implementation:
Let g_bsd_modify() always take a byte-stream label.
This simplifies all users, except the ioctl's which now have to
convert to a byte-stream first. Their loss.
g_bsd_modify() is called with topology held now, and it returns
with it held.
Always update the md5sum in g_bsd_modify(), otherwise the check
is no use after the first modification of the label. Make the
MD5 over the bytestream version of the label.
Move the rawoffset hack to g_bsd_modify() and remove all the
inram/ondisk conversions.
Don't configure hotspots in g_bsd_modify(), do it in taste instead,
we do not support moving the label to a different location on the
fly anyway.
This passes all current regression tests.
2003-05-02 22:46:13 +00:00
Poul-Henning Kamp
81377a3f17
Pull in bcopy() prototype from <string.h> when compiled in userland.
2003-05-02 19:53:55 +00:00
Poul-Henning Kamp
039b4cba75
Considering that I did cast the arguments to (intmax_t) I must have
...
been sleepy since I used %qd instead of %jd.
2003-05-02 19:08:57 +00:00
Poul-Henning Kamp
3daf7274a1
Style improvement.
2003-05-02 12:57:40 +00:00
Poul-Henning Kamp
3110102a73
Use g_wither_geom() and plug memory leaks.
2003-05-02 12:52:51 +00:00
Poul-Henning Kamp
3e7b7bb1cb
Plug memory leaks.
2003-05-02 12:49:41 +00:00
Poul-Henning Kamp
5ffb2c8bfd
Use an uma-zone for allocation bio requests.
2003-05-02 12:36:12 +00:00
Poul-Henning Kamp
c9c29450f5
Use g_slice_spoiled() instead of g_std_spoiled().
...
Add XXX comment about minor memory leak until I can fix it.
2003-05-02 08:33:26 +00:00
Poul-Henning Kamp
7da144d91c
Use g_slice_spoiled() instead of g_std_spoiled().
2003-05-02 08:21:02 +00:00
Poul-Henning Kamp
a0c89548a3
Use g_slice_spoiled().
...
Free buffer from g_read_data().
2003-05-02 08:13:03 +00:00
Poul-Henning Kamp
c4da4e46b2
Back out all the stuff that didn't belong in the last commit.
2003-05-02 06:42:59 +00:00
Poul-Henning Kamp
e65ab0f83f
Use g_slice_spoiled() rather than g_std_spoiled().
...
Remember to free the buffer we got from g_read_data().
2003-05-02 06:36:14 +00:00
Poul-Henning Kamp
4f806d2428
Use g_slice_spoiled() not g_std_spoiled()
2003-05-02 06:34:51 +00:00
Poul-Henning Kamp
28ce9efcef
Use g_slice_spoiled() rather than g_std_spoiled()
2003-05-02 06:33:59 +00:00
Poul-Henning Kamp
afec8eb8ad
Use g_slice_spoiled() rather than g_std_spoiled().
2003-05-02 06:33:26 +00:00
Poul-Henning Kamp
15649213a6
Use a more tailored spoil routine for slices, and take advantage of
...
g_wither_geom() to do most of the work for us.
2003-05-02 06:29:33 +00:00
Poul-Henning Kamp
3ddef7422c
Style improvement.
2003-05-02 06:22:48 +00:00
Poul-Henning Kamp
03af3a23dd
Use g_wither_geom() for cleanup.
2003-05-02 06:22:32 +00:00
Poul-Henning Kamp
d6227ae71f
Rework the "withering" mechanism:
...
Introduce g_wither_geom() to do the work in one single place.
2003-05-02 06:15:27 +00:00
Poul-Henning Kamp
82b53b8dc8
Rename g_slice_init() to the more appropriate g_slice_alloc() and give
...
it a g_slice_free() partner function.
2003-05-02 05:33:27 +00:00
Poul-Henning Kamp
516b02faf7
style improvement.
2003-05-02 05:26:47 +00:00
Poul-Henning Kamp
9dfffbc959
Get rid of trivial function g_destroy_event().
2003-05-02 05:26:19 +00:00
Poul-Henning Kamp
6a543b1031
Plug some memory-leaks.
2003-05-01 21:07:08 +00:00
Poul-Henning Kamp
606402511a
Remove the now obsolete geomidorname hack.
2003-05-01 20:32:24 +00:00
Poul-Henning Kamp
c8589ad169
Add a new flag, EV_CANCELED, and use it to make g_waitfor_event() return
...
EAGAIN if an event got canceled.
2003-05-01 19:43:52 +00:00
Poul-Henning Kamp
2ab31b05ba
When events on a reference is cancelled, check our doorstep first,
...
it might be an orphan.
2003-05-01 19:24:00 +00:00
Poul-Henning Kamp
e931331eaa
Remove now unneeded special case for "geom.ctl".
2003-05-01 18:18:14 +00:00
Yoshihiro Takahashi
4b4582a84c
Remove DIOCGPC98 ioctl.
2003-05-01 14:40:16 +00:00
Yoshihiro Takahashi
50cf98ed97
- Move decoding pc98_partition function into geom_pc98_enc.c.
...
- Add encoding pc98_partition function.
2003-05-01 13:44:24 +00:00
Marcel Moolenaar
b52e9eb6b6
Don't emulate a MBR by handling the MBR::type attribute. It is
...
not needed at all. The BSD class will attach to a GPT class without
it.
2003-05-01 01:51:28 +00:00
Mark Murray
51da11a27a
Fix some easy, global, lint warnings. In most cases, this means
...
making some local variables static. In a couple of cases, this means
removing an unused variable.
2003-04-30 12:57:40 +00:00
Poul-Henning Kamp
c7f3baedf3
Fix an obscure fencepost error in GBDE's sector mapping code:
...
For certain combinations of sectorsize, mediasize and random numbers
(used to define the mapping), a multisector read or write would ignore
some subset of the sectors past the first sector in the request because
those sectors would be mapped past the end of the parent device, and
normal "end of media" truncation would zap that part of the request.
Rev 1.19+1.20 of g_bde_work.c added the check which should have alerted
me to this happening. This commit maps the request correctly and
adds KASSERTS to make sure things stay inside the parent device.
This does not change the on-disk layout of GBDE, there is no need to
backup/restore.
2003-04-29 19:46:42 +00:00
Poul-Henning Kamp
a17da2aa74
Typo in last commit: Do not press xZZ to leave vi(1).
2003-04-29 19:38:55 +00:00
Poul-Henning Kamp
ca8f372bbc
When a bio comes back from below with a zero error code, check that
...
it wrote the full length. The only case where this should be able
to happen is if we try to read/write past the end and the request
is truncated. We obviously should never try to do that, so this
code should never activate.
2003-04-29 19:37:36 +00:00
Alexander Kabaev
104a9b7e3e
Deprecate machine/limits.h in favor of new sys/limits.h.
...
Change all in-tree consumers to include <sys/limits.h>
Discussed on: standards@
Partially submitted by: Craig Rodrigues <rodrigc@attbi.com>
2003-04-29 13:36:06 +00:00
Poul-Henning Kamp
90336bb4d8
I accidentally leaked this debugging tool in with my last commit.
...
Disable it with a direct warning.
2003-04-28 17:57:12 +00:00
Poul-Henning Kamp
306babd20c
Rename g_bde_get_sector() to g_bde_get_keysector() and pick up the
...
offset from the work packet.
2003-04-28 06:38:31 +00:00
Poul-Henning Kamp
11ca41a9bb
Only attempt total cache-purge once in case of failure.
2003-04-28 06:19:41 +00:00
Poul-Henning Kamp
035694b29a
Better criteria for skipping disk reading BIO_READ work packets.
2003-04-28 06:15:39 +00:00
Poul-Henning Kamp
d8e7c92c9e
Explicitly set the sector state to JUNK if we encounter a read-error.
2003-04-28 06:10:35 +00:00