forked from luck/tmp_suning_uos_patched
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: Bernd Schmidt <bernd.schmidt@analog.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com>
This commit is contained in:
parent
ef4a47db52
commit
bc41bb1165
@ -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))
|
||||||
|
Loading…
Reference in New Issue
Block a user