zephyr/include
Ravi kumar Veeramally 58ba1d834e net: nbuf: Fix net_nbuf_compact() API
Current API description of net_nbuf_compact() is not very clear.
The first parameter needs to be the first net_buf in the chain.

The changes to this API are needed in order to clarify following
use cases:
1) User provides fragment that is not first of the chain and compact is
successfully done. In this case there is no free space in fragment list
after the input fragment. But there might be empty space in previous
fragments. So fragment chain is not completely compacted.

2) What if input fragment has been deleted and api returns the same
buf?

So this commit simplifies the API behavior. Now net_nbuf_compact()
expects the first parameter to be either TX or RX net_buf and then it
compacts it. It fails only if the input fragment is a data fragment.

Change-Id: I9e02dfcb6f3f2e2998826522a25ec207850a8056
Signed-off-by: Ravi kumar Veeramally <ravikumar.veeramally@linux.intel.com>
2017-02-08 10:12:36 +02:00
..
arch riscv32: added a generic linker script for the riscv32 platform 2017-02-03 19:20:52 +01:00
bluetooth Bluetooth: A2DP: Stream End Point Structure 2017-01-28 08:43:41 +02:00
debug license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
display license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
drivers x86: implement direct interrupts 2017-02-03 18:18:30 +00:00
fs license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
linker build: remove obsolete sections from linker scripts 2017-01-18 18:47:17 +00:00
logging kernel_event_logger: add additional function prototypes 2017-01-19 20:17:29 +00:00
misc license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
net net: nbuf: Fix net_nbuf_compact() API 2017-02-08 10:12:36 +02:00
shell license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
toolchain license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
usb usb: Change transfer_len type to int32_t in usb_request_handler typedef 2017-01-30 12:01:49 +00:00
adc.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
aio_comparator.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
atomic.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
cache.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
clock_control.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
counter.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
device.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
disk_access.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
dma.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
eth.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
flash.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
fs.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
gpio.h gpio: Clarify API 2017-02-06 13:15:49 +00:00
i2c.h i2c: Elaborate API return values 2017-02-07 18:32:39 +00:00
init.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
ipm.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
irq.h irq: introduce 'direct' interrupt API definition 2017-02-02 17:46:33 +00:00
irq_offload.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
kernel.h kernel: k_timer_stop: remove assert when called from an ISR 2017-02-04 19:25:11 +00:00
kernel_version.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
legacy.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
linker-defs.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
linker-tool-gcc.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
linker-tool.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
microkernel.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
nanokernel.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
pinmux.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
power.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
pwm.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
random.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
rtc.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
section_tags.h k64: Rename security_frdm_k64f section 2017-01-30 11:02:35 -06:00
sections.h k64: Rename security_frdm_k64f section 2017-01-30 11:02:35 -06:00
sensor.h sensor: add SENSOR_CHAN_*_XYZ enum values 2017-01-27 17:46:18 +00:00
shared_irq.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
spi.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
sw_isr_table.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
sys_clock.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
sys_io.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
toolchain.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
uart.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
watchdog.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00
zephyr.h license: Replace Apache boilerplate with SPDX tag 2017-01-19 03:50:58 +00:00