On Sun, Mar 22, 2020 at 10:10:38AM +0200, Leon Romanovsky wrote:
On Sat, Mar 21, 2020 at 06:55:05PM -0300, Jason Gunthorpe wrote:
On Sat, Mar 21, 2020 at 10:27:46AM -0700, Ralph Campbell wrote:
On 3/21/20 2:00 AM, Leon Romanovsky wrote:
On Fri, Mar 20, 2020 at 05:31:05PM -0700, Ralph Campbell wrote:
This series adds basic self tests for HMM and are intended for Jason Gunthorpe's rdma tree which has a number of HMM patches applied.
Changes v7 -> v8: Rebased to Jason's rdma/hmm tree, plus Jason's 6 patch series "Small hmm_range_fault() cleanups". Applied a number of changes from Jason's comments.
Changes v6 -> v7: Rebased to linux-5.6.0-rc6 Reverted back to just using mmu_interval_notifier_insert() and making this series only introduce HMM self tests.
Changes v5 -> v6: Rebased to linux-5.5.0-rc6 Refactored mmu interval notifier patches Converted nouveau to use the new mmu interval notifier API
Changes v4 -> v5: Added mmu interval notifier insert/remove/update callable from the invalidate() callback Updated HMM tests to use the new core interval notifier API
Changes v1 -> v4: https://lore.kernel.org/linux-mm/20191104222141.5173-1-rcampbell@nvidia.com
Ralph Campbell (3): mm/hmm/test: add selftest driver for HMM mm/hmm/test: add selftests for HMM MAINTAINERS: add HMM selftests
MAINTAINERS | 3 + include/uapi/linux/test_hmm.h | 59 ++
Isn't UAPI folder supposed to be for user-visible interfaces that follow the rule of non-breaking user space and not for selftests?
Thanks
Most of the other kernel module tests seem to invoke the test as part of the module load/init. I'm open to moving it if there is a more appropriate location.
Is it even possible to create a user mm_struct and put crazy things in it soley from a kernel module?
I didn't look very closely of what Ralph did in his patchsets, but from what I know, if you want in-kernel interface, you use in-kernel module, if you want to test user visible uapi, you write application. You don't create new UAPI just to test something in the kernel.
That works fine as long as the in-kernel interfaces don't require user created objects like mm_struct and vmas, which is the case here.
So there must be some special uAPI between the kerne/user to make it work.
Jason