Squashed commit of the following:
This commit backs out most of commit b4747286. That change was added because sem_wait() would sometimes cause cancellation points inappropriated. But with these recent changes, nxsem_wait() is used instead and it is not a cancellation point. In the OS, all calls to sem_wait() changed to nxsem_wait(). nxsem_wait() does not return errors via errno so each place where nxsem_wait() is now called must not examine the errno variable. In all OS functions (not libraries), change sem_wait() to nxsem_wait(). This will prevent the OS from creating bogus cancellation points and from modifying the per-task errno variable. sched/semaphore: Add the function nxsem_wait(). This is a new internal OS interface. It is functionally equivalent to sem_wait() except that (1) it is not a cancellation point, and (2) it does not set the per-thread errno value on return.
Showing
- TODO 9 additions, 20 deletionsTODO
- arch/arm/src/efm32/efm32_dma.c 22 additions, 7 deletionsarch/arm/src/efm32/efm32_dma.c
- arch/arm/src/efm32/efm32_i2c.c 14 additions, 3 deletionsarch/arm/src/efm32/efm32_i2c.c
- arch/arm/src/efm32/efm32_spi.c 24 additions, 8 deletionsarch/arm/src/efm32/efm32_spi.c
- arch/arm/src/efm32/efm32_usbhost.c 13 additions, 8 deletionsarch/arm/src/efm32/efm32_usbhost.c
- arch/arm/src/imx1/imx_spi.c 11 additions, 11 deletionsarch/arm/src/imx1/imx_spi.c
- arch/arm/src/imx6/imx_ecspi.c 11 additions, 11 deletionsarch/arm/src/imx6/imx_ecspi.c
- arch/arm/src/imx6/imx_serial.c 3 additions, 3 deletionsarch/arm/src/imx6/imx_serial.c
- arch/arm/src/kinetis/kinetis_i2c.c 14 additions, 3 deletionsarch/arm/src/kinetis/kinetis_i2c.c
- arch/arm/src/kinetis/kinetis_sdhc.c 9 additions, 4 deletionsarch/arm/src/kinetis/kinetis_sdhc.c
- arch/arm/src/kinetis/kinetis_spi.c 10 additions, 5 deletionsarch/arm/src/kinetis/kinetis_spi.c
- arch/arm/src/kl/kl_spi.c 12 additions, 6 deletionsarch/arm/src/kl/kl_spi.c
- arch/arm/src/lc823450/lc823450_adc.c 27 additions, 5 deletionsarch/arm/src/lc823450/lc823450_adc.c
- arch/arm/src/lc823450/lc823450_i2c.c 13 additions, 2 deletionsarch/arm/src/lc823450/lc823450_i2c.c
- arch/arm/src/lc823450/lc823450_mtd.c 13 additions, 2 deletionsarch/arm/src/lc823450/lc823450_mtd.c
- arch/arm/src/lc823450/lc823450_sdc.c 13 additions, 2 deletionsarch/arm/src/lc823450/lc823450_sdc.c
- arch/arm/src/lc823450/lc823450_sddrv_dep.c 13 additions, 2 deletionsarch/arm/src/lc823450/lc823450_sddrv_dep.c
- arch/arm/src/lc823450/lc823450_serial.c 1 addition, 1 deletionarch/arm/src/lc823450/lc823450_serial.c
- arch/arm/src/lc823450/lc823450_spi.c 11 additions, 6 deletionsarch/arm/src/lc823450/lc823450_spi.c
- arch/arm/src/lc823450/lc823450_timerisr.c 1 addition, 1 deletionarch/arm/src/lc823450/lc823450_timerisr.c
Loading
Please register or sign in to comment