On Mon, Jan 09, 2017 at 07:21:25PM +0200, Amir Goldstein wrote: > On Mon, Jan 9, 2017 at 5:51 PM, Christoph Hellwig <hch@xxxxxxxxxxxxx> wrote: > > On Mon, Jan 09, 2017 at 03:06:27PM +0200, Amir Goldstein wrote: > >> Fix the size of the xfs_mode_to_ftype conversion table, > >> which was too small to handle an invalid value of mode=S_IFMT. > >> > >> Use a convenience macro S_DT(mode) to convert from > >> mode to dirent file type and change the name of the table > >> to xfs_dtype_to_ftype to correctly describe its index values. > > > > This looks like an awful lot of magic. Would a switch statement > > generate so much worse code? > > I doubt it really matters that much, so it's down to a matter of taste. > I personally like the existing map table better than switch if anyone cares ;-) > but I think that the strongest argument in favor of the existing code > is that it works, so no reason to change it. > IMHO, this minor fix and cleanup do not justify switching the code over to > switch statement. I can't feed a garbage index to a switch statement and have it fly off the end of an array; plus we can throw asserts in a default: case. --D > -- > To unsubscribe from this list: send the line "unsubscribe linux-xfs" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-xfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html