summaryrefslogtreecommitdiffstats
path: root/rpc/rpc-lib/src/rpc-clnt.c
Commit message (Collapse)AuthorAgeFilesLines
* rpc: Need to update conn->last_recieved.Krishnan Parthasarathi2011-11-181-0/+6
| | | | | | | | | | | This is important for protocol/client's ping_timer to function correctly. Change-Id: I9f45d701126bb739535d9c5ec280833362bef9ed BUG: 3816 Reviewed-on: http://review.gluster.com/512 Reviewed-by: Amar Tumballi <amar@gluster.com> Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Jeff Darcy <jdarcy@redhat.com>
* glusterfs: An effort to fix all the spell mistakes and typoHarshavardhana2011-11-161-1/+1
| | | | | | | | | | | | | | | in the entire glusterfs codebase. This patch fixes many of spell mistakes and typo in the entire glusterfs codebase and all supported modules. Change-Id: I83238a41aa08118df3cf4d1d605505dd3cda35a1 BUG: 3809 Signed-off-by: Harshavardhana <fharshav@redhat.com> Reviewed-on: http://review.gluster.com/731 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* rpc: No timeouts for lock fops.Krishnan Parthasarathi2011-09-231-3/+43
| | | | | | | | | | | | | | | | | As of today, all fops bail out after 30 mins by default. This is not desirable with lock fops since it could be 'rightfully blocked' for a really long time. But the client would assume that the lock fop has 'expired' after 30 mins and clean up its references to the locks. Later when the locks xlator decides to grant it, we are left with an orphan (stale) lock . This fix exempts lock fops from timeouts. Only on network disruptions both client and server decide to 'clean up' the locks held. Change-Id: If1d74ba21113650b976728e9b764c551a0a49e59 BUG: 3617 Reviewed-on: http://review.gluster.com/478 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* rpc:memcpy data of right size to auth paramsVijay Bellur2011-09-191-1/+1
| | | | | | | | Change-Id: I6999e0a1463ee3475f7607990337326b3f008538 BUG: 3587 Reviewed-on: http://review.gluster.com/464 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* rpc: Need to keep ref when handling cbk in call_bail.Krishnan Parthasarathi2011-09-121-0/+5
| | | | | | | | Change-Id: Ic944599cfa2696a0ae77105185d49fb510ce6fec BUG: 3511 Reviewed-on: http://review.gluster.com/361 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* Eliminate many "var set but not used" warnings with newer gcc.Jeff Darcy2011-09-071-3/+0
| | | | | | | | | | | | | | | | This fixes ~200 such warnings, but leaves three categories untouched. (1) Rpcgen code. (2) Macros which set variables in the outer (calling function) scope. (3) Variables which are set via function calls which may have side effects. Change-Id: I6554555f78ed26134251504b038da7e94adacbcd BUG: 2550 Reviewed-on: http://review.gluster.com/371 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* mem-pool: Make mem-pool ptr avialable in ptrshishir gowda2011-08-251-6/+6
| | | | | | | | | | | | | | | | | The header of the ptr returned from mem-pool will now store the mem-pool ptr it belongs to. mem_put will now take only the pointer to be freed. Also, changing MALLOC call to GF_CALLOC in mem_get when we run out of entries in mem-pool. This also will have the header information saved. Change-Id: I3de182663a7f5b49c9e9425e9531775b70bdff67 BUG: 3390 Reviewed-on: http://review.gluster.com/205 Reviewed-by: Amar Tumballi <amar@gluster.com> Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vijay@gluster.com>
* rpc-clnt: fix merge error of http://review.gluster.com/248Anand Avati2011-08-171-2/+6
| | | | | | | | | | | cherrypicked patch did not have the logic to reset port number to reconnect to glusterd. Change-Id: I78c903d5a28626f83b5024bd323e77b5f159e374 BUG: 3409 Reviewed-on: http://review.gluster.com/254 Reviewed-by: Amar Tumballi <amar@gluster.com> Tested-by: Gluster Build System <jenkins@build.gluster.com>
* rpc-clnt: perform XDR encoding in unlocked regionAnand Avati2011-08-171-41/+36
| | | | | | | | Change-Id: Ia11c3ced4bec5959a5f0d8fcd4c6070b2ead220a BUG: 3409 Reviewed-on: http://review.gluster.com/248 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* Change Copyright current yearPranith Kumar K2011-08-101-1/+1
| | | | | | | | Change-Id: I2d10f2be44f518f496427f257988f1858e888084 BUG: 3348 Reviewed-on: http://review.gluster.com/200 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* LICENSE: s/GNU Affero General Public/GNU General Public/Pranith Kumar K2011-08-061-3/+3
| | | | | | | | Change-Id: I3914467611e573cccee0d22df93920cf1b2eb79f BUG: 3348 Reviewed-on: http://review.gluster.com/182 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* IOBUF: Bring in variable iobuf supportshishir gowda2011-07-311-1/+1
| | | | | | | | | | | Rebasing Raghavendra's patch to master Change-Id: Ie7a0c9a7b8e73cfe48c4573a5153460d5126208e BUG: 2472 Reviewed-on: http://review.gluster.com/12 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* RPC unify code changekrishna2011-07-291-8/+14
| | | | | | | | | Change-Id: Ibe18a2a63fd023ac57652c4dfc8ac8a69d983b83 BUG: 3112 Signed-off-by: krishna <krishna@gluster.com> Reviewed-on: http://review.gluster.com/116 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Amar Tumballi <amar@gluster.com>
* rpc: in client connection init(), return the proper error codeAmar Tumballi2011-07-271-0/+1
| | | | | | | | | | | without the proper error code, rpc won't know if transport is successfully loaded or not. Change-Id: Idc3ad56d2f47cf1e81ba39f90a7f7b47305d7d9a BUG: 3260 Reviewed-on: http://review.gluster.com/112 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@gluster.com>
* logging: fill proper domain names at places where it is missingAmar Tumballi2011-06-161-1/+1
| | | | | | | | | | also changed some error messages where it was not explicit Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2346 (Log message enhancements in GlusterFS - phase 1) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2346
* rpc-clnt: consider the (re-)configured port for only one connect() callAmar Tumballi2011-05-301-2/+14
| | | | | | | | | | | this way, if remote_port is set due to queryport, that can fall back to default port (or 'option remote-port' value) when it disconnects. Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2709 (issues with port (re-)configuration in client protocol) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2709
* mgmt/glusterd: Remove excessive INFO logsPranith Kumar K2011-04-131-0/+4
| | | | | | | | Signed-off-by: Pranith Kumar K <pranithk@gluster.com> Signed-off-by: Anand Avati <avati@gluster.com> BUG: 2346 (Log message enhancements in GlusterFS - phase 1) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2346
* spelling errors fixed across the code baseAmar Tumballi2011-03-221-2/+2
| | | | | | | | | | | | | recieve -> receive maintainence -> maintenance verison -> version commited -> committed Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 2262 (Spelling errors in source) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2262
* rpc/rpc-lib : log enhancementsAmar Tumballi2011-03-171-71/+75
| | | | | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 2346 (Log message enhancements in GlusterFS - phase 1) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2346
* rpc: Changes for handling unix domain sockets avoid racePranith K2011-03-101-61/+48
| | | | | | | | Signed-off-by: Pranith Kumar K <pranithk@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 1965 (need a cmd to get io-stat details) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1965
* rpc/rpc-clnt: don't access rpcreq after putting the struct back into mem-pool.Raghavendra G2011-02-071-8/+13
| | | | | | | | Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2335 (Segmentation fault in saved_frames_unwind) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2335
* rpc: handle proper 'ref', 'unref' of transport from rpc-clntAmar Tumballi2011-01-261-2/+5
| | | | | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2250 ([glusterfs-3.1.2qa2]: SegFault in rpc-clnt.c) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2250
* rpc: fix format string mismatches in invocation of gf_log.Raghavendra G2010-12-121-4/+4
| | | | | | | | Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2211 ((re)introduce warnings for format string/parameter mismatch) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2211
* rpc-clnt: add check for NULL argument for rpc_clnt_startAmar Tumballi2010-11-181-0/+3
| | | | | | | | | | prevents crash when rpc_clnt_start is called before init Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2122 () URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2122
* rpc-clnt: introduce new way of creating rpc-clnt objectsAnand Avati2010-11-161-0/+68
| | | | | | | | | | | | | | rpc_clnt_new() creates a new passive rpc clnt object. rpc_clnt_start() triggers the connection/reconnection from the object. rpc_clnt_init() - the old way - still works. Signed-off-by: Anand V. Avati <avati@amp.gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2078 (Volume Migration is not working) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2078
* rpc-clnt: move rpc_clnt_reconnect() call to rpc_clnt_initAnand Avati2010-11-161-2/+4
| | | | | | | | | | | | Previously rpc_clnt_reconnect() was called inside rpc_clnt_connection_init which in turn was called from rpc_clnt_init. This change makes rpc_clnt_connection_init re-usable for the next patch Signed-off-by: Anand V. Avati <avati@amp.gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 2078 (Volume Migration is not working) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2078
* mgmt/glusterd: handle reqs from unknown peers for friend smPranith K2010-10-111-1/+1
| | | | | | | | Signed-off-by: Pranith Kumar K <pranithk@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 1838 (handle peer detach gracefully in case of lost frames) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1838
* rpc-clnt: do rpc_transport_destroy() in rpc_clnt_destroy()Amar Tumballi2010-10-081-2/+2
| | | | | | | | | | handles the case of peer detach properly Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 875 (Implement a new protocol to provide proper backward/forward compatibility) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=875
* rpc/clnt: allocate a new cbk_program before registering it.Raghavendra G2010-10-081-8/+46
| | | | | | | | | | - Refer Bug 1836 for more details. Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 1862 () URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1862
* protocol/rpc/transport: bring in one more event for 'TRANSPORT-DESTROY'Amar Tumballi2010-10-071-20/+23
| | | | | | | | | | | | needed because, a RPC disconnect doesn't mean that a RPC transport/listener is dead. With this, the race in server protocol cleaning up the lock table / fd table when some frames are in transit will be handled properly. Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 1843 () URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1843
* rpc: in rpc_clnt_destroy(), destroy the memory pool alsoAmar Tumballi2010-09-301-0/+8
| | | | | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 1727 () URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1727
* rpc-clnt: handle NULL dereferencesAmar Tumballi2010-09-281-7/+11
| | | | | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 1723 () URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1723
* mgmt/glusterd: delay probe till connection happensPranith K2010-09-271-0/+2
| | | | | | | | Signed-off-by: Pranith Kumar K <pranithk@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 1607 () URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1607
* rpc-clnt: print frame-sent time till microsecond resolution in call_bail.Raghavendra G2010-09-241-1/+4
| | | | | | | | Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 875 (Implement a new protocol to provide proper backward/forward compatibility) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=875
* rpc/rpcsvc: add debug messages when rpc-messages are handed over to/from ↵Raghavendra G2010-09-221-9/+22
| | | | | | | | | | transport. Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 875 (Implement a new protocol to provide proper backward/forward compatibility) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=875
* rdma: do event_unregister() in fini() too.Amar Tumballi2010-09-171-0/+1
| | | | | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 1611 (crash in gf_free) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1611
* rpc: add ref/unref for rpc clntPranith Kumar K2010-09-151-2/+39
| | | | | | | | Signed-off-by: Pranith Kumar K <pranithk@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 1594 (make probe oneway) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1594
* memory leak fixes.Raghavendra G2010-09-151-0/+1
| | | | | | | | | | | | | - free memory allocated by libc when decoding request arguments in server and reply in client. - free memory allocated to saved_frames during connection cleanup. - free memory allocated for transport name while creating listeners. Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 1438 (memory leaks) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1438
* rpc: print xid of the rpcreq corresponding to frame being bailed out.Raghavendra G2010-09-141-3/+3
| | | | | | | | Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 875 (Implement a new protocol to provide proper backward/forward compatibility) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=875
* rpc: in rpc_clnt_destroy(), cleanup the transport tooAmar Tumballi2010-09-131-0/+6
| | | | | | | | | | | * if we don't cleanup the transport, it will trigger false events on the free'd transport which causes crash Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 1423 (Crash in gf_timer_call_cancel) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1423
* rpc-clnt: fix memory corruption happening while encoding auth data.Raghavendra G2010-09-061-11/+11
| | | | | | | | | | | | | - buffer containing authdata pointed by rpc-request was allocated on stack of procedure rpc_clnt_fill_request, but was being used as source for xdr-encoding in rpc_clnt_record_build_record. Hence by the time auth-data is being copied during encoding of request, it might've been freed and hence contain garbage. Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 875 (Implement a new protocol to provide proper backward/forward compatibility) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=875
* rpc: server to client callback mechanismAmar Tumballi2010-08-271-1/+81
| | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com>
* rpc: add rpc_req structure to request_info structure, used by transport ↵Raghavendra G2010-08-181-14/+7
| | | | | | | | | | layer to get corresponding request to reply received. Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 875 (Implement a new protocol to provide proper backward/forward compatibility) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=875
* rpc - cleanup and changes related to rdmaRaghavendra G2010-08-181-1/+4
| | | | | | | | | | | | - remove rpc_conn_state structure. - add a member to point struct rpc_req in rpc_transport_req structure. This is needed for rdma to store rdma specific per request data. Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 875 (Implement a new protocol to provide proper backward/forward compatibility) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=875
* changed GNU General Public License to GNU Affero General Public LicensePranith Kumar K2010-08-171-3/+3
| | | | | | | | Signed-off-by: Pranith Kumar K <pranithk@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 1388 () URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1388
* rpc: move handling of fragment headers to socket.Raghavendra G2010-08-161-38/+3
| | | | | | | | | | | - fragment headers are only specific to tcp and hence should be handled in transport-socket instead of by rpc layer. Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 875 (Implement a new protocol to provide proper backward/forward compatibility) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=875
* if frame is NULL, don't continue to destroy it.Amar Tumballi2010-08-131-0/+3
| | | | | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 1272 () URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1272
* rpc-clnt/socket: rpc_clnt_reconfig() API to support overriding of port numbersAnand V. Avati2010-08-121-2/+20
| | | | | | | | Signed-off-by: Anand V. Avati <avati@blackhole.gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 1314 (portmapper functionality) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1314
* rpc: Cleanup reconnect timer while destroying rpc_clntVijay Bellur2010-08-121-4/+25
| | | | | | | | Signed-off-by: Vijay Bellur <vijay@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 1334 () URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1334
* changes to rpcRaghavendra G2010-07-281-87/+132
| | | | | | | | | | | | | | | | | | - use mem-pool for requests and saved_frames. - preserve the rpc_req structure till rpc invokes program's reply. This will enable us to store transport specific data that has to last till reply has come (eg., memory regions of chunk lists in case of rdma). - change signature of rpc_clnt_submit to accept rsphdr_vector and rsppayload_vector. The buffers pointed by these vectors will be from iobufs and these iobufs are added to an iobref which should also be passed as an arguement to rpc_clnt_submit. Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 875 (Implement a new protocol to provide proper backward/forward compatibility) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=875