On Thu, 21 May 2020 16:23:06 +0100 Steven Price <steven.price@xxxxxxx> wrote: > Jan alert me[1] that the W+X detection debug feature was broken in x86 > by my change[2] to switch x86 to use the generic ptdump infrastructure. > > Fundamentally the approach of trying to move the calculation of > effective permissions into note_page() was broken because note_page() is > only called for 'leaf' entries and the effective permissions are passed > down via the internal nodes of the page tree. The solution I've taken > here is to create a new (optional) callback which is called for all > nodes of the page tree and therefore can calculate the effective > permissions. > > Secondly on some configurations (32 bit with PAE) "unsigned long" is not > large enough to store the table entries. The fix here is simple - let's > just use a u64. I assumed that a cc:stable was appropriate on both of these(?). > I'd welcome testing (and other comments), especially if you have a > configuration which previously triggered W+X warnings as I don't have > such a setup. I'll wait a while for such testing. If nothing happens then I guess we merge it up and see what then happens.