#
4ec35300 |
| 08-Feb-2003 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Move the g_stat struct to its own .h file, we will export it to other code.
Insted of embedding a struct g_stat in consumers and providers, merely include a pointer.
Remove a couple of <sys/time.h>
Move the g_stat struct to its own .h file, we will export it to other code.
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.
show more ...
|
#
801bb689 |
| 08-Feb-2003 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Commit the correct copy of the g_stat structure.
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 t
Commit the correct copy of the g_stat structure.
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.
show more ...
|
#
7725f875 |
| 07-Feb-2003 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Add the new statistics structure, put one in consumers and providers. include <sys/time.h> as necessary.
|
#
e55d9b0b |
| 28-Jan-2003 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Use a void * to carry the private data for return-call'ed ioctl requests. Amongst other things this avoids a complex workaround in the userland regression bits.
|
Revision tags: release/5.0.0_cvs, release/5.0.0 |
|
#
abb50a48 |
| 13-Jan-2003 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Remove g_silence(). It does not do anything anymore.
|
#
0f9d3dba |
| 16-Dec-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Constification and some s/int/u_int/ changes.
|
#
c7f74a49 |
| 01-Dec-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Use more mnemonic argument names in the access functions.
Sponsored by: DARPA & NAI Labs Approved by: re (blanket)
|
#
e6e14239 |
| 06-Nov-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Straighten up the geom.ctl config interface definitions.
Sponsored by: DARPA & NAI Labs
|
#
ce225127 |
| 25-Oct-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Add a g_dev_print() function which prints all the /dev entries GEOM know about.
|
#
48444d62 |
| 20-Oct-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Make the sectorsize a property of providers so we can include it in the XML output.
Sponsored by: DARPA & NAI Labs
|
#
9b232f14 |
| 20-Oct-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Make it possible to specify also via geom_t ID in the geom.ctl config ioctl.
Sponsored by: DARPA & NAI Labs.
|
#
220aecb8 |
| 15-Oct-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Constification ? Yes, out that door, row on the left, one patch each.
Sponsored by: DARPA & NAI Labs
|
#
60e0e42e |
| 14-Oct-2002 |
Jake Burkholder <jake@FreeBSD.org> |
Moved geom class initialization to SI_SUB_DRIVERS from SI_SUB_PSEUDO. This fixes mounting root from md(4) which calls disk_create() early.
|
#
6b4abfd6 |
| 14-Oct-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Implement the GEOMCONFIGGEOM ioctl which can be used to manually create and configure an instance of a class on a give provider.
Sponsored by: DARPA & NAI Labs
|
#
3101ed1b |
| 13-Oct-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Add the outline of the "/dev/geom.ctl" handling code.
Sponsored by: DARPA & NAI Labs.
|
#
e970552d |
| 13-Oct-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Give GEOM modules a chance to specify their own init routine, in case they have special requirements.
Sponsored by: DARPA & NAI Labs.
|
Revision tags: release/4.7.0_cvs |
|
#
adfa3213 |
| 07-Oct-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Copyin and copyout are only possible from a process-native thread, and therefore we need a way for ioctl handlers to run in that thread in GEOM. Rather than invent a complicated registration system
Copyin and copyout are only possible from a process-native thread, and therefore we need a way for ioctl handlers to run in that thread in GEOM. Rather than invent a complicated registration system to recognize which ioctl handler to use for a given ioctl, we still schedule all ioctls down the tree as bio transactions but add a special return code that means "call me directly" and have the geom_dev layer do that.
Use this for all ioctls that make it as far as a diskdriver to avoid any backwards compatibility problems.
Requested by: scottl Sponsored by: DARPA & NAI Labs
show more ...
|
#
72840432 |
| 30-Sep-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Retire g_io_fail() and let g_io_deliver() take an error argument instead.
Sponsored by: DARPA & NAI Labs.
|
#
90b1cd56 |
| 30-Sep-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Introduce g_write_data() function.
Sponsored by: DARPA & NAI Labs
|
#
5b3317e9 |
| 30-Sep-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Add missing g_enc_le2().
Sponsored by: DARPA & NAI Labs.
|
#
9169e800 |
| 27-Sep-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Various no-ops:
Add a __unused.
Make the 2byte decoder functions return 16 bits for the benefits of picky lints.
No need to grab giant around a tsleep() when we have a timeout.
Sponsored by: DARP
Various no-ops:
Add a __unused.
Make the 2byte decoder functions return 16 bits for the benefits of picky lints.
No need to grab giant around a tsleep() when we have a timeout.
Sponsored by: DARPA & NAI Labs.
show more ...
|
#
346cd5fe |
| 27-Sep-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Implement g_call_me() as a way for geom methods to schedule operations to be performed in the event-thread.
To do this, we need to lock the eventlist with g_eventlock (nee g_doorlock), since g_call_
Implement g_call_me() as a way for geom methods to schedule operations to be performed in the event-thread.
To do this, we need to lock the eventlist with g_eventlock (nee g_doorlock), since g_call_me() being called from the UP/DOWN paths will not be able to aquire g_topology_lock.
This also means that for now these events are not referenced on any particular consumer/provider/geom.
For UP/DOWN path use, this will not become a problem since the access() function will make sure we drain any bio's before we dismantle.
Sponsored by: DARPA & NAI Labs.
show more ...
|
#
85b62edb |
| 13-Sep-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Add a couple more of the big/little-endian conversion routines and make them visible from userland, if need be.
I wish that the C language contained this as part of struct definintions, but failing
Add a couple more of the big/little-endian conversion routines and make them visible from userland, if need be.
I wish that the C language contained this as part of struct definintions, but failing that, I would settle for an agreed upon set of functions for packing/unpacking integers in various sizes from byte-streams which may have unfriendly alignment.
This really belongs in <sys/endian.h> I guess.
show more ...
|
#
4fbd1268 |
| 06-Sep-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Remove "magicspace". It looks good on paper, it doesn't work in practice.
Sponsored by: DARPA & NAI Labs.
|
Revision tags: release/4.6.2_cvs, release/4.6.2, release/4.6.1, release/4.6.0_cvs |
|
#
503abe45 |
| 09-Jun-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Improve some on the naming.
Submitted by: iedowse
|