| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
call.
|
|
|
|
|
|
|
|
|
|
|
|
| |
shown that it is not useful.
Rename the relative count g_access_rel() function to g_access(), only
the name has changed.
Change all g_access_rel() calls in our CVS tree to call g_access() instead.
Add an #ifndef BURN_BRIDGES #define of g_access_rel() for source
code compatibility.
|
|
|
|
|
|
| |
get rid of them.
Prodded by: pjd
|
|
|
|
|
|
| |
- Typos.
Approved by: phk, scottl (mentor)
|
|
|
|
| |
Submitted by: Pawel Jakub Dawidek <nick@garage.freebsd.pl>
|
|
|
|
| |
Submitted by: Pawel Jakub Dawidek <nick@garage.freebsd.pl>
|
|
|
|
| |
Submitted by: Pawel Jakub Dawidek <nick@garage.freebsd.pl>
|
|
|
|
| |
Submitted by: Pawel Jakub Dawidek <nick@garage.freebsd.pl>
|
|
|
|
|
|
|
|
|
|
|
| |
rather than right before and right after. This allows these routines
to manipulate the mesh.
KASSERT that nobody creates a geom on an alien class.
Assert topology in g_valid_obj().
Approved by: re@
|
|
|
|
|
| |
while being tasted. I can moderately easy trigger this with atapi-cd, but
I do not fully understand the circumstances.
|
| |
|
| |
|
|
|
|
| |
Approved by: phk
|
| |
|
|
|
|
| |
Noticed by: tmm
|
| |
|
|
|
|
|
|
| |
twice.
Enforce that classes should have different names while we are here.
|
| |
|
|
|
|
|
|
|
|
|
| |
Use ->init() and ->fini() to handle the mutex in geom_disk.c
Remove the g_add_class() function and replace it with a standardized
g_modevent() function.
This adds the basic infrastructure for loading/unloading GEOM classes
|
| |
|
|
|
|
| |
Remember to free the buffer we got from g_read_data().
|
|
|
|
| |
Introduce g_wither_geom() to do the work in one single place.
|
| |
|
| |
|
|
|
|
| |
argument to determine if we can M_WAITOK in malloc.
|
| |
|
| |
|
| |
|
|
|
|
| |
Remove KASSERTS which checked that they were unused.
|
|
|
|
|
|
|
| |
test is built to test GEOM as running in the kernel.
This commit is basically "unifdef -D_KERNEL" to remove the mainly #include
related code to support the userland-harness.
|
|
|
|
| |
delta access-counts and proceed.
|
|
|
|
|
|
|
|
|
|
|
| |
event posting functions varargs to fill these.
Attribute g_call_me() to appropriate g_geom's where necessary.
Add a flag argument to g_call_me() methods which will be used to signal
cancellation of events in the future.
This commit should be a no-op.
|
| |
|
| |
|
| |
|
|
|
|
| |
sense.
|
| |
|
|
|
|
|
| |
%j in printfs, so put a newsted include in <sys/systm.h> where the printf
prototype lives and save everybody else the trouble.
|
| |
|
| |
|
|
|
|
| |
Approved by: trb
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
lower extremities.
Setting bit 4 in debugflags (sysctl kern.geom.debugflags=16) will
allow any open to succeed on rank#1 providers. This will generally
correspond to the physical disk devices: ad0, da0, md0 etc.
This fundamentally violates the mechanics of GEOMs autoconfiguration,
and is only provided as a debugging facility, so obviously error
reports on GEOM where this bit is or has been set will not be
accepted.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Insted of embedding a struct g_stat in consumers and providers, merely
include a pointer.
Remove a couple of <sys/time.h> includes now unneeded.
Add a special allocator for struct g_stat. This allocator will allocate
entire pages and hand out g_stat functions from there. The "id" field
indicates free/used status.
Add "/dev/geom.stats" device driver whic exports the pages from the
allocator to userland with mmap(2) in read-only mode.
This mmap(2) interface should be considered a non-public interface and
the functions in libgeom (not yet committed) should be used to access
the statistics data.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add debug.sizeof.g_stat sysctl.
Set the id field of the g_stat when we create consumers and providers.
Remove biocount from consumer, we will use the counters in the g_stat
structure instead. Replace one field which will need to be atomically
manipulated with two fields which will not (stat.nop and stat.nend).
Change add companion field to bio_children: bio_inbed for the exact
same reason.
Don't output the biocount in the confdot output.
Fix KASSERT in g_io_request().
Add sysctl kern.geom.collectstats defaulting to off.
Collect the following raw statistics conditioned on this sysctl:
for each consumer and provider {
total number of operations started.
total number of operations completed.
time last operation completed.
sum of idle-time.
for each of BIO_READ, BIO_WRITE and BIO_DELETE {
number of operations completed.
number of bytes completed.
number of ENOMEM errors.
number of other errors.
sum of transaction time.
}
}
API for getting hold of these statistics data not included yet.
|
|
|
|
| |
Add bio_t0 timestamp, and include <sys/time.h> where needed
|
|
|
|
| |
Merge M_NOWAIT/M_DONTWAIT into a single flag M_NOWAIT.
|
| |
|
| |
|
|
|
|
| |
Sponsored by: DARPA & NAI Labs
|
|
|
|
|
|
| |
Reenable the geom.ctl device so people can play with gbde.
Sponsored by: DARPA & NAI Labs
|