Commit Graph

181 Commits

Author SHA1 Message Date
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
Michael Jung
d46a7beef9 fs/nfs/nfs_vfsops.c: Fix buffer corruption. In case multiple read requests to the NFS server are required to fill up the user provided buffer, nfs_read might write behind the end of said buffer. This is fixed with this change. 2017-12-28 06:31:49 -06:00
Michael Jung
223104a6b4 fs/nfs/nfs_vfsops.c: Correctly infer file type. The file type is in struct nfs_statinfo_s's ns_type field, not in the ns_mode field. 2017-12-17 06:43:30 -06:00
Gregory Nutt
ecf6dda2c5 Correct recurring typo: semaphore not semapore 2017-10-09 09:57:56 -06:00
Gregory Nutt
700f1a8e8c Eliminate some warnings found in build testing. 2017-10-08 16:27:17 -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
2c2aa94b7d Squashed commit of the following:
net/: psock_recvfrom() is an internal interface and should not set the errno nor should it be a cancellation point.

    net/: psock_accept() is not a cancellation point.

    net/: psock_getsockopt() and psock_socket*9 are an internal interfaces and should not set the errno.

    net/: psock_getsockopt() is an internal interface and should not set the errno.

    net/: psock_listen() is an internal interface and should not set the errno.

    net/: psock_connect(( is an internal interface and should not set the errno nor should it be a cancellation point.

    net/: psock_bind() is an internal interface and should not set the errno.

    net/: psock_accept() is an internal interface and should not set the errno.
2017-09-30 08:18:08 -06:00
Gregory Nutt
9e8529b1d0 net/sockets: psock_sendto() is an internal OS interface an should not set the errno variable. 2017-09-29 17:35:38 -06:00
Gregory Nutt
aeb59383cf Remove CONFIG_NET_MULTILINK. This increases code size by a little, but greatly reduces the complexity of the network code. 2017-08-08 15:26:09 -06:00
Gregory Nutt
191fb658d0 nfs: Simplify parameters saved for fstat() 2017-02-14 08:16:03 -06:00
Gregory Nutt
d0f0dd222e NFS: Use clock_gettime() instead of deprecated gettimeofday() 2017-02-13 10:39:49 -06:00
Gregory Nutt
10378bb10b fstat: Add fstat() support to nfs. 2017-02-13 10:07:43 -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
0908a6c6b9 Fix calculations using MSEC_PER_TICK. If USEC_PER_TICK is less than 1000, then MSEC_PER_TICK will be zero. It will be inaccurate in any case. 2016-09-25 08:17:33 -06:00
Gregory Nutt
c0142b618d Missing left parenthesis on one of the modified debug statements. 2016-06-11 17:31:11 -06:00
Gregory Nutt
1acafa813b Missing open quotation mark on one of the modified debug statements. 2016-06-11 17:29:32 -06:00
Gregory Nutt
ad2f7b0119 fs/: Change some *err() message to *info() messages if what was a *dbg() message does not indicate and error condition. 2016-06-11 17:14:02 -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
9008308b64 Remove some block comments before empty code sections 2016-04-11 18:16:04 -06:00
Gregory Nutt
0fb035f76b Standardize some naming in code section comments 2016-02-21 18:09:04 -06:00
Gregory Nutt
c70987e551 nuttx/fs: Fix some spacing and alignment issues 2015-10-11 11:39:29 -06:00
Gregory Nutt
cb9e27c3b0 Standardize naming used for public data and function groupings 2015-10-02 16:30:35 -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
Manuel Stühn
f9c0168aba NFS: Fix prototype of unbind method. The function prototype was not updated for NFS after a recent change to the file system interface. From Manuel Stühn. 2015-06-26 07:06:53 -06:00
Gregory Nutt
8055ba4d03 Pass the umount2() flags to every unbind() implementation. That is where the the decision to umount or not will be made. 2015-03-14 17:22:02 -06:00
Gregory Nutt
bcae42b653 Costmetic updates comments and style; Add NFS dependency on IPv4 2015-02-26 06:04:23 -06:00
Gregory Nutt
654788a8e0 Fix NFS compile problem with CONFIG_NFS_STATISTICS=y 2015-02-25 08:58:30 -06:00
Gregory Nutt
87794e494a Add some Kconfig dependencies to reduce possibility of bad configurations. Suggested by OrbitalFox 2015-02-25 08:43:25 -06:00
Gregory Nutt
d6704a1cd7 Suffer the consequences of moving struct timeval to its correct location 2015-02-15 15:18:35 -06:00
Gregory Nutt
8f8259a0d6 Networking: UDP and TCP MSS depends on the IP header size (as well as the link layer header size) and cannot be represented with a single value. 2015-01-16 15:03:10 -06:00
Gregory Nutt
e9cec9057b There were some changes which broke my NuttX-Build. With these two patches it builds again. From Manuel Stühn 2015-01-01 15:56:25 -06:00
Gregory Nutt
2e55db369d Network: All logic will now handle varialbe length link layer protocol headers within incoming packets. This permits use of multiple network interfaces with differing data links. For example, ETHERNET + SLIP 2014-11-15 13:13:23 -06:00
Gregory Nutt
650a0d0615 Completes VFS-based named semaphore implemetation. Still a little buggy 2014-09-28 15:58:56 -06:00
Gregory Nutt
205260d5e2 Reanem kzalloc to kmm_zalloc for consistency 2014-08-31 17:34:44 -06:00
Gregory Nutt
54fa3b0b59 Rename kfree to kmm_free for consistency with other naming conventions 2014-08-31 17:04:02 -06:00
Gregory Nutt
220216cc38 nuttx/fs: Remove explicity references to errno. That is a problem from within the kernel for certain configurations 2014-08-28 16:58:43 -06:00
Gregory Nutt
60246e613b NET: emoved all includes of uip.h; added includes of ip.h wherever needed. Tried to fix problems of the now missing sneak inclusions because uip.h was removed. There are probably a few of these that were missed. 2014-07-04 19:13:08 -06:00
Gregory Nutt
0bb153b8cb Remove all inclusion of uip.h 2014-07-04 16:58:22 -06:00
Gregory Nutt
cce35ce975 NET: More renaming 2014-07-04 15:40:49 -06:00
Gregory Nutt
5d1f8180d4 Move the remaining files from include/nuttx/net/uip to include/nuttx/net; Rename *_internal.h header files in net/ to just *.h 2014-06-24 10:14:15 -06:00
Gregory Nutt
626469e30c Move include/nuttx/net/uipopt.h to include/nuttx/net/netconfig.h 2014-06-24 08:53:28 -06:00
Gregory Nutt
f8024cf409 More trailing whilespace removal 2014-04-13 16:22:22 -06:00
Gregory Nutt
f1671bb6a7 Alloc CONFIG_FS_READABLE/WRITABLE to be defined in Kconfig files while preserving backward compatibility with legacy configurations (for the time being) 2013-11-15 09:49:27 -06:00
patacongo
a1045c27e7 apps/builtin/binfs.c moved to nuttx/fs/binfs/fs_binfs.c
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5523 42af7a65-404d-4744-a932-0658087f49c3
2013-01-16 15:41:27 +00:00
patacongo
5eafdabc5f BINFS now supports open, close, and FIOC_FILENAME ioctl
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5522 42af7a65-404d-4744-a932-0658087f49c3
2013-01-16 14:14:14 +00:00
patacongo
5a2eda210b Finish dup logic for open files; fix bug in sigtimedwait(), would return wrong signo value if the signal was already pending
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5517 42af7a65-404d-4744-a932-0658087f49c3
2013-01-14 19:22:32 +00:00
patacongo
555e3fe1f5 Add support for dup2'ing files. Infrastructure and ROMFS done. Still need FAT, BINFS, NXFFS, and NFS
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5516 42af7a65-404d-4744-a932-0658087f49c3
2013-01-14 15:42:03 +00:00
patacongo
7a9457bb07 Email address change in nuttx/
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5145 42af7a65-404d-4744-a932-0658087f49c3
2012-09-13 18:32:24 +00:00
patacongo
d01b64585e Refactor nfs_socket.c/.h logic; Those files are not gone
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4878 42af7a65-404d-4744-a932-0658087f49c3
2012-06-27 22:03:32 +00:00
patacongo
b5a56aaea8 Prep for 6.19 release
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4847 42af7a65-404d-4744-a932-0658087f49c3
2012-06-15 16:23:17 +00:00
patacongo
7b3b3aadb2 NFS should fail if EINTR is received
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4846 42af7a65-404d-4744-a932-0658087f49c3
2012-06-15 12:51:29 +00:00
patacongo
680d9ccc13 Improve NFS retry logic
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4845 42af7a65-404d-4744-a932-0658087f49c3
2012-06-14 23:27:02 +00:00
patacongo
bf1542f7ab Add NFS rewinddir support; fixe some NFS warnings
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4844 42af7a65-404d-4744-a932-0658087f49c3
2012-06-14 21:54:50 +00:00
patacongo
b356619d7c NFS... add logic to truncate files if needed on open
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4843 42af7a65-404d-4744-a932-0658087f49c3
2012-06-14 18:04:39 +00:00
patacongo
b1ca44e80e More NFS buffering improvements
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4842 42af7a65-404d-4744-a932-0658087f49c3
2012-06-14 15:45:38 +00:00
patacongo
17f5e9c5e2 Clean up NFS user interface; Fix NFS disconnect bug
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4841 42af7a65-404d-4744-a932-0658087f49c3
2012-06-14 14:35:31 +00:00
patacongo
c8e10f99f0 Minor change to NFS interface
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4840 42af7a65-404d-4744-a932-0658087f49c3
2012-06-14 13:08:48 +00:00
patacongo
906c5e8279 NFS... fix close() bug
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4839 42af7a65-404d-4744-a932-0658087f49c3
2012-06-14 01:37:10 +00:00
patacongo
c0c2a8b2df NFS just finished a major weight reduction program
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4838 42af7a65-404d-4744-a932-0658087f49c3
2012-06-14 00:47:42 +00:00
patacongo
8764f673f2 Change NFS buffering
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4837 42af7a65-404d-4744-a932-0658087f49c3
2012-06-13 15:00:34 +00:00
patacongo
7f6145b1e1 NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4836 42af7a65-404d-4744-a932-0658087f49c3
2012-06-13 00:46:44 +00:00
patacongo
00de473558 NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4835 42af7a65-404d-4744-a932-0658087f49c3
2012-06-12 21:59:00 +00:00
patacongo
c968b22942 Conditionally compile out RPC statistics counters
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4834 42af7a65-404d-4744-a932-0658087f49c3
2012-06-12 18:35:42 +00:00
patacongo
80e9e9eef9 NFS code shrinking
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4833 42af7a65-404d-4744-a932-0658087f49c3
2012-06-12 17:36:48 +00:00
patacongo
b9c6c7642d Fix PL2303 typo checked in a long time ago; NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4832 42af7a65-404d-4744-a932-0658087f49c3
2012-06-12 16:11:31 +00:00
patacongo
b8b535ec17 NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4831 42af7a65-404d-4744-a932-0658087f49c3
2012-06-11 23:51:39 +00:00
patacongo
6a0e4e78a6 Add NSH mv command
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4830 42af7a65-404d-4744-a932-0658087f49c3
2012-06-11 23:47:31 +00:00
patacongo
b53b0e3934 NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4829 42af7a65-404d-4744-a932-0658087f49c3
2012-06-11 21:16:35 +00:00
patacongo
456128f01f NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4828 42af7a65-404d-4744-a932-0658087f49c3
2012-06-11 18:55:58 +00:00
patacongo
6632427466 NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4827 42af7a65-404d-4744-a932-0658087f49c3
2012-06-11 17:14:46 +00:00
patacongo
3f0546f6ce NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4826 42af7a65-404d-4744-a932-0658087f49c3
2012-06-11 14:39:19 +00:00
patacongo
0dff411045 NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4825 42af7a65-404d-4744-a932-0658087f49c3
2012-06-10 23:17:10 +00:00
patacongo
1f50ae3af4 NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4824 42af7a65-404d-4744-a932-0658087f49c3
2012-06-10 18:16:01 +00:00
patacongo
54d8e642c4 NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4823 42af7a65-404d-4744-a932-0658087f49c3
2012-06-10 01:16:46 +00:00
patacongo
686cf098e0 NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4822 42af7a65-404d-4744-a932-0658087f49c3
2012-06-10 00:13:59 +00:00
patacongo
839e11d8eb NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4821 42af7a65-404d-4744-a932-0658087f49c3
2012-06-09 19:29:49 +00:00
patacongo
03b5bdf3db NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4820 42af7a65-404d-4744-a932-0658087f49c3
2012-06-09 15:55:10 +00:00
patacongo
44d6f19868 NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4819 42af7a65-404d-4744-a932-0658087f49c3
2012-06-09 00:08:18 +00:00
patacongo
ad13bd3827 NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4818 42af7a65-404d-4744-a932-0658087f49c3
2012-06-08 18:56:01 +00:00
patacongo
ac9fba297a NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4817 42af7a65-404d-4744-a932-0658087f49c3
2012-06-08 15:45:40 +00:00
patacongo
fdf06261b2 NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4814 42af7a65-404d-4744-a932-0658087f49c3
2012-06-08 00:14:54 +00:00
patacongo
4f8e4d2308 First round of compile fixes for IPv6
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4813 42af7a65-404d-4744-a932-0658087f49c3
2012-06-07 22:00:19 +00:00
patacongo
1b7be5f0e0 Cosmetic NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4812 42af7a65-404d-4744-a932-0658087f49c3
2012-06-07 18:47:20 +00:00
patacongo
a959f4895b NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4811 42af7a65-404d-4744-a932-0658087f49c3
2012-06-07 16:53:46 +00:00
patacongo
b49a2b0c91 A little more NFS instrumentation
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4810 42af7a65-404d-4744-a932-0658087f49c3
2012-06-07 01:51:30 +00:00
patacongo
d21c3b70dd NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4809 42af7a65-404d-4744-a932-0658087f49c3
2012-06-07 01:03:34 +00:00
patacongo
1e5f276ad9 NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4808 42af7a65-404d-4744-a932-0658087f49c3
2012-06-06 21:51:03 +00:00
patacongo
56dc80a2c9 Fix PHY address search; NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4796 42af7a65-404d-4744-a932-0658087f49c3
2012-06-01 23:12:17 +00:00
patacongo
5b10b8a9a9 NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4790 42af7a65-404d-4744-a932-0658087f49c3
2012-05-30 23:21:37 +00:00
patacongo
b2a50338ce NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4785 42af7a65-404d-4744-a932-0658087f49c3
2012-05-29 23:23:22 +00:00
patacongo
5e81918c8c NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4781 42af7a65-404d-4744-a932-0658087f49c3
2012-05-28 23:40:20 +00:00
patacongo
3925a71d51 NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4764 42af7a65-404d-4744-a932-0658087f49c3
2012-05-23 00:15:53 +00:00
patacongo
61d0babe77 NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4749 42af7a65-404d-4744-a932-0658087f49c3
2012-05-19 01:46:02 +00:00
patacongo
327730cbea Final refactoring and implementation of delayed window deletion logic. Works worse now, but the changes are important and need to be checked in now
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4747 42af7a65-404d-4744-a932-0658087f49c3
2012-05-18 23:08:34 +00:00
patacongo
bab803e9fd NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4746 42af7a65-404d-4744-a932-0658087f49c3
2012-05-18 01:11:57 +00:00
patacongo
2cb0803db7 NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4724 42af7a65-404d-4744-a932-0658087f49c3
2012-05-12 00:11:24 +00:00
patacongo
f5ad5f4bc2 NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4713 42af7a65-404d-4744-a932-0658087f49c3
2012-05-07 23:33:39 +00:00