On Mon, Aug 24, 2020 at 06:52:50PM -0500, Bob Pearson wrote: > On 8/24/20 3:52 AM, Leon Romanovsky wrote: > > On Fri, Aug 21, 2020 at 11:16:59PM -0500, Bob Pearson wrote: > >> On 8/21/20 10:32 PM, Zhu Yanjun wrote: > >>> On 8/21/2020 6:46 AM, Bob Pearson wrote: > >>>> Added a new feature to pools to let driver white list a region of > >>>> a pool object. This removes a kernel oops caused when create qp > >>>> returns the qp number so the next patch will work without errors. > >>>> > >>>> Signed-off-by: Bob Pearson <rpearson@xxxxxxx> > > > > And we asked you to provide warning itself. > > > > Thanks > > > > Thanks for your responses to this patch (11/17). I am not yet convinced that there is anything that needs fixing. If you read the code in __check_heap_object in mm/slab.c (see below) you can see that any memory reference to kernel space from the slab/slub allocator, even if it is otherwise perfectly fine, that is not contained in the usercopy region (useroffset to useroffset + usersize from the start of each object) will trigger a warning. This is intentional not a bug. If you create the cache with kmem_cache_create this region is NULL, if you use kmem_cache_create_usercopy you may set the limits on the usercopy region. I suggest to drop this patch, in this cycle, I will send patch that converts QP to general allocation scheme. It will remove RXE QP pool. Thanks