update lustre module to support DNE, PFL
Lustre has recently incorporated features including distributed namespace (DNE) and progressive file layouts (PFL) which have performance implications beyond the stripe width and size. There are probably new ioctls or llapi calls to query this information, and it should be stored in the Lustre module data for each file. Specifically,
- PFL changes the core assumptions we made about stripe layouts, so this must be revisited to ensure that the Lustre module isn't just storing nonsense on PFL-enabled Lustre file systems (>= Lustre 2.10)
- Examining which llapi calls are available will require much more deliberate autoconf macros. Do we want to resort to ioctls (if available) for missing llapi calls? And if so, how will we detect which ioctls are supported by the file system at configure time?
- We should store the MDT to which each file is assigned for both DNE1 and DNE2. At present this information is not stored at all because the Lustre module carries an implicit assumption that there is only one MDT per file system.