Add some FEATURE macros for various GEOM classes.
No FreeBSD version bump, the userland application to query the features will be committed last and can serve as an indication of the availablility if needed. Sponsored by: Google Summer of Code 2010 Submitted by: kibab Reviewed by: silence on geom@ during 2 weeks X-MFC after: to be determined in last commit with code from this project
This commit is contained in:
parent
de5b19526b
commit
cb08c2cc83
@ -41,6 +41,7 @@
|
||||
#include <sys/systm.h>
|
||||
#include <sys/kernel.h>
|
||||
#include <sys/kthread.h>
|
||||
#include <sys/sysctl.h>
|
||||
|
||||
#include <crypto/rijndael/rijndael-api-fst.h>
|
||||
#include <crypto/sha2/sha2.h>
|
||||
@ -48,6 +49,8 @@
|
||||
#include <geom/bde/g_bde.h>
|
||||
#define BDE_CLASS_NAME "BDE"
|
||||
|
||||
FEATURE(geom_bde, "GEOM-based Disk Encryption");
|
||||
|
||||
static void
|
||||
g_bde_start(struct bio *bp)
|
||||
{
|
||||
|
2
sys/geom/cache/g_cache.c
vendored
2
sys/geom/cache/g_cache.c
vendored
@ -42,6 +42,8 @@ __FBSDID("$FreeBSD$");
|
||||
#include <geom/geom.h>
|
||||
#include <geom/cache/g_cache.h>
|
||||
|
||||
FEATURE(geom_cache, "GEOM cache module");
|
||||
|
||||
static MALLOC_DEFINE(M_GCACHE, "gcache_data", "GEOM_CACHE Data");
|
||||
|
||||
SYSCTL_DECL(_kern_geom);
|
||||
|
@ -39,6 +39,7 @@ __FBSDID("$FreeBSD$");
|
||||
#include <geom/geom.h>
|
||||
#include <geom/concat/g_concat.h>
|
||||
|
||||
FEATURE(geom_concat, "GEOM concatenation support");
|
||||
|
||||
static MALLOC_DEFINE(M_CONCAT, "concat_data", "GEOM_CONCAT Data");
|
||||
|
||||
|
@ -51,6 +51,7 @@ __FBSDID("$FreeBSD$");
|
||||
#include <geom/eli/g_eli.h>
|
||||
#include <geom/eli/pkcs5v2.h>
|
||||
|
||||
FEATURE(geom_eli, "GEOM crypto module");
|
||||
|
||||
MALLOC_DEFINE(M_ELI, "eli data", "GEOM_ELI Data");
|
||||
|
||||
|
@ -53,6 +53,8 @@ __FBSDID("$FreeBSD$");
|
||||
#include <geom/geom.h>
|
||||
#include <geom/gate/g_gate.h>
|
||||
|
||||
FEATURE(geom_gate, "GEOM Gate module");
|
||||
|
||||
static MALLOC_DEFINE(M_GATE, "gg_data", "GEOM Gate Data");
|
||||
|
||||
SYSCTL_DECL(_kern_geom);
|
||||
|
@ -45,6 +45,7 @@ __FBSDID("$FreeBSD$");
|
||||
#include <sys/param.h>
|
||||
#include <sys/endian.h>
|
||||
#include <sys/systm.h>
|
||||
#include <sys/sysctl.h>
|
||||
#include <sys/kernel.h>
|
||||
#include <sys/fcntl.h>
|
||||
#include <sys/conf.h>
|
||||
@ -60,6 +61,8 @@ __FBSDID("$FreeBSD$");
|
||||
#include <geom/geom.h>
|
||||
#include <geom/geom_slice.h>
|
||||
|
||||
FEATURE(geom_bsd, "GEOM BSD disklabels support");
|
||||
|
||||
#define BSD_CLASS_NAME "BSD"
|
||||
|
||||
#define ALPHA_LABEL_OFFSET 64
|
||||
|
@ -37,6 +37,7 @@
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
#include <sys/sysctl.h>
|
||||
#include <sys/kernel.h>
|
||||
#include <sys/conf.h>
|
||||
#include <sys/bio.h>
|
||||
@ -52,6 +53,8 @@
|
||||
#define FOX_CLASS_NAME "FOX"
|
||||
#define FOX_MAGIC "GEOM::FOX"
|
||||
|
||||
FEATURE(geom_fox, "GEOM FOX redundant path mitigation support");
|
||||
|
||||
struct g_fox_softc {
|
||||
off_t mediasize;
|
||||
u_int sectorsize;
|
||||
|
@ -37,6 +37,7 @@ __FBSDID("$FreeBSD$");
|
||||
#include <sys/errno.h>
|
||||
#include <sys/endian.h>
|
||||
#include <sys/systm.h>
|
||||
#include <sys/sysctl.h>
|
||||
#include <sys/kernel.h>
|
||||
#include <sys/fcntl.h>
|
||||
#include <sys/malloc.h>
|
||||
@ -50,6 +51,8 @@ __FBSDID("$FreeBSD$");
|
||||
#include <geom/geom.h>
|
||||
#include <geom/geom_slice.h>
|
||||
|
||||
FEATURE(geom_mbr, "GEOM DOS/MBR partitioning support");
|
||||
|
||||
#define MBR_CLASS_NAME "MBR"
|
||||
#define MBREXT_CLASS_NAME "MBREXT"
|
||||
|
||||
|
@ -36,6 +36,7 @@ __FBSDID("$FreeBSD$");
|
||||
#include <sys/param.h>
|
||||
#include <sys/endian.h>
|
||||
#include <sys/systm.h>
|
||||
#include <sys/sysctl.h>
|
||||
#include <sys/kernel.h>
|
||||
#include <sys/fcntl.h>
|
||||
#include <sys/malloc.h>
|
||||
@ -47,6 +48,8 @@ __FBSDID("$FreeBSD$");
|
||||
#include <geom/geom.h>
|
||||
#include <geom/geom_slice.h>
|
||||
|
||||
FEATURE(geom_pc98, "GEOM NEC PC9800 partitioning support");
|
||||
|
||||
#define PC98_CLASS_NAME "PC98"
|
||||
|
||||
struct g_pc98_softc {
|
||||
|
@ -39,6 +39,7 @@ __FBSDID("$FreeBSD$");
|
||||
#include <sys/param.h>
|
||||
#include <sys/endian.h>
|
||||
#include <sys/systm.h>
|
||||
#include <sys/sysctl.h>
|
||||
#include <sys/kernel.h>
|
||||
#include <sys/conf.h>
|
||||
#include <sys/bio.h>
|
||||
@ -51,6 +52,8 @@ __FBSDID("$FreeBSD$");
|
||||
#include <geom/geom_slice.h>
|
||||
#include <machine/endian.h>
|
||||
|
||||
FEATURE(geom_sunlabel, "GEOM Sun/Solaris partitioning support");
|
||||
|
||||
#define SUNLABEL_CLASS_NAME "SUN"
|
||||
|
||||
struct g_sunlabel_softc {
|
||||
|
@ -30,6 +30,7 @@ __FBSDID("$FreeBSD$");
|
||||
#include <sys/param.h>
|
||||
#include <sys/errno.h>
|
||||
#include <sys/systm.h>
|
||||
#include <sys/sysctl.h>
|
||||
#include <sys/kernel.h>
|
||||
#include <sys/malloc.h>
|
||||
#include <sys/bio.h>
|
||||
@ -42,6 +43,8 @@ __FBSDID("$FreeBSD$");
|
||||
#include <geom/geom.h>
|
||||
#include <geom/geom_slice.h>
|
||||
|
||||
FEATURE(geom_vol, "GEOM support for volume names from UFS superblock");
|
||||
|
||||
#define VOL_FFS_CLASS_NAME "VOL_FFS"
|
||||
|
||||
static int superblocks[] = SBLOCKSEARCH;
|
||||
|
@ -55,6 +55,7 @@ __FBSDID("$FreeBSD$");
|
||||
|
||||
#include <geom/journal/g_journal.h>
|
||||
|
||||
FEATURE(geom_journal, "GEOM journaling support");
|
||||
|
||||
/*
|
||||
* On-disk journal format:
|
||||
|
@ -36,10 +36,12 @@ __FBSDID("$FreeBSD$");
|
||||
#include <sys/bio.h>
|
||||
#include <sys/malloc.h>
|
||||
#include <sys/libkern.h>
|
||||
#include <sys/sysctl.h>
|
||||
#include <geom/geom.h>
|
||||
#include <geom/geom_slice.h>
|
||||
#include <geom/label/g_label.h>
|
||||
|
||||
FEATURE(geom_label, "GEOM labeling support");
|
||||
|
||||
SYSCTL_DECL(_kern_geom);
|
||||
SYSCTL_NODE(_kern_geom, OID_AUTO, label, CTLFLAG_RW, 0, "GEOM_LABEL stuff");
|
||||
|
@ -42,6 +42,8 @@ __FBSDID("$FreeBSD$");
|
||||
|
||||
#include <geom/linux_lvm/g_linux_lvm.h>
|
||||
|
||||
FEATURE(geom_linux_lvm, "GEOM Linux LVM partitioning support");
|
||||
|
||||
/* Declare malloc(9) label */
|
||||
static MALLOC_DEFINE(M_GLLVM, "gllvm", "GEOM_LINUX_LVM Data");
|
||||
|
||||
|
@ -45,6 +45,7 @@ __FBSDID("$FreeBSD$");
|
||||
#include <sys/sched.h>
|
||||
#include <geom/mirror/g_mirror.h>
|
||||
|
||||
FEATURE(geom_mirror, "GEOM mirroring support");
|
||||
|
||||
static MALLOC_DEFINE(M_MIRROR, "mirror_data", "GEOM_MIRROR Data");
|
||||
|
||||
|
@ -44,6 +44,7 @@ __FBSDID("$FreeBSD$");
|
||||
#include <geom/geom.h>
|
||||
#include <geom/multipath/g_multipath.h>
|
||||
|
||||
FEATURE(geom_multipath, "GEOM multipath support");
|
||||
|
||||
SYSCTL_DECL(_kern_geom);
|
||||
SYSCTL_NODE(_kern_geom, OID_AUTO, multipath, CTLFLAG_RW, 0,
|
||||
|
@ -41,11 +41,14 @@ __FBSDID("$FreeBSD$");
|
||||
#include <sys/queue.h>
|
||||
#include <sys/sbuf.h>
|
||||
#include <sys/systm.h>
|
||||
#include <sys/sysctl.h>
|
||||
#include <geom/geom.h>
|
||||
#include <geom/part/g_part.h>
|
||||
|
||||
#include "g_part_if.h"
|
||||
|
||||
FEATURE(geom_part_apm, "GEOM partitioning class for Apple-style partitions");
|
||||
|
||||
struct g_part_apm_table {
|
||||
struct g_part_table base;
|
||||
struct apm_ddr ddr;
|
||||
|
@ -40,11 +40,14 @@ __FBSDID("$FreeBSD$");
|
||||
#include <sys/queue.h>
|
||||
#include <sys/sbuf.h>
|
||||
#include <sys/systm.h>
|
||||
#include <sys/sysctl.h>
|
||||
#include <geom/geom.h>
|
||||
#include <geom/part/g_part.h>
|
||||
|
||||
#include "g_part_if.h"
|
||||
|
||||
FEATURE(geom_part_bsd, "GEOM partitioning class for BSD disklabels");
|
||||
|
||||
struct g_part_bsd_table {
|
||||
struct g_part_table base;
|
||||
u_char *bbarea;
|
||||
|
@ -42,11 +42,19 @@ __FBSDID("$FreeBSD$");
|
||||
#include <sys/queue.h>
|
||||
#include <sys/sbuf.h>
|
||||
#include <sys/systm.h>
|
||||
#include <sys/sysctl.h>
|
||||
#include <geom/geom.h>
|
||||
#include <geom/part/g_part.h>
|
||||
|
||||
#include "g_part_if.h"
|
||||
|
||||
FEATURE(geom_part_ebr,
|
||||
"GEOM partitioning class for extended boot records support");
|
||||
#if defined(GEOM_PART_EBR_COMPAT)
|
||||
FEATURE(geom_part_ebr_compat,
|
||||
"GEOM EBR partitioning class: backward-compatible partition names");
|
||||
#endif
|
||||
|
||||
#define EBRSIZE 512
|
||||
|
||||
struct g_part_ebr_table {
|
||||
|
@ -41,12 +41,15 @@ __FBSDID("$FreeBSD$");
|
||||
#include <sys/queue.h>
|
||||
#include <sys/sbuf.h>
|
||||
#include <sys/systm.h>
|
||||
#include <sys/sysctl.h>
|
||||
#include <sys/uuid.h>
|
||||
#include <geom/geom.h>
|
||||
#include <geom/part/g_part.h>
|
||||
|
||||
#include "g_part_if.h"
|
||||
|
||||
FEATURE(geom_part_gpt, "GEOM partitioning class for GPT partitions support");
|
||||
|
||||
CTASSERT(offsetof(struct gpt_hdr, padding) == 92);
|
||||
CTASSERT(sizeof(struct gpt_ent) == 128);
|
||||
|
||||
|
@ -40,11 +40,14 @@ __FBSDID("$FreeBSD$");
|
||||
#include <sys/queue.h>
|
||||
#include <sys/sbuf.h>
|
||||
#include <sys/systm.h>
|
||||
#include <sys/sysctl.h>
|
||||
#include <geom/geom.h>
|
||||
#include <geom/part/g_part.h>
|
||||
|
||||
#include "g_part_if.h"
|
||||
|
||||
FEATURE(geom_part_mbr, "GEOM partitioning class for MBR support");
|
||||
|
||||
#define MBRSIZE 512
|
||||
|
||||
struct g_part_mbr_table {
|
||||
|
@ -40,11 +40,14 @@ __FBSDID("$FreeBSD$");
|
||||
#include <sys/queue.h>
|
||||
#include <sys/sbuf.h>
|
||||
#include <sys/systm.h>
|
||||
#include <sys/sysctl.h>
|
||||
#include <geom/geom.h>
|
||||
#include <geom/part/g_part.h>
|
||||
|
||||
#include "g_part_if.h"
|
||||
|
||||
FEATURE(geom_part_pc98, "GEOM partitioning class for PC-9800 disk partitions");
|
||||
|
||||
#define SECSIZE 512
|
||||
#define MENUSIZE 7168
|
||||
#define BOOTSIZE 8192
|
||||
|
@ -39,12 +39,15 @@ __FBSDID("$FreeBSD$");
|
||||
#include <sys/queue.h>
|
||||
#include <sys/sbuf.h>
|
||||
#include <sys/systm.h>
|
||||
#include <sys/sysctl.h>
|
||||
#include <sys/vtoc.h>
|
||||
#include <geom/geom.h>
|
||||
#include <geom/part/g_part.h>
|
||||
|
||||
#include "g_part_if.h"
|
||||
|
||||
FEATURE(geom_part_vtoc8, "GEOM partitioning class for SMI VTOC8 disk labels");
|
||||
|
||||
struct g_part_vtoc8_table {
|
||||
struct g_part_table base;
|
||||
struct vtoc8 vtoc;
|
||||
|
@ -45,6 +45,7 @@ __FBSDID("$FreeBSD$");
|
||||
#include <sys/sched.h>
|
||||
#include <geom/raid3/g_raid3.h>
|
||||
|
||||
FEATURE(geom_raid3, "GEOM RAID-3 functionality");
|
||||
|
||||
static MALLOC_DEFINE(M_RAID3, "raid3_data", "GEOM_RAID3 Data");
|
||||
|
||||
|
@ -40,6 +40,7 @@ __FBSDID("$FreeBSD$");
|
||||
#include <geom/geom.h>
|
||||
#include <geom/shsec/g_shsec.h>
|
||||
|
||||
FEATURE(geom_shsec, "GEOM shared secret device support");
|
||||
|
||||
static MALLOC_DEFINE(M_SHSEC, "shsec_data", "GEOM_SHSEC Data");
|
||||
|
||||
|
@ -40,6 +40,7 @@ __FBSDID("$FreeBSD$");
|
||||
#include <geom/geom.h>
|
||||
#include <geom/stripe/g_stripe.h>
|
||||
|
||||
FEATURE(geom_stripe, "GEOM striping support");
|
||||
|
||||
static MALLOC_DEFINE(M_STRIPE, "stripe_data", "GEOM_STRIPE Data");
|
||||
|
||||
|
@ -36,10 +36,13 @@ __FBSDID("$FreeBSD$");
|
||||
#include <sys/mutex.h>
|
||||
#include <sys/malloc.h>
|
||||
#include <sys/systm.h>
|
||||
#include <sys/sysctl.h>
|
||||
|
||||
#include <geom/geom.h>
|
||||
#include <net/zlib.h>
|
||||
|
||||
FEATURE(geom_uzip, "GEOM uzip read-only compressed disks support");
|
||||
|
||||
#undef GEOM_UZIP_DEBUG
|
||||
#ifdef GEOM_UZIP_DEBUG
|
||||
#define DPRINTF(a) printf a
|
||||
|
@ -52,6 +52,8 @@ __FBSDID("$FreeBSD$");
|
||||
#include <geom/virstor/g_virstor.h>
|
||||
#include <geom/virstor/g_virstor_md.h>
|
||||
|
||||
FEATURE(g_virstor, "GEOM virtual storage support");
|
||||
|
||||
/* Declare malloc(9) label */
|
||||
static MALLOC_DEFINE(M_GVIRSTOR, "gvirstor", "GEOM_VIRSTOR Data");
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user