On Mon, Oct 20, 2008 at 9:55 PM, Rommer <rommer@xxxxxxxxx> wrote:
fd_destroy() is not called by any translator directly. fd_destroy() is called when fd->ref = 0(zero).
yes, thanks for pointing out. fd was getting leaked if open()/create()/opendir() failed. it is fixed in glusterfs--mainline--3.0--patch-440
> Rommer,
> It is not a memory leak.
> pl_forget() is not called by protocol/server, pl_forget() is called
> by __inode_destroy() after inode->ref becomes 0 (zero).
>
Thanks.
One more question:
server_open_resume() makes new fd by fd_create(), but server_open_cbk()
in protocol/server-protocol.c does not fd_destroy(fd), if op_ret < 0.
Where fd is destroing if open() failed?
fd_destroy() is not called by any translator directly. fd_destroy() is called when fd->ref = 0(zero).
yes, thanks for pointing out. fd was getting leaked if open()/create()/opendir() failed. it is fixed in glusterfs--mainline--3.0--patch-440
--
gowda