Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bc41bb11 authored by Bernd Schmidt's avatar Bernd Schmidt Committed by Bryan Wu
Browse files

Blackfin arch: fix bug libstdc++ calling writev with an iovec containing {...


Blackfin arch: fix bug libstdc++ calling writev with an iovec containing { NULL, 0 } fails on Blackfin

Fix a problem reported in the forums - libstdc++ can call writev with an
iovec containing { NULL, 0 }, which works fine on i686-linux, but fails on
Blackfin.  Fixed by allowing size 0 transfers to/from userspace regardless
of the address.

Signed-off-by: default avatarBernd Schmidt <bernd.schmidt@analog.com>
Signed-off-by: default avatarBryan Wu <bryan.wu@analog.com>
parent ef4a47db
Loading
Loading
Loading
Loading
+2 −1
Original line number Original line Diff line number Diff line
@@ -395,7 +395,8 @@ void finish_atomic_sections (struct pt_regs *regs)
#if defined(CONFIG_ACCESS_CHECK)
#if defined(CONFIG_ACCESS_CHECK)
int _access_ok(unsigned long addr, unsigned long size)
int _access_ok(unsigned long addr, unsigned long size)
{
{

	if (size == 0)
		return 1;
	if (addr > (addr + size))
	if (addr > (addr + size))
		return 0;
		return 0;
	if (segment_eq(get_fs(), KERNEL_DS))
	if (segment_eq(get_fs(), KERNEL_DS))