> -----Original Message----- > From: linux-nfs-owner@xxxxxxxxxxxxxxx [mailto:linux-nfs- > owner@xxxxxxxxxxxxxxx] On Behalf Of Idan Kedar > Sent: Thursday, August 09, 2012 9:03 AM > To: Boaz Harrosh; NFS list > Cc: Benny Halevy > Subject: return layout on error, BUG/deadlock > > Hi, > > As a result of some experiments, I wanted to see what happens when I > inject an error (hard coded) to the object layout driver. the patch is at the > bottom of this mail. the reason I did this is because when I inject errors in my > modified version of the object layout driver, I get the same BUG Tigran > reported about yesterday: > nfs4proc.c:6252 : BUG_ON(!list_empty(&lo->plh_segs)); > > In my modified version (based on kernel 3.3), the bug seems to be that > pnfs_ld_write_done calls pnfs_return_layout in the error path, even if there > is in-flight I/O. That is not a bug. It is an intentional change in order to allow the MDS to fence off the outstanding writes (if it can do so) before we retransmit them as write-through-MDS. Otherwise, you risk races between the outstanding writes-to-DS and the new writes-through-MDS. See the changelog in the patch that I sent to the list yesterday. -- Trond Myklebust Linux NFS client maintainer NetApp Trond.Myklebust@xxxxxxxxxx www.netapp.com -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html