On 14-03-26 04:41 AM, Geert Uytterhoeven wrote: > On Thu, Feb 13, 2014 at 10:15 PM, Paul Gortmaker > <paul.gortmaker@xxxxxxxxxxxxx> wrote: >> While copy_to/from_user_page() users are uncommon, there is one in >> drivers/staging/lustre/lustre/libcfs/linux/linux-curproc.c which leads >> to the following: >> >> ERROR: "sparc32_cachetlb_ops" [drivers/staging/lustre/lustre/libcfs/libcfs.ko] undefined! >> >> during routine allmodconfig build coverage. The reason this happens >> is as follows: >> >> In arch/sparc/include/asm/cacheflush_32.h we have: >> >> #define flush_cache_page(vma,addr,pfn) \ >> sparc32_cachetlb_ops->cache_page(vma, addr) >> >> #define copy_to_user_page(vma, page, vaddr, dst, src, len) \ >> do { \ >> flush_cache_page(vma, vaddr, page_to_pfn(page));\ >> memcpy(dst, src, len); \ >> } while (0) >> #define copy_from_user_page(vma, page, vaddr, dst, src, len) \ >> do { \ >> flush_cache_page(vma, vaddr, page_to_pfn(page));\ >> memcpy(dst, src, len); \ >> } while (0) >> >> However, sparc32_cachetlb_ops isn't exported and hence the error. >> >> Signed-off-by: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx> > > Sorry for only noticing now. A similar fix for pa-risc was reverted: > > "Christoph Hellwig <hch@xxxxxxxxxxxxx> commented: > This one shouldn't go in - Geert sent it a bit prematurely, as Lustre > shouldn't use it just to reimplement core VM functionality (which it > shouldn't use either, but that's a separate story)." Generally speaking I agree, and every time I touch lustre, I feel like I need to go home and have a shower. However, in this case, lustre wasn't actually directly calling flush_cache_page type core VM ops directly, and I couldn't convince myself of an argument of why a modular driver should be forbidden from using either of copy_to/from_user_page()... Either way is fine with me. If a revert is desired and we want to make lustre depend on CONFIG_BROKEN (okay, a bit harsh) or don't allow lustre to be modular, that is also fine. Paul. -- > > http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=a446e72bc15c7bfd2c953e56064ace3566c79b0e > > Gr{oetje,eeting}s, > > Geert > > -- > Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx > > In personal conversations with technical people, I call myself a hacker. But > when I'm talking to journalists I just say "programmer" or something like that. > -- Linus Torvalds > -- To unsubscribe from this list: send the line "unsubscribe sparclinux" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html