lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 18 Jul 2016 21:59:56 +0200
From:	Arnd Bergmann <arnd@...db.de>
To:	Brian Norris <computersforpeace@...il.com>
Cc:	Cyrille Pitchen <cyrille.pitchen@...el.com>,
	linux-mtd@...ts.infradead.org, nicolas.ferre@...el.com,
	boris.brezillon@...e-electrons.com, marex@...x.de,
	linux-kernel@...r.kernel.org
Subject: Re: [PATCH 2/2] mtd: atmel-quadspi: add driver for Atmel QSPI controller

On Monday, July 18, 2016 12:55:11 PM CEST Brian Norris wrote:
> On Mon, Jul 18, 2016 at 09:35:39PM +0200, Arnd Bergmann wrote:
> > On Friday, July 15, 2016 5:45:07 PM CEST Brian Norris wrote:
> > > Applied to l2-mtd.git with that fixup.
> > 
> > I'm getting this build error now on a randconfig build:
> > 
> > drivers/mtd/built-in.o: In function `atmel_qspi_run_command':
> > :(.text+0x1ee3c): undefined reference to `_memcpy_toio'
> > :(.text+0x1ee48): undefined reference to `_memcpy_fromio'
> 
> Whoops, I noticed those during review, but I don't know why I forgot to
> mention them nor fix them up before applying.
> 
> > On ARCH_EBSA, which doesn't build the file that contains the two
> > functions. I don't see any other driver on ARM using those two
> > functions directly. What is the specific reason for using them
> > here? Do you require byte-wise accesses, or could you use
> > the normal memcpy_toio/memcpy_fromio that turn into aligned
> > 32-bit word accesses instead?
> 
> Good questions. I would suspect that aligned 32-bit accesses are what
> they're looking for, but I'm not absolutely sure.

Ok, so we should look at that first. If the driver supports 32-bit
access, using the regular accessors will also make the transfers
much faster.

> > If you have to use the non-portable
> > functions, maybe we can just make the driver depend on !ARCH_EBSA?
> 
> I don't see an ARCH_EBSA. Did you mean ARCH_EBSA110?

Yes, sorry for the typo.

> Or we could just drop the '|| (ARM && COMPILE_TEST)' clause for now:
> 
>         depends on ARCH_AT91 || (ARM && COMPILE_TEST)

I'd prefer to keep the COMPILE_TEST option, after all it's how
I found the problem. On a related note, what is the ARM dependency
for? Is that just for the _memcpy_toio/_memcpy_fromio? Maybe we
can drop too if we find the right architecture-independent
replacement for those two calls.

	Arnd

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