freebsd-dev/sys/geom
Kirk McKusick 2bc1a1fe5c Add barrier write capability to the VFS buffer interface. A barrier
write is a disk write request that tells the disk that the buffer
being written must be committed to the media along with any writes
that preceeded it before any future blocks may be written to the drive.

Barrier writes are provided by adding the functions bbarrierwrite
(bwrite with barrier) and babarrierwrite (bawrite with barrier).

Following a bbarrierwrite the client knows that the requested buffer
is on the media. It does not ensure that buffers written before that
buffer are on the media. It only ensure that buffers written before
that buffer will get to the media before any buffers written after
that buffer. A flush command must be sent to the disk to ensure that
all earlier written buffers are on the media.

Reviewed by: kib
Tested by:   Peter Holm
2013-02-16 14:51:30 +00:00
..
bde - Don't pass geom and provider names as format strings. 2012-11-20 12:32:18 +00:00
cache - Don't pass geom and provider names as format strings. 2012-11-20 12:32:18 +00:00
concat Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs. 2011-11-07 15:43:11 +00:00
eli Always initialize sc_ekey, because as of r238116 it is always used. 2012-08-10 18:43:29 +00:00
gate In g_gate_dumpconf() always check the result of g_gate_hold(). 2012-08-07 18:50:33 +00:00
journal Add flags argument to vfs_write_resume() and remove 2013-01-11 06:08:32 +00:00
label Mangle label names containing spaces, non-printable characters '%' or 2012-12-22 13:43:12 +00:00
linux_lvm Add some FEATURE macros for various GEOM classes. 2011-02-25 10:24:35 +00:00
mirror g_mirror: g_getattr() failure should not be fatal 2013-01-26 10:50:04 +00:00
mountver - Don't pass geom and provider names as format strings. 2012-11-20 12:32:18 +00:00
multipath - Don't pass geom and provider names as format strings. 2012-11-20 12:32:18 +00:00
nop - Don't pass geom and provider names as format strings. 2012-11-20 12:32:18 +00:00
part g_part_taste: directly destroy consumer and geom here, no need for withering 2012-10-06 19:52:50 +00:00
raid - Fix rebuild position broken at r245522. 2013-01-17 03:27:08 +00:00
raid3 Allow to insert new component to geom_raid3 without specifying number. 2013-01-15 10:06:35 +00:00
sched - Don't pass geom and provider names as format strings. 2012-11-20 12:32:18 +00:00
shsec Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs. 2011-11-07 15:43:11 +00:00
stripe Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs. 2011-11-07 15:43:11 +00:00
uncompress Remove unneeded G_PF_CANDELETE flag. 2012-08-28 19:28:31 +00:00
uzip Remove unneeded G_PF_CANDELETE flag. 2012-08-28 19:28:31 +00:00
vinum Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs. 2011-11-07 15:43:11 +00:00
virstor In virstor_ctl_stop(), check for a valid softc before trying to update 2012-08-03 20:24:16 +00:00
zero Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs. 2011-11-07 15:43:11 +00:00
geom_aes.c - Don't pass geom and provider names as format strings. 2012-11-20 12:32:18 +00:00
geom_bsd_enc.c
geom_bsd.c Avoid to check the same cache line/variable from all the locking 2012-01-28 14:00:21 +00:00
geom_ccd.c Include sys/sbuf.h directly. 2011-07-11 05:22:31 +00:00
geom_ctl.c Finish r210923, 210926. Mark some devices as eternal. 2011-01-04 10:59:38 +00:00
geom_ctl.h
geom_dev.c - Don't pass geom and provider names as format strings. 2012-11-20 12:32:18 +00:00
geom_disk.c Fix locking problem in disk_resize(); previously it would run without 2012-10-29 17:52:43 +00:00
geom_disk.h Fix locking problem in disk_resize(); previously it would run without 2012-10-29 17:52:43 +00:00
geom_dump.c Do not hide stripeoffset from libgeom(3), it may be useful even when 2011-06-02 12:49:45 +00:00
geom_event.c Implement media change notification for DA and CD removable media devices. 2012-07-29 11:51:48 +00:00
geom_flashmap.c - Correct signedness for casts; 2012-05-23 20:51:21 +00:00
geom_fox.c Add some FEATURE macros for various GEOM classes. 2011-02-25 10:24:35 +00:00
geom_int.h
geom_io.c Reset provider-specific fields when resending I/O request in low memory 2012-12-26 20:07:47 +00:00
geom_kern.c Move the three geom kprocs as threads under a single pid. 2011-05-11 21:47:30 +00:00
geom_map.c Use %j to match intmax_t. 2012-07-01 05:22:13 +00:00
geom_mbr_enc.c
geom_mbr.c - Don't pass geom and provider names as format strings. 2012-11-20 12:32:18 +00:00
geom_pc98_enc.c
geom_pc98.c Avoid to check the same cache line/variable from all the locking 2012-01-28 14:00:21 +00:00
geom_redboot.c - Give geom_redboot taste of flash/spi. Now there is another provider 2010-02-03 01:12:19 +00:00
geom_slice.c - Don't pass geom and provider names as format strings. 2012-11-20 12:32:18 +00:00
geom_slice.h - Don't pass geom and provider names as format strings. 2012-11-20 12:32:18 +00:00
geom_subr.c Allow to pass providers with /dev/ prefix to g_provider_by_name(). 2012-09-01 10:52:19 +00:00
geom_sunlabel_enc.c
geom_sunlabel.c Include sys/sbuf.h directly. 2011-07-11 05:22:31 +00:00
geom_vfs.c Add barrier write capability to the VFS buffer interface. A barrier 2013-02-16 14:51:30 +00:00
geom_vfs.h
geom_vol_ffs.c Add some FEATURE macros for various GEOM classes. 2011-02-25 10:24:35 +00:00
geom.h - Don't pass geom and provider names as format strings. 2012-11-20 12:32:18 +00:00
notes