On Thu, Jul 18, 2013 at 11:40:16AM -0700, Nathan Rutman wrote: > >> } > >> RETURN(rc); > >> } > >> What is going on here? We cast something to struct super_block *? > >> Where does it come from? The function it's in is > Well, addressing the "what's going on" question without getting into the larger philosophy, > keys and values are used as a generic mechanism to pass various items between Lustre clients > and servers. In this case, a specific key should only have a value of "a superblock", and so this is > just a sanity check to make sure the value length is sane. It should probably be more of an ASSERT, > but we can't reasonably assert on remotely-supplied data. What? Excuse me, but have you seriously been intending to pass struct super_block instances around? Ones that are choke-full of pointers to all kinds of things, not to mention a mutex, spinlock, etc.? _THAT_ was going to be a remotely supplied data? I really hope I've misparsed what you said above... And that still leaves the question about the code path that could lead to execution of mgc_fs_setup(). -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html