Revision 33844e665104b169a3a7732bdcddb40e4f82b335 authored by Al Viro on 22 December 2016, 02:55:02 UTC, committed by Al Viro on 23 December 2016, 04:00:22 UTC
Problem similar to ones dealt with in "fold checks into iterate_and_advance()"
and followups, except that in this case we really want to do nothing when
asked for zero-length operation - unlike zero-length iterate_and_advance(),
zero-length iterate_all_kinds() has no side effects, and callers are simpler
that way.

That got exposed when copy_from_iter_full() had been used by tipc, which
builds an msghdr with zero payload and (now) feeds it to a primitive
based on iterate_all_kinds() instead of iterate_and_advance().

Reported-by: Jon Maloy <jon.maloy@ericsson.com>
Tested-by: Jon Maloy <jon.maloy@ericsson.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
1 parent c00d2c7
History
File Mode Size
Kconfig -rw-r--r-- 5.3 KB
Makefile -rw-r--r-- 790 bytes
README.dino -rw-r--r-- 1.0 KB
asp.c -rw-r--r-- 3.5 KB
ccio-dma.c -rw-r--r-- 47.4 KB
ccio-rm-dma.c -rw-r--r-- 5.1 KB
dino.c -rw-r--r-- 30.3 KB
eisa.c -rw-r--r-- 11.5 KB
eisa_eeprom.c -rw-r--r-- 2.7 KB
eisa_enumerator.c -rw-r--r-- 11.5 KB
gsc.c -rw-r--r-- 5.6 KB
gsc.h -rw-r--r-- 1.5 KB
hppb.c -rw-r--r-- 2.7 KB
iommu-helpers.h -rw-r--r-- 4.7 KB
iosapic.c -rw-r--r-- 29.0 KB
iosapic_private.h -rw-r--r-- 5.7 KB
lasi.c -rw-r--r-- 6.2 KB
lba_pci.c -rw-r--r-- 47.8 KB
led.c -rw-r--r-- 19.9 KB
pdc_stable.c -rw-r--r-- 30.3 KB
power.c -rw-r--r-- 7.3 KB
sba_iommu.c -rw-r--r-- 58.1 KB
superio.c -rw-r--r-- 13.8 KB
wax.c -rw-r--r-- 3.2 KB

README.dino

back to top