1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

729 Commits

Author SHA1 Message Date
Marian Buschsieweke
cab761ba5d
sys/shell/commands/sc_gnrc_icmpv6_echo: use ztimer 2022-07-21 13:20:11 +02:00
Martine Lenders
fda230eb7c
Merge pull request #18275 from maribu/sys/net/rpl/netstats
sys/net/gnrc/rpl: sync access to netstats
2022-07-01 12:24:24 +02:00
Marian Buschsieweke
5a47d6a9b8
sys/net/gnrc/rpl: sync access to netstats
Synchronize the RPL thread updating the RPL netstats with the RPL
shell command reading it by disabling IRQs. This will prevent printing
corrupted data on non-32bit platforms as well as printing inconsistent
data (e.g. TX count of old state in conjunction with TX bytes of new
state) for all platforms.

Co-authored-by: Martine Lenders <mail@martine-lenders.eu>
2022-06-30 09:48:46 +02:00
Marian Buschsieweke
93d8bade8e
sys/net/gnrc/rpl: refactor netstats_rpl_t
There is a repeating pattern in the struct that is split out into a
subtype in this commit. This makes handling the data easier, as now
done in the print routine.
2022-06-30 09:48:45 +02:00
Marian Buschsieweke
973b6f69bf
sys/net/netopt: change NETOPT_STATS semantics
Instead of retrieving a pointer with NETOPT_STATS, retrieve the current
data. This avoids data corruptions when reading from one thread (e.g.
the thread running the shell (ifconfig command)) while another thread
is updating it (e.g. the netif thread).

The issue affects all boards, as users typically expect the count of
TX packets and the number of TX bytes to refer to the same state. For
16 bit and 8 bit platforms even a single netstat entry can read back
corrupted.

This fixes the issue by just copying the whole netstat_t struct over
without requiring explicit locking on the user side. A multi-threaded
network stack still needs to synchronize the thread responding to
netopt_get with the thread writing to the netstat_t structure, but that
is an implementation detail no relevant to the user of the API.
2022-06-28 16:57:43 +02:00
Erik Ekman
aaa73b79ed sys/shell/gnrc_netif: List netifs in registration order
The netif list is used like a stack, so it needs to be
iterated in reverse to keep the registration order.

Time complexity in O(n^2), but the the list is normally very short
(1-2 items).

Before:
```
> ifconfig
Iface  10  HWaddr: 24:0A:C4:E6:0E:9C  Channel: 0  Link: down
[..]

Iface  7  HWaddr: 24:0A:C4:E6:0E:9F  Link: down
[..]
```

Now they are in the increasing order:
```
> ifconfig
Iface  7  HWaddr: 24:0A:C4:E6:0E:9F  Link: down
[..]

Iface  10  HWaddr: 24:0A:C4:E6:0E:9C  Channel: 0  Link: down
[..]
```

