summaryrefslogtreecommitdiffstats
path: root/sbin/ggate
Commit message (Collapse)AuthorAgeFilesLines
* The signature for a pthread function requires that itmtm2008-06-261-0/+6
| | | | | | | | | | | return a pointer to a void. The send_thread() and disk_thread() funtions; however, do not have a return value because they run for the duration of the daemon's lifetime. This causes gcc to barf when running with -O3. Make these functions return a null pointer to quiet it. PR: bin/124342 Submitted by: Garrett Cooper <gcooper@FreeBSD.org> (minus his comments) MFC after: 1 week
* Fix spellinggonzo2008-06-201-2/+2
| | | | | PR: kern/124723 Event: Bugathon#5
* Remove options MK_LIBKSE and DEFAULT_THREAD_LIB now that we no longerru2008-03-291-1/+1
| | | | build libkse. This should fix WITHOUT_LIBTHR builds as a side effect.
* Tweak the handling of "WITHOUT_LIBPTHREAD". Also remove the accidentalobrien2007-10-091-1/+1
| | | | | | | treatment of 'LIBKSE' as an "old style" knob. Submitted by: ru Approved by: re(kensmith)
* Repo copy libpthreads to libkse.obrien2007-10-091-1/+1
| | | | | | This introduces the WITHOUT_LIBKSE nob, and changes WITHOUT_LIBPTHREADS to mean with neither threading libs. Approved by: re(kensmith)
* Always install libpthread.* symlinks if at least one ofru2007-10-011-2/+1
| | | | | | | | | | | | the threading libraries is built. This simplifies the logic in makefiles that need to check if the pthreads support is present. It also fixes a bug where we would build a threading library that we shouldn't have built: for example, building with WITHOUT_LIBTHR and the default value of DEFAULT_THREADING_LIB (libthr) would mistakenly build the libthr library, but not install it. Approved by: re (kensmith)
* Implement a work-around for poor ggate write performance.pjd2007-04-062-1/+12
|
* For consistency use 'unsigned' instead of 'u_int'.pjd2006-12-183-4/+4
|
* Fix ggated for platforms with 64bit size_t. The DIOCGSECTORSIZE ioctlpjd2006-12-153-4/+4
| | | | | | | | returns u_int. Reported by: Javier Martín Rueda <jmrueda@diatel.upm.es> PR: amd64/91799 MFC after: 3 days
* - When building world WITHOUT_LIBPTHREAD, link libthr to libpthread.ru2006-11-261-6/+2
| | | | | - Don't build ngctl(8) and cached(8) if threading libs aren't built. - Fix various issues in a cached(8) makefile.
* - Handle timeouts from recv(2) properly.pjd2006-10-301-2/+6
| | | | | | | | | - Increase timeout to 8 seconds (should be made configurable). Reported by: Ulrich Spoerlein <uspoerlein@gmail.com> Reported by: Christian Laursen <xi@borderworlds.dk> PR: kern/104829 MFC after: 1 week
* Markup fixes.ru2006-09-181-1/+1
|
* Remove alpha left-overs.ru2006-08-221-1/+1
|
* Fix a typo s/Made/Make. Use .Pp for a line break, it will quiet thetrhodes2006-06-101-2/+2
| | | | mdoc(7) warning.
* libc_r is no longer provided, and on alpha and sparc64, libthrru2006-04-121-1/+1
| | | | | is (sym)linked to libpthread. Account for this change and check for MK_LIBTHR instead of MK_LIBC_R where appropriate.
* Unbreak WITHOUT_LIBPHREAD/WITHOUT_LIBC_R option support, dependingru2006-03-211-1/+6
| | | | on platform.
* Reimplementation of world/kernel build options. For details, see:ru2006-03-171-1/+3
| | | | | | | | http://lists.freebsd.org/pipermail/freebsd-current/2006-March/061725.html The src.conf(5) manpage is to follow in a few days. Brought to you by: imp, jhb, kris, phk, ru (all bugs are mine)
* Flush stdout after printing name of created device, so it can be properlypjd2006-03-121-1/+3
| | | | | | | | read when 'ggatec create' is used in backticks or its output is piped to another command. Submitted by: Paul Schenkeveld MFC after: 3 days
* -mdoc sweep.ru2005-11-181-1/+3
|
* Update manual page after ggate rewrite.pjd2005-07-291-7/+6
| | | | MFC after: 1 day
* Don't compile ggatec/ggated in NO_LIBPTHREAD case.pjd2005-07-101-1/+8
| | | | | Reported by: Andrea Campi <andrea+freebsd_cvs_all@webcom.it> Approved by: re (scottl)
* Sync which ggate changes.pjd2005-07-081-16/+34
| | | | Approved by: re (scottl)
* Reimplement ggatec/ggated applications.pjd2005-07-086-455/+1094
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change communication protocol to be much more resistant on network problems and to allow for much better performance. Better performance is achieved by creating two connections between ggatec and ggated one for sending the data and one for receiving it. Every connection is handled by separeted thread, so there is no more synchronous data flow (send and wait for response), now one threads sends all requests and another receives the data. Use two threads in ggatec(8): - sendtd, which takes I/O requests from the kernel and sends them to the ggated daemon on the other end; - recvtd, which waits for ggated responses and forwards them to the kernel. Use three threads in ggated(8): - recvtd, which waits for I/O requests and puts them onto incoming queue; - disktd, which takes requests from the incoming queue, does disk operations and puts finished requests onto outgoing queue; - sendtd, which takes finished requests from the outgoing queue and sends responses back to ggatec. Because there were major changes in communication protocol, there is no backward compatibility, from now on, both client and server has to run on 5.x or 6.x (or at least ggated should be from the same FreeBSD version on which ggatec is running). For Gbit networks some buffers need to be increased. I use those settings: kern.ipc.maxsockbuf=16777216 net.inet.tcp.sendspace=8388608 net.inet.tcp.recvspace=8388608 and I use '-S 4194304 -R 4194304' options for both, ggatec and ggated. Approved by: re (scottl)
* include stdarg.h for va_listdelphij2005-05-021-0/+1
|
* Sort sections.ru2005-01-183-21/+21
|
* Added the EXIT STATUS section where appropriate.ru2005-01-173-3/+3
|
* Fix a deadlock in ggatel(8) simlar to one which was fixed some timepjd2004-10-021-1/+1
| | | | | | ago in md(4). Submitted by: Ivan Voras <ivoras@fer.hr>
* Fix/clean up return values checking.pjd2004-09-084-31/+31
|
* Print mediasize in human readable form as well.pjd2004-06-213-5/+10
|
* Remove extra semicolon.pjd2004-06-021-1/+1
| | | | Inspired by: fjoe
* style.Makefile(5).pjd2004-05-221-6/+6
|
* Various style.Makefile(5) improvements.pjd2004-05-203-11/+15
| | | | Provoked by: ru
* Polish the mdoc(7) markup.ru2004-05-123-70/+60
|
* Include <sys/time.h> for the declaration of struct bintime instead ofbde2004-05-041-0/+1
| | | | | | depending on namespace pollution in <sys/stat.h>. struct bintime is only needed to satisfy leakage of kernel interfaces to userland and namespace bugs in those interfaces...
* Add missing command.pjd2004-05-031-1/+1
|
* Add missing commands.pjd2004-05-031-1/+2
|
* Don't repeat handshake.pjd2004-05-031-4/+4
| | | | | | | | | | | | | | | This little thing can cause a deadlock, because taste mechanism start to work after creation of ggate provider and I/O requests are sent from other classes from the g_event thread, so number of pending events isn't 0. Now ggatec(8) start second handshake and ggated(8) is trying to open GEOM provider (for example md(4)) and it can't, because it hangs on g_waitidle() in g_dev_open(). g_waitidle() cannot finish because there is a pending read on event queue, and this read can't be finished, because ggated(8) can't open target device. GEOM Gate will recover from this deadlock, because requests will timeout, but it of course isn't the best solution and I don't know better one for now, so we should avoid opening GEOM providers while there are pending requests in event queue.
* Paths correction.pjd2004-05-033-6/+6
| | | | Pointed out by: ache, make buildworld
* Fix compiling on 64-bit architectures.pjd2004-05-024-4/+4
|
* GEOM Gate network daemon.pjd2004-04-303-0/+774
|
* GEOM Gate network client and control utility.pjd2004-04-303-0/+708
|
* GEOM Gate local control utility.pjd2004-04-303-0/+497
|
* Stuff shared between ggate utilities.pjd2004-04-302-0/+473
|
* Makefile for building ggate utilities: ggatel(8), ggatec(8), ggated(8).pjd2004-04-301-0/+5
OpenPOWER on IntegriCloud