On Mon, Sep 9, 2013 at 10:06 PM, Guenter Roeck <linux@xxxxxxxxxxxx> wrote: >> [*] Why does m68k allmodconfig still succeed on kissb??? >> It does fail for me, as m68k's copy_from_user_page() calls >> flush_icache_user_range(), which is not exported. >> > I don't see a build failure in m68k:allmodconfig either. > > flush_icache_user_range() is called from copy_to_user_page(), not from > copy_from_user_page(). copy_from_user_page() calls flush_cache_page() > which calls __flush_cache_030(). The first is inline, the second is > assembler, so I would expect it to work. Which doesn't answer > the question why it fails for you. Sorry, I meant copy_to_user_page(). I tried with 2.6.3 from crosstool, and it succeeded, too. Turns out cfs_access_process_vm() is called with write=0 only. Gcc 2.6.3 optimizes away the write != 0 branch (which calls copy_to_user_page() and thus flush_icache_user_range()), while gcc 4.1.2 doesn't do that. Mystery solved. 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 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel