walnux/include/nuttx
YAMAMOTO Takashi 761ee81956 move readv/writev to the kernel
currently, nuttx implements readv/writev on the top of read/write.
while it might work for the simplest cases, it's broken by design.
for example, it's impossible to make it work correctly for files
which need to preserve data boundaries without allocating a single
contiguous buffer. (udp socket, some character devices, etc)

this change is a start of the migration to a better design.
that is, implement read/write on the top of readv/writev.

to avoid a single huge change, following things will NOT be done in
this commit:

* fix actual bugs caused by the original readv-based-on-read design.
  (cf. https://github.com/apache/nuttx/pull/12674)

* adapt filesystems/drivers to actually benefit from the new interface.
  (except a few trivial examples)

* eventually retire the old interface.

* retire read/write syscalls. implement them in libc instead.

* pread/pwrite/preadv/pwritev (except the introduction of struct uio,
  which is a preparation to back these variations with the new
  interface.)
2024-10-30 17:07:54 +08:00
..
1wire include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
aie nuttx ai driver update 2024-10-17 22:35:40 +08:00
analog adc: Implement ADC driver interface for MCP3008 over SPI. Includes documentation page for the driver, and inclusion of driver registration code for RP2040-based boards. 2024-10-22 13:56:23 +08:00
audio nuttx/audio: increase bits of samplerate in struct audio_info_s. 2024-10-16 15:40:35 +08:00
binfmt binfmt:use modlib api inside of elf api [1/2] 2024-10-12 12:29:06 +08:00
can nuttx/can: support to Send message priority sorting function. 2024-10-16 18:37:01 +08:00
clk include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
contactless include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
coresight drivers/coresight:Add TRFCR_EL1 initialization 2024-10-09 08:37:48 +08:00
crypto include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
dma include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
drivers include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
eeprom include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
efuse include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
fs move readv/writev to the kernel 2024-10-30 17:07:54 +08:00
himem include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
hwspinlock include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
i2c include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
i3c Changed the i3c_priv_xfer's member to flags from rnw 2024-10-13 02:49:05 +08:00
input circbuf: Move from mm/circbuf to libs/libc/misc 2024-10-09 08:41:49 +08:00
ioexpander include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
lcd include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
leds include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
lib modlib:if elf in romfs/tmpfs, try use xipbase 2024-10-16 18:40:06 +08:00
math include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
mbox include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
mm mm/kasan: extern kasan API only MM_KASAN is enabled 2024-10-25 19:04:14 +08:00
modem include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
motor include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
mtd include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
net Modify SIOCGCANSTATE/ SIOCSCANSTATE ioctl num 2024-10-09 08:39:14 +08:00
note noteram:support binary read mode 2024-10-13 14:05:50 +08:00
nx include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
pci drivers/pci: fix pci framework warning in 32bit chip 2024-10-13 02:28:32 +08:00
pinctrl include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
power drivers/power/battery: add charge/battery health interface support 2024-10-16 17:33:20 +08:00
rc include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
regmap include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
reset include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
rf include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
rmt include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
rpmsg rpmsg/rpmsg_virtio.h: include <openamp/remoteproc.h> to fix compile error 2024-10-22 08:55:57 +08:00
rptun include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
segger include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
sensors include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
serial serial: remove 'TIOCSLINID' 2024-10-17 09:08:58 +08:00
spi include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
syslog syslog: convert \n to \r\n in syslog framework layer 2024-10-17 02:29:51 +08:00
timers timers: add goldfish timer support 2024-10-08 15:27:33 +08:00
usb include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
usrsock include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
vhost drivers/vhost: add vhost framework for NuttX 2024-10-03 17:37:40 +08:00
video include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
virtio virtio-mmio/pci: add alloc_buf/free_buf for mmio and pci transport layer 2024-10-09 23:32:58 +08:00
wireless bluetooth: Fix the incompatibility made by https://github.com/apache/nuttx/pull/14224 2024-10-18 09:05:54 +08:00
.gitignore
addrenv.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
allsyms.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
arch.h driver/serial: remove return value of up_putc() 2024-10-26 13:21:29 +08:00
ascii.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
atexit.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
atomic.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
bits.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
board.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
cache.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
can.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
cancelpt.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
circbuf.h circbuf: Move from mm/circbuf to libs/libc/misc 2024-10-09 08:41:49 +08:00
clock.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
compiler.h AVR:disable nosanitize_address. 2024-10-17 22:52:42 +08:00
coredump.h coredump: coredump_add_memory_region need use flags 2024-10-24 08:46:01 +08:00
crc8.h libc: add CRC-8-ROHC support 2024-10-13 03:09:26 +08:00
crc16.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
crc32.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
crc64.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
elf.h nuttx/elf.h: Fix build error with unknown type name 'bool'. 2024-10-15 12:35:10 +08:00
environ.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
envpath.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
ethtool.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
event.h fs: support VFS-based named event group 2024-10-09 01:40:00 +08:00
fdcheck.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
fdt.h drivers/devicetree/fdt: get 'reg' property 2024-10-09 02:18:49 +08:00
gdbstub.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
hashtable.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
idr.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
init.h sched: change nxsched_islocked_global to nxsched_islocked_tcb 2024-10-05 13:49:55 +08:00
instrument.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
ipcc.h circbuf: Move from mm/circbuf to libs/libc/misc 2024-10-09 08:41:49 +08:00
irq.h sim: fix sim smp boot regression 2024-10-09 12:33:21 +08:00
kmalloc.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
kthread.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
lin.h add lin status changes the format of the reported frame and add the macros that lin needs 2024-10-15 19:45:38 +08:00
lirc.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
list.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
macro.h nuttx:move "#define STRINGIFY(x)" to nuttx/macro.h 2024-10-13 03:16:25 +08:00
memoryregion.h libs/misc/memoryregion: remove unused memory_region 2024-10-18 21:32:48 +08:00
mmcsd.h mmcsd:add postsleep fields for mmc_ioc_cmd 2024-10-15 02:06:00 +08:00
module.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
mqueue.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
mutex.h misc/assert: add backtrace dump support for mutex hold task 2024-10-09 08:37:01 +08:00
notifier.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
nuttx.h nuttx:move "#define STRINGIFY(x)" to nuttx/macro.h 2024-10-13 03:16:25 +08:00
page.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
panic_notifier.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
pgalloc.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
progmem.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
pthread.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
queue.h include: queue.h: Make flink clear after sq_rem 2024-10-16 13:56:49 +08:00
random.h libc: Refine the arc4random_buf implementation 2024-10-26 18:04:21 -03:00
reboot_notifier.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
rwsem.h Revert "shced:sem: replace mutex with spinlock" 2024-10-29 23:01:39 +08:00
sched.h smp: Implement empty macro for obtaining logical CPU index 2024-10-17 13:43:06 +08:00
sched_note.h drivers/note:add the api of sched_note_add 2024-10-13 14:05:50 +08:00
scsi.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
sdio.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
sdio_slave.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
semaphore.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
signal.h signal: add sig_tgkill() kenrnel version support 2024-10-10 02:38:12 +08:00
spawn.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
spinlock.h Revert "pthread: We should not directly include arch/spinlock.h as it may cause compilation errors in C++." 2024-10-14 17:42:16 +08:00
streams.h noteram: fix variable type 2024-10-13 14:05:50 +08:00
symtab.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
tee.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
thermal.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
tls.h tls.h: list.h should depends on CONFIG_PTHREAD_ATFORK 2024-10-23 20:10:43 +08:00
trace.h support trace_beginex and trace_endex 2024-10-13 10:23:44 +08:00
uorb.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
userspace.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
vt100.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
wdog.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
wqueue.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
zoneinfo.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00