When lwIP is hacked to use the same shell command, it also
lists it interfaces in the expected order (was ET1,ET0 before):
```
> ifconfig
Iface  ET0  HWaddr: 24:0A:C4:E6:0E:9F  Link: down
[..]

Iface  ET1  HWaddr: 24:0A:C4:E6:0E:9C  Channel: 0  Link: down
[..]
```
2022-06-21 11:54:08 +02:00
Marian Buschsieweke
dd6243f27f
Merge pull request #18213 from maribu/sys/shell/commands/sc_lwip_netif.c
sys/shell/commands/sc_lwip_netif.c: add address state
2022-06-16 13:38:55 +02:00
benpicco
0a16f8266a
Merge pull request #17962 from benpicco/nanocoap_vfs-put
nanocoap_vfs: add nanocoap_vfs_put()
2022-06-16 11:53:36 +02:00
Marian Buschsieweke
3954217fdf
sys/shell/commands/sc_lwip_netif.c: add address state
Add information about the address state (e.g. if it is valid, preferred,
tentative, how many probes have been sent)
2022-06-16 08:40:42 +02:00
Marian Buschsieweke
4f769c2f55
sys/shell/commands: add static qualifier where appropriate
Due to the conversion to XFA based SHELL_COMMAND() much fewer function
need to expose a symbol. Hence, spray `static` all over the place.
2022-06-11 14:38:58 +02:00
Benjamin Valentin
d8da1b631c sys/shell: add 'ncput' shell command 2022-06-08 17:21:19 +02:00
Marian Buschsieweke
5ea582b3dd
sys/shell_commands: convert to SHELL_COMMAND()
Make use of XFA for shell commands
2022-06-07 09:25:04 +02:00
Marian Buschsieweke
66a04926ca
sys/shell_commands: fix signature of _openwsn_ifconfig 2022-06-07 09:24:49 +02:00
Marian Buschsieweke
86e0ba3cdb
sys/shell/commands: remove stale reference to id cmds
The shell command `id` was dropped in
b3a061e0ab but somehow the command entry
was left it. This cleans it up.
2022-06-07 09:24:49 +02:00
Francisco
f6d5a54c3e
Merge pull request #18045 from benpicco/suit/transport-vfs
suit/transport/vfs: add VFS as source for firmware updates
2022-06-07 08:32:15 +02:00
Benjamin Valentin
8e5812d218 suit/transport: move common code to new file 2022-06-01 13:00:51 +02:00
benpicco
b94dd60978
Merge pull request #17912 from benpicco/pkg/fatfs-rtt_rtc
pkg/fatfs, shell: enable RTC support if rtt_rtc is used
2022-05-31 10:30:29 +02:00
Benjamin Valentin
4dd971f749 sys/shell: add 'nget' shell command 2022-05-24 09:35:04 +02:00
benpicco
c72d4ccc0e
Merge pull request #18112 from fjmolinas/pr_vfs_rmount_mkdir
sys/shell/vfs: add umount, rmount and mkdir commands
2022-05-23 23:33:16 +02:00
Francisco Molina
81f172039a sys/shell/vfs: add umount, rmount and mkdir commands 2022-05-23 16:41:34 +02:00
Benjamin Valentin
ff27db9bce sys/shell: add sha256sum command 2022-05-17 11:32:25 +02:00
Benjamin Valentin
a250c2b5ad sys/shell: add sha1sum command 2022-05-17 11:30:52 +02:00
Benjamin Valentin
845450c663 sys/shell: add md5sum command 2022-05-17 11:30:52 +02:00
Martine Lenders
aa5a18f833
Merge pull request #16974 from yarrick/lwip_netif
pkg/lwip: Add netif_t struct, register all netifs
2022-04-26 23:49:49 +02:00
Francisco Molina
ee9bf559fe sys/sc_suit: aligh seq_no format with riotboot_hdr 2022-04-21 16:59:32 +02:00
Francisco Molina
180be1d6ee sys/sc_suit: add seq_no command 2022-04-14 08:39:28 +02:00
Benjamin Valentin
4fae412027 sys/shell: enable RTC commands with rtt_rtc 2022-04-11 14:26:08 +02:00
Oleg Hahm
f3ffe134b0
Merge pull request #17895 from benpicco/pm_blocker_array
sys/pm_layered: use array representation, get rid of implicit IDLE mode
2022-04-08 14:04:46 +02:00
Benjamin Valentin
7fb8f3b7c5 sys/pm_layered: rename val_u8 -> blockers 2022-04-06 12:29:25 +02:00
3a83c380f7
Merge pull request #17824 from geonnave/set_channels_mask
pkg/semtech-loramac: enable setting channels mask
2022-04-02 18:56:11 +02:00
Benjamin Valentin
bb8def8b3e cord_ep: replace sock_udp_str2ep() with sock_udp_name2ep() 2022-03-24 17:10:51 +01:00
Geovane Fedrecheski
eabeee0ebe sys/shell+pkg/semtech-loramac: add get ch_mask
Also, set LORAMAC_CHANNELS_MASK_LEN based on the
selected LORA_REGION configuration.
2022-03-18 14:26:01 -03:00
Geovane Fedrecheski
26c55a91bd sys/shell: add 'loramac set ch_mask' command 2022-03-18 10:48:18 -03:00
Francisco Molina
be6a76a3c0 sys/sc_gnrc_udp: fix *timer include 2022-03-17 14:37:40 +01:00
Karl Fessel
4147042bc1 sys/shell: add missing includes 2022-02-28 14:53:07 +01:00
Francisco
ff39d5f388
Merge pull request #17657 from benpicco/shell/udp_cmd-fix
shell/sc_gnrc_udp: always use delay in µs
2022-02-22 10:44:57 +01:00
chrysn
40f7c66625
Merge pull request #17660 from chrysn-pull-requests/vfs-drop-per-fs-fstatvfs
vfs: Introduce reliable disk enumeration
2022-02-17 18:47:41 +01:00
chrysn
b9b0ca8972 sys/shell/vfs: Use vfs_iter_mount_dirs instead of vfs_iter_mounts
This solves highly theoretical race conditions of file systems being
unmounted in an application while a shell `df` runs, fixes the previous
weird behavior that `/mountpoint/non-existant-path` could be df'd and
would even report that non-existant path as a file name, but more
practically ensures that an example of vfs_iter_mount_dirs is around.
2022-02-16 19:15:02 +01:00
Benjamin Valentin
609ed81f36 sys/shell: add vfs mount command 2022-02-16 18:55:26 +01:00
Benjamin Valentin
8bb405a493 shell/sc_gnrc_udp: always use delay in µs 2022-02-15 15:08:53 +01:00
Benjamin Valentin
d5dee30368 shell/sc_gnrc_udp: don't add delay after last packet 2022-02-14 17:58:20 +01:00
Benjamin Valentin
e22698f9cd shell/sc_gnrc_udp: set proper timeout based on which timer is used 2022-02-14 17:52:55 +01:00
Benjamin Valentin
0cd3cf4506 sc_vfs: print files with unknown type 2022-02-08 16:28:33 +01:00
Benjamin Valentin
a486bae55a sc_vfs: print file size
This prints the size of the displayed files in `ls`.
It also makes it easier to distinguis files from directories.
2022-02-08 13:23:42 +01:00
Francisco
dbae3ed706
Merge pull request #16860 from haukepetersen/add_nimble_netifextadv
nimble/netif: add support for BT5 PHY modes
2022-02-04 11:16:11 +01:00
benpicco
5a57dec71a
Merge pull request #17093 from maribu/core/change_prio
core/sched: add sched_change_priority()
2022-01-28 20:01:20 +01:00
Hauke Petersen
7c3f4e0fe9 shell/sc_nimble_statconn: allow to set PHY mode 2022-01-27 10:30:29 +01:00
Hauke Petersen
f9386b4af7 shell/sc_nimble_netif: extend to support PHY modes 2022-01-27 10:30:29 +01:00
Jose Alamos
9955a35c63
[treewide] lora: use int16_t for RSSI value
The RSSI values reported by LoRa transceiver can be less than -127.
Therefore, `int8_t` is not enough. This commit defines the RSSI of
`netdev_lora_rx_info` as `int16_t` and adapt the drivers accordingly
(sx126x, sx127x).
2022-01-17 17:54:18 +01:00
Hauke Petersen
bc0adc19a8 shell/sc_gnrc_udp: rename static functions 2021-12-14 13:50:38 +01:00