172a840f9SPawel Jakub Dawidek.\" Copyright (c) 2004 Pawel Jakub Dawidek <pjd@FreeBSD.org> 272a840f9SPawel Jakub Dawidek.\" All rights reserved. 372a840f9SPawel Jakub Dawidek.\" 472a840f9SPawel Jakub Dawidek.\" Redistribution and use in source and binary forms, with or without 572a840f9SPawel Jakub Dawidek.\" modification, are permitted provided that the following conditions 672a840f9SPawel Jakub Dawidek.\" are met: 772a840f9SPawel Jakub Dawidek.\" 1. Redistributions of source code must retain the above copyright 872a840f9SPawel Jakub Dawidek.\" notice, this list of conditions and the following disclaimer. 972a840f9SPawel Jakub Dawidek.\" 2. Redistributions in binary form must reproduce the above copyright 1072a840f9SPawel Jakub Dawidek.\" notice, this list of conditions and the following disclaimer in the 1172a840f9SPawel Jakub Dawidek.\" documentation and/or other materials provided with the distribution. 1272a840f9SPawel Jakub Dawidek.\" 1372a840f9SPawel Jakub Dawidek.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND 1472a840f9SPawel Jakub Dawidek.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 1572a840f9SPawel Jakub Dawidek.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 1672a840f9SPawel Jakub Dawidek.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE 1772a840f9SPawel Jakub Dawidek.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 1872a840f9SPawel Jakub Dawidek.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 1972a840f9SPawel Jakub Dawidek.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 2072a840f9SPawel Jakub Dawidek.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 2172a840f9SPawel Jakub Dawidek.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 2272a840f9SPawel Jakub Dawidek.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 2372a840f9SPawel Jakub Dawidek.\" SUCH DAMAGE. 2472a840f9SPawel Jakub Dawidek.\" 250fcf43f6SAllan Jude.Dd September 8, 2016 2672a840f9SPawel Jakub Dawidek.Dt GGATEL 8 2772a840f9SPawel Jakub Dawidek.Os 2872a840f9SPawel Jakub Dawidek.Sh NAME 2972a840f9SPawel Jakub Dawidek.Nm ggatel 3072a840f9SPawel Jakub Dawidek.Nd "GEOM Gate local control utility" 3172a840f9SPawel Jakub Dawidek.Sh SYNOPSIS 3272a840f9SPawel Jakub Dawidek.Nm 3356608006SRuslan Ermilov.Cm create 3472a840f9SPawel Jakub Dawidek.Op Fl v 35*1b1e392aSDavid E. Cross.Oo Fl o option Oc ... 3672a840f9SPawel Jakub Dawidek.Op Fl s Ar sectorsize 3772a840f9SPawel Jakub Dawidek.Op Fl t Ar timeout 3872a840f9SPawel Jakub Dawidek.Op Fl u Ar unit 3972a840f9SPawel Jakub Dawidek.Ar path 4072a840f9SPawel Jakub Dawidek.Nm 4156608006SRuslan Ermilov.Cm destroy 4272a840f9SPawel Jakub Dawidek.Op Fl f 4372a840f9SPawel Jakub Dawidek.Fl u Ar unit 4472a840f9SPawel Jakub Dawidek.Nm 4556608006SRuslan Ermilov.Cm list 4672a840f9SPawel Jakub Dawidek.Op Fl v 4772a840f9SPawel Jakub Dawidek.Op Fl u Ar unit 487d49cdebSJason Helfman.Nm 497d49cdebSJason Helfman.Cm rescue 507d49cdebSJason Helfman.Op Fl v 51*1b1e392aSDavid E. Cross.Oo Fl o option Oc ... 527d49cdebSJason Helfman.Fl u Ar unit 537d49cdebSJason Helfman.Ar path 5472a840f9SPawel Jakub Dawidek.Sh DESCRIPTION 5572a840f9SPawel Jakub DawidekThe 5672a840f9SPawel Jakub Dawidek.Nm 5772a840f9SPawel Jakub Dawidekutility is a local GEOM Gate class consumer. 5872a840f9SPawel Jakub DawidekIt can be used as a replacement for 5972a840f9SPawel Jakub Dawidek.Xr md 4 6072a840f9SPawel Jakub Dawidekdevices or as a 6172a840f9SPawel Jakub Dawidek.Dq GEOMificator 6256608006SRuslan Ermilovfor non GEOM-aware devices, but it was mainly created as an example 63b29fdbd8SChristian Bruefferon how to use and how to communicate with the GEOM Gate kernel subsystem. 6472a840f9SPawel Jakub Dawidek.Pp 6572a840f9SPawel Jakub DawidekAvailable commands: 6656608006SRuslan Ermilov.Bl -tag -width ".Cm destroy" 6756608006SRuslan Ermilov.It Cm create 6872a840f9SPawel Jakub DawidekCreate a 6972a840f9SPawel Jakub Dawidek.Nm ggate 7072a840f9SPawel Jakub Dawidekprovider related to the given regular file or device. 7156608006SRuslan Ermilov.It Cm destroy 7272a840f9SPawel Jakub DawidekDestroy the given 7372a840f9SPawel Jakub Dawidek.Nm ggate 7472a840f9SPawel Jakub Dawidekprovider. 7556608006SRuslan Ermilov.It Cm list 7672a840f9SPawel Jakub DawidekList 7772a840f9SPawel Jakub Dawidek.Nm ggate 7872a840f9SPawel Jakub Dawidekproviders. 797d49cdebSJason Helfman.It Cm rescue 807d49cdebSJason HelfmanTake over a previously created provider and handle pending and future 810fcf43f6SAllan Juderequests. 820fcf43f6SAllan JudeThis is useful if the initial 837d49cdebSJason Helfman.Nm 84b29fdbd8SChristian Bruefferprocess died. 85b29fdbd8SChristian BruefferTo prevent data loss, the given path must lead to the 867d49cdebSJason Helfmanregular file or device that was used to create the provider. 8772a840f9SPawel Jakub Dawidek.El 8872a840f9SPawel Jakub Dawidek.Pp 8972a840f9SPawel Jakub DawidekAvailable options: 9056608006SRuslan Ermilov.Bl -tag -width ".Fl s Cm ro | wo | rw" 9172a840f9SPawel Jakub Dawidek.It Fl f 9272a840f9SPawel Jakub DawidekForcibly destroy 9372a840f9SPawel Jakub Dawidek.Nm ggate 9472a840f9SPawel Jakub Dawidekprovider (cancels all pending requests). 95*1b1e392aSDavid E. Cross.It Fl o Ar option 96*1b1e392aSDavid E. CrossSpecify permissions and options to use when opening the file or device. 97*1b1e392aSDavid E. Cross.Bl -tag -width indent 98*1b1e392aSDavid E. Cross.It Cm ro 99*1b1e392aSDavid E. Crossread-only 100*1b1e392aSDavid E. Cross.It Cm wo 10156608006SRuslan Ermilovwrite-only 102*1b1e392aSDavid E. Cross.It Cm rw 103*1b1e392aSDavid E. Crossread-write 104*1b1e392aSDavid E. Cross.It Cm direct 105*1b1e392aSDavid E. Crossopen with 106*1b1e392aSDavid E. Cross.Dv O_DIRECT 107*1b1e392aSDavid E. Crossoption on the file 108*1b1e392aSDavid E. Cross.El 109*1b1e392aSDavid E. Cross.Pp 11072a840f9SPawel Jakub DawidekDefault is 11156608006SRuslan Ermilov.Cm rw . 11272a840f9SPawel Jakub Dawidek.It Fl s Ar sectorsize 11372a840f9SPawel Jakub DawidekSector size for 11472a840f9SPawel Jakub Dawidek.Nm ggate 11572a840f9SPawel Jakub Dawidekprovider. 116b29fdbd8SChristian BruefferIf not specified, it is taken from the device, or set to 512 bytes for files. 11772a840f9SPawel Jakub Dawidek.It Fl t Ar timeout 11872a840f9SPawel Jakub DawidekNumber of seconds to wait before an I/O request will be canceled. 11972a840f9SPawel Jakub Dawidek0 means no timeout. 12072a840f9SPawel Jakub DawidekDefault is 30. 12172a840f9SPawel Jakub Dawidek.It Fl u Ar unit 12272a840f9SPawel Jakub DawidekUnit number to use. 12372a840f9SPawel Jakub Dawidek.It Fl v 1247d49cdebSJason HelfmanDo not fork, run in foreground and print debug information on standard 12572a840f9SPawel Jakub Dawidekoutput. 12672a840f9SPawel Jakub Dawidek.It Ar path 12772a840f9SPawel Jakub DawidekPath to a regular file or device. 12872a840f9SPawel Jakub Dawidek.El 1296087df9eSRuslan Ermilov.Sh EXIT STATUS 1306087df9eSRuslan ErmilovExit status is 0 on success, or 1 if the command fails. 1316087df9eSRuslan ErmilovTo get details about the failure, 1326087df9eSRuslan Ermilov.Nm 1336087df9eSRuslan Ermilovshould be called with the 1346087df9eSRuslan Ermilov.Fl v 1356087df9eSRuslan Ermilovoption. 13672a840f9SPawel Jakub Dawidek.Sh SEE ALSO 13772a840f9SPawel Jakub Dawidek.Xr geom 4 , 13872a840f9SPawel Jakub Dawidek.Xr ggatec 8 , 13972a840f9SPawel Jakub Dawidek.Xr ggated 8 , 14072a840f9SPawel Jakub Dawidek.Xr mount 8 , 14172a840f9SPawel Jakub Dawidek.Xr newfs 8 1420fcf43f6SAllan Jude.Sh HISTORY 1430fcf43f6SAllan JudeThe 1440fcf43f6SAllan Jude.Nm 1450fcf43f6SAllan Judeutility appeared in 1460fcf43f6SAllan Jude.Fx 5.3 . 14772a840f9SPawel Jakub Dawidek.Sh AUTHORS 14872a840f9SPawel Jakub DawidekThe 14972a840f9SPawel Jakub Dawidek.Nm 15072a840f9SPawel Jakub Dawidekutility as well as this manual page was written by 151bd0891ceSBaptiste Daroussin.An Pawel Jakub Dawidek Aq Mt pjd@FreeBSD.org . 152