Date: Tue, 2 Nov 2010 22:49:20 +0000 (UTC) From: Pawel Jakub Dawidek <pjd@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sbin/hastd hastd.c hooks.c nv.c nv.h parse.y primary.c secondary.c synch.h Message-ID: <201011022249.oA2MngkC024819@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
pjd 2010-11-02 22:49:20 UTC FreeBSD src repository Modified files: (Branch: RELENG_8) sbin/hastd hastd.c hooks.c nv.c nv.h parse.y primary.c secondary.c synch.h Log: SVN rev 214697 on 2010-11-02 22:49:20Z by pjd MFC r214119,r214273,r214274,r214275,r214276,r214282,r214283,r214284,r214692: r214119: Use closefrom(2) instead of close(2) in a loop. r214273: Load geom_gate.ko module after parsing arguments. r214274: Plug memory leaks. Found with: valgrind r214275: Plug memory leak. r214276: Simplify code a bit. r214282: Move all NV defines into nv.c, they are not used externally thus there is no need to make then visible from outside. r214283: Implement nv_exists() function that returns true if argument of the given name exists. r214284: Before this change on first connect between primary and secondary we initialize all the data. This is huge waste of time and resources if there were no writes yet, as there is no real data to synchronize. Optimize this by sending "virgin" argument to secondary, which gives it a hint that synchronization is not needed. In the common case (where noth nodes are configured at the same time) instead of synchronizing everything, we don't synchronize at all. r214692: Send packets to remote node only via the send thread to avoid possible races - in this case a keepalive packet was send from wrong thread which lead to connection dropping, because of corrupted packet. Fix it by sending keepalive packets directly from the send thread. As a bonus we now send keepalive packets only when connection is idle. Submitted by: Mikolaj Golub <to.my.trociny@gmail.com> Revision Changes Path 1.2.2.8 +2 -2 src/sbin/hastd/hastd.c 1.1.2.5 +8 -21 src/sbin/hastd/hooks.c 1.1.2.4 +54 -1 src/sbin/hastd/nv.c 1.1.2.3 +1 -27 src/sbin/hastd/nv.h 1.1.2.5 +24 -0 src/sbin/hastd/parse.y 1.3.2.8 +98 -43 src/sbin/hastd/primary.c 1.1.2.6 +14 -5 src/sbin/hastd/secondary.c 1.1.2.4 +2 -0 src/sbin/hastd/synch.h
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201011022249.oA2MngkC024819>