Re: [Nfs-ganesha-devel] Problems in /usr/libexec/ganesha/dbus-send.sh and ganesha dbus interface when disabling exports from gluster

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 06/18/2015 07:39 PM, Malahal Naineni wrote:
I still have not looked at the log messages, but I see the dbus thread
waiting for the upcall thread to complete when an export is removed. Is
there is a time limit on how the upcall thread gets blocked?

A variable called 'destroy_mode' is used to achieve that. This variable is set to true during unexport. Upcall thread checks this value in a loop before polling for events and exits when set to true.

In GPFS fsal, we actually send a command to return the upcall thread
with (THREAD_STOP) and then wait for the upcall thread.

Thanks for the pointer. We plan to optimize our upcall mechanism by using callbacks/cond_variables instead of polling in the near future. We shall check on reducing the number of threads too dedicated for it.

Thanks,
Soumya

Regards, Malahal.
PS: GPFS has only one upcall thread for the entire file system image
(not for each export).

Alessandro De Salvo [Alessandro.DeSalvo@xxxxxxxxxxxxx] wrote:
Hi Malahal,

Il giorno 17/giu/2015, alle ore 19:51, Malahal Naineni <malahal@xxxxxxxxxx> ha scritto:

Alessandro De Salvo [Alessandro.DeSalvo@xxxxxxxxxxxxx] wrote:
What’s more worrying is the problem with the dbus. Issuing a DisplayExport before the RemoveExport apparently fixes the problem, so something like this always works:

# dbus-send --print-reply --system --dest=org.ganesha.nfsd /org/ganesha/nfsd/ExportMgr org.ganesha.nfsd.exportmgr.DisplayExport uint16:2
# dbus-send --print-reply --system --dest=org.ganesha.nfsd /org/ganesha/nfsd/ExportMgr org.ganesha.nfsd.exportmgr.RemoveExport uint16:2

So, it’s like the DisplayExport is forcing someway a refresh that is needed by the RemoveExport. Any idea why?
I’m using the latest version of ganesha 2.2.0, i.e. 2.2.0-3.

I used the same exact command above (the second one that removes an
export) after restarting ganesha, and it just worked fine. I use GPFS
FSAL (neither gluster nor VFS).

Not sure why you need to use DisplayExport before using RemoveExport.
Try to trace 'DBUS' component at FULL_DEBUG (or maybe everything at
FULL_DEBUG) and post the log. The error you reported means we are NOT
responding to the dbus message which is very odd!

Indeed! This is why I was worried :-)
I’m attaching the ganesha.log with NIV_FULL_DEBUG, you can see the restart at the end, due to my attempt of RemoveExport, which always gave me the same error as before.
Thanks,

	Alessandro





Reagrds, Malahal.







------------------------------------------------------------------------------
_______________________________________________
Nfs-ganesha-devel mailing list
Nfs-ganesha-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/nfs-ganesha-devel

_______________________________________________
Gluster-users mailing list
Gluster-users@xxxxxxxxxxx
http://www.gluster.org/mailman/listinfo/gluster-users




[Index of Archives]     [Gluster Development]     [Linux Filesytems Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux