summaryrefslogtreecommitdiffstats
path: root/glusterfsd
Commit message (Collapse)AuthorAgeFilesLines
* fuse: introduce pre-test micro-framework, check for execve-over-direct-IOCsaba Henk2010-09-021-5/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The presence of some potential FUSE features in the actual kernel-side FUSE implementation we run on is not always straightforward. More precisely, it is straightforward only if there is a dedicated feature flag or protocol revision number. In the other cases we are left to clumsy and platform specific hacks which wire in 3rd-party software revision numbers into our source... at least, if we insist on sticking to (the otherwise venerable) KISS principle. However, here we go for another route, loosely inspired by the way autotools provide an abstraction layer for our build system over the gory details of platform specific build environments. At start time, we use a preliminary set of FUSE operations which overlay the standard ones such that apart from the "usual stuff", they also present some synthetic files to the FUSE client (kernel). Then we spawn some test programs which perform the needed tests on these synthetic files to evaulate the FUSE implementation in terms of the features in question. According to the result of the test programs, we set the respective parameters of the fuse xlator; when the testing phase is over, the FUSE operation set is replaced by the standard one. As of now, we use this approach to test whether execve(2) works with direct I/O. If yes, and if glusterfs is used with --enable-direct-io-mode, then we let direct I/O for files opened for reading; if no, then we restrict direct I/O only to writing files. Signed-off-by: Csaba Henk <csaba@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 801 (Direct io-mode support and related changes in caching translators.) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=801
* fix a crash in cleanup_and_exit ()v3.1.0qa12Amar Tumballi2010-08-311-8/+12
| | | | | | | | | | | | * fini() was being called without proper 'THIS' being set. * in protocol/client, a frame was getting created after frame pool was destroyed Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 1030 (mount directory is not unmounted after killing glusterfs process) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1030
* fix typo in commandline help messageCsaba Henk2010-08-311-3/+2
| | | | | | | | Signed-off-by: Csaba Henk <csaba@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 1482 (typo in help message) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1482
* glusterfsd: call fini of fuse and all active xlators in cleanup_and_exit()Amar Tumballi2010-08-301-1/+17
| | | | | | | | | | * handles the case of stale mount point in case of killing glusterfs process Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 1030 (mount directory is not unmounted after killing glusterfs process) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1030
* gluster{d,fs,fsd}: add logrorate functionality to SIGHUPAmar Tumballi2010-08-292-6/+14
| | | | | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 1472 (SIGHUP should do 'logrotate') URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1472
* dump the volume file details in log file if graph init succeedsAmar Tumballi2010-08-281-0/+2
| | | | | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 1468 (after dvm changes, volfile info is not dumped in logfile) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1468
* rpc: server to client callback mechanismAmar Tumballi2010-08-271-18/+34
| | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com>
* glusterfsd: don't call pmap-signout in 'cleanup_and_exit()'Amar Tumballi2010-08-261-1/+1
| | | | | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 1434 () URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1434
* glusterfsd: Clang error fixes.Sachidananda2010-08-261-5/+54
| | | | | | | | Signed-off-by: Sachidananda Urs <sac@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 1077 () URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1077
* portmapper program added to glusterfsd mgmt rpcAmar Tumballi2010-08-214-5/+183
| | | | | | | | | | | * some bug fixes glusterd-pmap.c * also renamed 'fetch-spec.c' -> 'glusterfsd-mgmt.c' Signed-off-by: Amar Tumballi <amar@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
* mem pool for call_stub_tshishir gowda2010-08-061-1/+6
| | | | | | | | | Ran posix compliance test and sanity test Signed-off-by: shishir gowda <shishirng@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 329 (Replacing memory allocation functions with mem-type functions) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=329
* Implement mem pool for frame and stackshishir gowda2010-08-061-0/+19
| | | | | | | | | Ran posix compliance test and sanity test Signed-off-by: shishir gowda <shishirng@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 329 (Replacing memory allocation functions with mem-type functions) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=329
* changes to rpcRaghavendra G2010-07-281-1/+1
| | | | | | | | | | | | | | | | | | - 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
* some check added to the variables after GF_CALLOCAmar Tumballi2010-07-281-0/+6
| | | | | | | | | | | handles some NULL dereference problems (reported by clang when ran with code where '#define GF_CALLOC NULL'). Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 966 (NULL check for avoiding NULL dereferencing of pointers..) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=966
* glusterfsd: fix bug in GETSPEC which would result in loading of -f volfileAnand Avati2010-07-231-2/+1
| | | | | | | | Signed-off-by: Anand V. Avati <avati@blackhole.gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 971 (dynamic volume management) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=971
* glusterfsd: ban specifying fuse in volfileCsaba Henk2010-07-221-0/+11
| | | | | | | | | | | | | "fuse-in-volfile" was defunct anyway -- it resulted in a broken mount which had all calls hang on it. So the challenge was either to fix it or remove it. It got thumbs down. Signed-off-by: Csaba Henk <csaba@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 971 (dynamic volume management) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=971
* glusterfsd: move mgmt_init() to happen post deamonize()Anand Avati2010-07-211-10/+9
| | | | | | | | | | else results in loss of timer thread Signed-off-by: Anand V. Avati <avati@blackhole.gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 971 (dynamic volume management) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=971
* mount/fuse: disable fuse support from volfileAnand Avati2010-07-213-309/+324
| | | | | | | | | | glusterfsd: implement GETSPEC functionality to fetch volfiles from server Signed-off-by: Anand V. Avati <avati@blackhole.gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 971 (dynamic volume management) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=971
* glusterfsd: make SIGINT gdb friendlyAnand Avati2010-07-211-1/+1
| | | | | | | | Signed-off-by: Anand V. Avati <avati@blackhole.gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 971 (dynamic volume management) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=971
* 'glusterd' commandAmar Tumballi2010-07-203-3/+11
| | | | | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 971 (dynamic volume management) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=971
* gluster-CLI-and-mgmt-glusterd-added-to-codebaseAmar Tumballi2010-07-081-2/+2
| | | | | | | | | Signed-off-by: Vijay Bellur <vijay@gluster.com> Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 971 (dynamic volume management) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=971
* fix up OS X after dynamic volume changesCsaba Henk2010-07-081-7/+2
| | | | | | | | | | | Note that contrib is not needed to be in toplevel Makefile as its not a separate target, rather stuff is "pulled in" from there. Signed-off-by: Csaba Henk <csaba@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 971 (dynamic volume management) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=971
* minor option handling refactorizationsCsaba Henk2010-07-084-14/+36
| | | | | | | | | | | | - clean up ZR_* internal option defines - make argument order of glusterfs_graph_activate() aligned with other graph ops Signed-off-by: Csaba Henk <csaba@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 971 (dynamic volume management) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=971
* fix fuse volume creation from volfileCsaba Henk2010-07-081-41/+39
| | | | | | | | Signed-off-by: Csaba Henk <csaba@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 971 (dynamic volume management) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=971
* fix up option handlingCsaba Henk2010-07-082-35/+49
| | | | | | | | | | | | | | | | | After 79241696, the following anomalies came up: - --mac-compat and --read-only was rejected originally on server side, 79241696 cancelled this check - direct I/O option handling was interfered by 79241696 - --mac-compat had no effect on Linux and does not compile on Mac Restore original behaviors. Signed-off-by: Csaba Henk <csaba@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 971 (dynamic volume management) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=971
* glusterfsd: Handle setting entry-timeout to 0Vijay Bellur2010-07-061-1/+1
| | | | | | | | Signed-off-by: Vijay Bellur <vijay@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 1034 (rename() is not atomic) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1034
* allocate space for '\0' in string, while adding xlator-optionAmar Tumballi2010-07-061-2/+2
| | | | | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 1044 ('--xlator-option' is not working) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1044
* mem-types: include *-mem-types.h in noinst_HEADERS variables in all Makefile.amAnand Avati2010-06-081-1/+1
| | | | | | | | Signed-off-by: Anand V. Avati <avati@blackhole.gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 329 (Replacing memory allocation functions with mem-type functions) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=329
* dynamic volume changes for graph replacementAnand Avati2010-06-073-806/+531
| | | | | | | | Signed-off-by: Anand V. Avati <avati@blackhole.gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 971 (dynamic volume management) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=971
* fuse: add a built-in fuse traffic dumper mechanismCsaba Henk2010-06-072-0/+12
| | | | | | | | | | | It makes fuse dumping possible on platforms where strace is not available (eg. OS X), moreover it makes reporting of fuse related bugs more convenient. Signed-off-by: Csaba Henk <csaba@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 972 (Metabug for misc. fuse features) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=972
* OS X: enable mac-compat for OS X clients.Csaba Henk2010-05-211-2/+6
| | | | | | | | | | | Injecting volumes at startup this way is pretty hacky but it will do for now. Refactoring that part will come as separate commit. Signed-off-by: Csaba Henk <csaba@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 361 (GlusterFS 3.0 should work on Mac OS/X) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=361
* OS X: adjustments, minor fixes to eliminate warningsCsaba Henk2010-05-212-2/+20
| | | | | | | | Signed-off-by: Csaba Henk <csaba@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 361 (GlusterFS 3.0 should work on Mac OS/X) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=361
* OS X: basic additions for OS X client supportCsaba Henk2010-05-211-16/+0
| | | | | | | | Signed-off-by: Csaba Henk <csaba@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 361 (GlusterFS 3.0 should work on Mac OS/X) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=361
* added features/mac-compatCsaba Henk2010-05-132-25/+32
| | | | | | | | Signed-off-by: Csaba Henk <csaba@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 800 (Problem on OSX with NFS and CIFS exports) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=800
* frame's 'op', 'type' restructuredAmar Tumballi2010-05-032-12/+1
| | | | | | | | Signed-off-by: Amar Tumballi <amar@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
* structuring of protocolAmar Tumballi2010-05-032-2/+0
| | | | | | | | | | | * isolated 'protocol.h' and transport.h from libglusterfs/* and glusterfsd/* Signed-off-by: Amar Tumballi <amar@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
* Memory accounting changesVijay Bellur2010-04-232-40/+92
| | | | | | | | | | | Memory accounting Changes. Thanks to Vinayak Hegde and Csaba Henk for their contributions. Signed-off-by: Vijay Bellur <vijay@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 329 (Replacing memory allocation functions with mem-type functions) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=329
* fuse: change behavior of direct io mode.Anand Avati2010-04-082-8/+21
| | | | | | | | | | | | | | If bigwrites are available, then disable direct io mode only by default (previously direct io mode was disabled in any case). Added new command line option to force enabling of direct io mode Signed-off-by: Anand V. Avati <avati@blackhole.gluster.com> Signed-off-by: Raghavendra G <raghavendra@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 801 (Direct io-mode support and related changes in caching translators.) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=801
* core: Do internal latency measurement of FOPs.Vikas Gorur2010-04-041-0/+2
| | | | | | | | | | | | | | | | | | | This patch adds a facility by which each translator keeps track of the average latency of a FOP from its point of view. That is, the duration between the translator handing over the call to a lower-level translator and the reply coming back. The latency measurement is off by default, and can be toggled by sending SIGUSR2 to the GlusterFS process. Latency data is printed as part of the process state dump. Signed-off-by: Vikas Gorur <vikas@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 268 (Add timing instrumentation code) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=268
* added '--read-only' command line option for glusterfsAmar Tumballi2010-03-242-0/+65
| | | | | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 712 (mount.glusterfs script doesn't handle 'ro' option) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=712
* handle SIGINT in glusterfsdAmar Tumballi2010-03-091-0/+4
| | | | | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 703 (SIGINT not handled in glusterfsd) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=703
* Fix fetching volume file from the server, by sending parent up through the ↵Harshavardhana Ranganath2010-01-261-0/+4
| | | | | | | | | | xlator graph. Signed-off-by: Harshavardhana <harsha@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 573 (3.0.1 doesn't fetch volfume files from the server) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=573
* core: fix initialization of disjoint xlator graphAnand Avati2010-01-231-1/+26
| | | | | | | | | | if graph has disjoint subgraphs, send GF_EVENT_PARENT_UP to every top node Signed-off-by: Anand V. Avati <avati@blackhole.gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 272 (Server backend storage hang should not cause the mount point to hang) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=272
* default log file now doesn't start with '-'v3.0.1rc1Amar Tumballi2010-01-141-6/+15
| | | | | | | | Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 490 (Default log file path should not begin with '-') URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=490
* Support for Compilation on SolarisVijay Bellur2009-12-201-5/+6
| | | | | | | | | | | | | | This is based on patch at: http://node3.rnode.ru/glusterfs-3.0.0-p1.patch Thanks to Petrunin Egor <shellcode@mail.ru> for this patch. Signed-off-by: Vijay Bellur <vijay@gluster.com> Signed-off-by: Vijay Bellur <vijay@dev.gluster.com> BUG: 481 (Fix compilation failures in Solaris) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=481
* glusterfsd: Handle argument attribute-timeout when set to 0Vijay Bellur2009-12-031-1/+2
| | | | | | | | Signed-off-by: Vijay Bellur <vijay@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 252 (client coherence problem with locks and truncate) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=252
* Disabled centralized logging by default.Harshavardhana Ranganath2009-11-131-3/+1
| | | | | | | | Signed-off-by: Harshavardhana <harsha@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 366 (Infinite loop with centralized logging.) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=366
* iobuf: initialize size without 4KB paddingAnand Avati2009-10-301-1/+1
| | | | | | | | | | | since new fuse bridge takes care of landing write buffers to aligned iobufs and the 4KB header padding is no more necessary Signed-off-by: Anand V. Avati <avati@blackhole.gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 315 (generation number support) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=315
* glusterfsd: whitespace cleanupAnand Avati2009-10-301-957/+957
| | | | | | | | Signed-off-by: Anand V. Avati <avati@blackhole.gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 315 (generation number support) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=315
* glusterfsd.c: Unnecessary writing of strerror of errorno on pipevinayak hegde2009-10-211-16/+17
| | | | | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 4 (mount --bind fails if run immediately after mounting GlusterFS) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=4