Re: [PATCH v2] sh: Remove IO memcpy and memset from sh code
Geert Uytterhoeven <[email protected]>
| Newsgroups | gmane.linux.ports.sh.devel,gmane.linux.kernel |
|---|---|
| Message-ID | <CAMuHMdXnfsJ9K=6q5YzTUS=etjQvAWQqbNksaMkysX9bJtMRwA@mail.gmail.com> |
Hi Julian, On Tue, 28 Jan 2025 at 16:22, Julian Vetter <[email protected]> wrote: > Remove IO memcpy and memset from sh specific code and fall back to the > new implementations from lib/iomem_copy.c. They use word accesses if the > buffers are aligned and only fall back to byte accesses for potentially > unaligned parts of a buffer. > > Signed-off-by: Julian Vetter <[email protected]> > --- > Changes for V2: > - Removed also SH4 specific memcpy_fromio code Thanks for the update! > --- a/arch/sh/kernel/io.c > +++ /dev/null > @@ -1,111 +0,0 @@ > -// SPDX-License-Identifier: GPL-2.0 > -/* > - * arch/sh/kernel/io.c - Machine independent I/O functions. > - * > - * Copyright (C) 2000 - 2009 Stuart Menefy > - * Copyright (C) 2005 Paul Mundt > - */ > -#include <linux/module.h> > -#include <linux/pci.h> > -#include <asm/machvec.h> > -#include <asm/io.h> > - > -/* > - * Copy data from IO memory space to "real" memory space. > - */ > -void memcpy_fromio(void *to, const volatile void __iomem *from, unsigned long count) > -{ [...] > - mb(); > -} > -EXPORT_SYMBOL(memcpy_fromio); > - > -/* > - * Copy data from "real" memory space to IO memory space. > - */ > -void memcpy_toio(volatile void __iomem *to, const void *from, unsigned long count) > -{ [...] > - > - mb(); > -} > -EXPORT_SYMBOL(memcpy_toio); LGTM. My only worry is the removal of the mb() calls, cfr. the scary warning at https://elixir.bootlin.com/linux/v6.13/source/arch/sh/include/asm/barrier.h#L13 Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected] 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