summaryrefslogtreecommitdiffstats
path: root/libglusterfs
Commit message (Collapse)AuthorAgeFilesLines
* libglusterfs: Add empty and NULL dirents list checksShehjar Tikoo2009-06-082-0/+12
| | | | | | | | | | | | These checks are needed in case a higher layer intends to delink the dirent list and passes a NULL pointer to fop_readdir_cbk_stub for the entries parameter. Consequently, the gf_dirent_free must guard against an empty list because the stub that is passed to it mgiht have an empty dirent list. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* THIS: use xlator_init() for initializing xlatorsAnand V. Avati2009-05-221-1/+1
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* THIS: add xlator_init() API to set @THISAnand V. Avati2009-05-222-0/+18
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* THIS: default_notify to use xlator_notify for THIS compatibilityAnand V. Avati2009-05-221-7/+4
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* THIS: xlator_notify API to be used for propagating notifications with proper ↵Anand V. Avati2009-05-222-0/+19
| | | | | | THIS setting Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* THIS: set appropriately in call stub resumesAnand V. Avati2009-05-221-4/+11
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* THIS: set appropriately in STACK_* macrosAnand V. Avati2009-05-221-4/+21
| | | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* globals: add globals.h/c THIS: macro to access thread specific current ↵Anand V. Avati2009-05-223-2/+209
| | | | | | | xlator CTX: macro to access glusterfs global context (glusterfs_ctx_t) Signed-off-by: Anand V. Avati <avati@amp.gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* mem-pool,io-threads: Destroy mem-pool on deallocationShehjar Tikoo2009-05-212-0/+16
| | | | Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* booster: Move fstab parsing into booster from libglusterfsShehjar Tikoo2009-05-203-393/+2
| | | | | | | | | | | This is another attempt at fixing build problems on Solaris. I am told that booster build is disabled on Solaris and I know that it is disabled on Mac OS X also. Getting it to work on both these systems is now on my TODO list, mainly because on both these systems, we can have a glusterfs client running without requiring FUSE. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
* mem-pool: Restructure mem-pool behaviourShehjar Tikoo2009-05-192-31/+55
| | | | | | | | | | | | | | | | | | This commit changes mem-pool behaviour to return a directly usable address by performing the required adjustment on the address being returned. This is different from the previous behaviour where we're trying to fit into the requested size, the list_head*2 also. This is not efficient enough in terms of space but hopefully works better than not having any mem-pool at all. Besides, I am not comfortable with mem-pool meta-data and caller-useable memory area being the same because of the potential for mem-pool's data structure corruption. PS: Please do read the comments in the code for more info during review. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* mem-pool: Fix #define spellingShehjar Tikoo2009-05-191-3/+3
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* mem-pool: Remove hard coded value for pad boundaryShehjar Tikoo2009-05-191-1/+1
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* mem-pool: Fix memory leak in mem-pool init phaseShehjar Tikoo2009-05-191-1/+3
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* dict.c: make dict_serialized_length and dict_serialize to hold locks.Raghavendra G2009-05-161-120/+10
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* dict.c: Add dict_allocate_and_serializeRaghavendra G2009-05-162-0/+230
| | | | | | | | | - this procedure atomically allocates a buffer and serializes dict into it. - this procedure helps avoid memory corruptions due to race conditions where in new members are added into dict between allocating a buffer for serializing and actually serializing buffer into it. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* booster: Add fstab parsing supportShehjar Tikoo2009-05-083-2/+393
| | | | | | | | | | | | | This commit changes the booster.conf format from a simple custom format to that of the /etc/fstab.c See booster_mount(..) for the mount options supported/required for LD_PRELOADing booster. I'll write a small help doc soon. This commit also brings in fstab parsing code into libglusterfs because Darwin libc only supports reading the hardcoded /etc/fstab. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* valid_host_name(): accept string lengths upto 75 chars (the limit accepted ↵Anand V. Avati2009-05-071-1/+1
| | | | by glibc resolver)
* transport shortcut b/w client and serverAnand V. Avati2009-05-072-2/+118
| | | | | | This patch makes the server pass back the transport pointer of the client. If the UUID matches, the client makes the local transport 'shortcut' with the remote transport (pointer received from server) The shortcut simulates a socket queue. Instead of serialized messages going over the network and getting queued in the tcp socket queue, the messages get queued in a transport specific queue picked by a polling thread.
* libglusterfs log cleanupAnand V. Avati2009-04-282-10/+6
|
* log message supressing in DNS resolutionAnand V. Avati2009-04-241-4/+4
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* Cleaned up log messages in xlator.cVikas Gorur2009-04-241-20/+20
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* Cleaned up log messages in spec.yVikas Gorur2009-04-241-31/+28
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* Cleaned up log messages in inode.cVikas Gorur2009-04-241-41/+4
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* Changed logging format to remove line number & function name from NORMAL and ↵Vikas Gorur2009-04-241-4/+10
| | | | | | higher levels. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* Introduce new log level GF_LOG_TRACE.Vikas Gorur2009-04-242-4/+5
| | | | | | | TRACE is the most verbose log level, meant to have a full trace of operation. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* Remove log level TRACE and the macro GF_TRACE.Vikas Gorur2009-04-242-8/+0
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* iobuf: Define MAP_ANONYMOUSShehjar Tikoo2009-04-241-0/+11
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* iobuf_pool->arenas_cnt should be incremented in iobuf_arena_alloc, and not ↵Anand V. Avati2009-04-221-1/+2
| | | | | | iobuf_pool_add_arena (to avoid counting of unpruned arenas) Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* call-stub: Check for NULL in the correct variableShehjar Tikoo2009-04-221-1/+1
| | | | | | | | It looks like the argument fd was meant to be checked here instead of the fd in the call stub. This fixes a NULL fd bug that results in an EINVAL on opendir. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* inode.c - NULL check for the extra __inode_search performed, when presented ↵Anand V. Avati2009-04-201-0/+6
| | | | | | inode is not hashed. This bug fixes #967
* pruning buffer margin - do not destroy if no other non-filled arenas are in ↵Anand V. Avati2009-04-182-3/+26
| | | | the pool
* added 2 APIs iobuf_size and iobref_size to return the system memory usage by ↵Anand V. Avati2009-04-172-0/+46
| | | | an iobuf, and by all iobufs in an iobref respectively
* libglusterfsclient: Use macros for argument checksShehjar Tikoo2009-04-171-0/+10
| | | | | | | | | | Having those if {} blocks to check for argument validity hurts the eye so this patch replaces those checks with macros. One macro already exists in libglusterfs. The second macro is introduced by this commit for libglusterfsclient-specific check for paths. Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* add NULL check in iobuf_arena_destroyAnand V. Avati2009-04-161-0/+3
|
* use MAP_FAILED macro to free mem_base in arena_destroyAnand V. Avati2009-04-141-1/+2
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* FREE arena->iobufs in iobuf_arena_destoryAnand V. Avati2009-04-141-0/+2
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* introduce page_size in glusterfs_ctx_t to be used by all translators set it ↵Anand V. Avati2009-04-131-0/+1
| | | | | | to 128KB in main() Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* bug fix in iobuf_select_arena - call __iobuf_pool_add_arena (unlocked version)Anand V. Avati2009-04-131-1/+1
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* bug fix - arena destruction now calls munmap and not FREEAnand V. Avati2009-04-131-1/+5
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* add purge list support to make iobuf_pool_purge() in expensive, and actually ↵Anand V. Avati2009-04-132-1/+10
| | | | | | call it in iobuf_put :-) Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* bug fix in iobuf_select_arena - never created a new arenaAnand V. Avati2009-04-131-2/+5
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* add @filled list in iobuf_pool to keep away filled list from getting ↵Anand V. Avati2009-04-132-1/+20
| | | | | | searched in iobuf_select_arena Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* use MAP_FAILED macro to check for mmap failure instead of (void *) -1Anand V. Avati2009-04-131-1/+1
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* fixed sizeof parameter in CALLOC of a new arenaAnand V. Avati2009-04-131-1/+1
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* updated transport interface functions to accommodate IOBUF/IOBREFAnand V. Avati2009-04-122-8/+11
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* do away with frame->root->{req,rsp}_refs membersAnand V. Avati2009-04-121-2/+0
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* update prototype of writev and readv_cbk to use IOBREF in parameter (step ↵Anand V. Avati2009-04-125-27/+39
| | | | | | towards elmination of frame->root->{req,rsp}_refs Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* IOBREF support for holding iobuf refs along with fops (replacement for ↵Anand V. Avati2009-04-122-0/+152
| | | | | | frame->root->{req,rsp}_refs Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
* IOBUF support (to be used by transports and fuse)Anand V. Avati2009-04-124-2/+494
| | | | Signed-off-by: Anand V. Avati <avati@amp.gluster.com>