Commit Graph

41 Commits

Author SHA1 Message Date
Dmitriy Linikov a8c58607e9 Merged in hardlulz/modem-3.0-nuttx/fix-sem-EINTR (pull request #603)
Added ECANCELED condition to DEBUGASSERT-s checking sem_wait result

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2018-02-20 18:24:53 +00:00
Gregory Nutt 7cf88d7dbd Make sure that labeling is used consistently in all function headers. 2018-02-01 10:00:02 -06:00
Gregory Nutt e4652bd3dc Squashed commit of the following:
fs: Add truncate() support for userfs
    fs/unionfs:  Add truncate() support to the unionfs
    fs/tmpfs:  Add ftruncate() support to tmpfs
    syscall/: Add system call support for ftruncate()
    net/route:  Adding ftruncate() support eliminates an issue in file-based routing table management.
    fs:  Add basic framework to support truncate() and ftruncate().  The infrastructure is complete.  Now, however, the actual implementation of ftruncate() will have to be done for each file system.
2018-01-03 16:03:56 -06:00
Gregory Nutt 9568600ab1 Squashed commit of the following:
This commit backs out most of commit b4747286b1.  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.
2017-10-04 15:22:27 -06:00
Gregory Nutt 42a0796615 Squashed commit of the following:
sched/semaphore:  Add nxsem_post() which is identical to sem_post() except that it never modifies the errno variable.  Changed all references to sem_post in the OS to nxsem_post().

    sched/semaphore:  Add nxsem_destroy() which is identical to sem_destroy() except that it never modifies the errno variable.  Changed all references to sem_destroy() in the OS to nxsem_destroy().

    libc/semaphore and sched/semaphore:  Add nxsem_getprotocol() and nxsem_setprotocola which are identical to sem_getprotocol() and set_setprotocol() except that they never modifies the errno variable.  Changed all references to sem_setprotocol in the OS to nxsem_setprotocol().  sem_getprotocol() was not used in the OS
2017-10-03 15:35:24 -06:00
Gregory Nutt 83cdb0c552 Squashed commit of the following:
libc/semaphore:  Add nxsem_getvalue() which is identical to sem_getvalue() except that it never modifies the errno variable.  Changed all references to sem_getvalue in the OS to nxsem_getvalue().

    sched/semaphore:  Rename all internal private functions from sem_xyz to nxsem_xyz.  The sem_ prefix is (will be) reserved only for the application semaphore interfaces.

    libc/semaphore:  Add nxsem_init() which is identical to sem_init() except that it never modifies the errno variable.  Changed all references to sem_init in the OS to nxsem_init().

    sched/semaphore:  Rename sem_tickwait() to nxsem_tickwait() so that it is clear this is an internal OS function.

    sched/semaphoate:  Rename sem_reset() to nxsem_reset() so that it is clear this is an internal OS function.
2017-10-03 12:52:31 -06:00
Gregory Nutt 41680d376d Replace 'the the' with 'the' 2017-05-11 13:15:13 -06:00
Gregory Nutt 2cb402080a fstat: Add fstat() support to unionfs 2017-02-12 17:05:47 -06:00
Gregory Nutt 7d91fabf01 fstat: Add skeleton implmentations of fstat() in all file systems. 2017-02-12 13:42:27 -06:00
Gregory Nutt 45fd98da88 Add macros support that will eventually allow dynamic allocation of strings need to support soft links. 2017-02-05 14:25:45 -06:00
Gregory Nutt 8f2c7198ed inode_find: Now takes struct inode_desc_s type as input. This was necessary before that structure includes some data storage. It was used within inode_find(), but that means that the life of the data was the life of inode_find(). That data must persist longer. It is now provided by the caller so that the life of the data persists for the entire life of the caller. 2017-02-05 09:51:42 -06:00
Gregory Nutt 0c9935f8ac FS: Remove inode_find_nofollow. Instead provide a bool nofollow argument to inode_find. 2017-02-04 11:46:54 -06:00
Gregory Nutt a1469a3e95 Add CONFIG_DEBUG_ERROR. Change names of *dbg() * *err() 2016-06-11 15:50:49 -06:00
Gregory Nutt fc3540cffe Replace all occurrences of vdbg with vinfo 2016-06-11 11:59:51 -06:00
Gregory Nutt c00e3e55dc Fix several places in DMA logic where a spurious semicolon causes bad conditional logic 2016-05-11 17:42:59 -06:00
Gregory Nutt 9008308b64 Remove some block comments before empty code sections 2016-04-11 18:16:04 -06:00
Gregory Nutt c70987e551 nuttx/fs: Fix some spacing and alignment issues 2015-10-11 11:39:29 -06:00
Gregory Nutt 0b12dbf95d Fix some spacing problems 2015-10-04 15:04:00 -06:00
Gregory Nutt cc7130b836 Correct a reference counting error in mq_open() 2015-09-23 10:34:08 -06:00
Gregory Nutt 342f5fe33d Fix references to the no-longer-existent misc/ directory in comments, README files, and documentation 2015-06-28 08:08:57 -06:00
Gregory Nutt cb039a0281 Minor tweak to last unionfs fix 2015-06-24 10:19:04 -06:00
Gregory Nutt 8ed9c24675 Fix a union file system bug 2015-06-24 09:07:13 -06:00
Gregory Nutt a25ad1417e Updte a README file 2015-06-12 08:46:54 -06:00
Gregory Nutt f6743cde0f Update README.txt 2015-06-11 06:48:19 -06:00
Gregory Nutt 93e0980623 Add support for teensy-3.0 2015-06-10 11:45:53 -06:00
Gregory Nutt b55b42d6c7 Update more broken URLs 2015-06-08 14:16:32 -06:00
Gregory Nutt 2225b1642c Update some README files 2015-06-07 10:25:03 -06:00
Gregory Nutt 87ab1edf25 Union FS: Clean up some statfs error handling 2015-06-07 08:17:28 -06:00
Gregory Nutt 1283e8eca7 Union FS: Correct some calculations in statfs 2015-06-07 07:39:07 -06:00
Gregory Nutt afd7ef15dd Update README files 2015-06-07 07:28:09 -06:00
Gregory Nutt f385e52a34 Union FS needs to unmount contained file systems when it is unmounted 2015-06-06 19:48:38 -06:00
Gregory Nutt 6563d0e444 Union FS: Fix a reference counting problem 2015-06-06 19:16:15 -06:00
Gregory Nutt fe5e61960b Union FS. Fix the unlink() method. What was I thinking 2015-06-06 11:33:09 -06:00
Gregory Nutt 884f3cdf74 Union FS. Correct some handling when the last file is closed 2015-06-06 10:00:26 -06:00
Gregory Nutt 597493221e Union FS. Add logic to omit duplicates in file system 2 when doing directory listing 2015-06-06 09:49:13 -06:00
Gregory Nutt 05e6d9409d Union fs: Fix some compile issues with debug on. Add more test files 2015-06-06 08:36:24 -06:00
Gregory Nutt 1c2374aedb Fix a unionfs memory leak 2015-06-06 07:58:23 -06:00
Gregory Nutt 257a90a686 Fix a couple of unionfs readdir problems 2015-06-06 07:36:38 -06:00
Gregory Nutt a78224d114 Add simulator configuration for testing the Union Fs. Fix a few bugs. Almost works but still too flaky 2015-06-05 15:02:24 -06:00
Gregory Nutt edce8666b6 Add a test of the union file system to apps/examaples. 2015-06-05 14:23:07 -06:00
Gregory Nutt 1d370178fb Add support for a union file system that can be used to overlay and merge the content of two mounted file systems. 2015-06-05 13:18:06 -06:00