diff mbox series

[u-boot-mvebu,v3,16/18] cmd: rng: Print "Abort" on -EINTR

Message ID 20240327162355.24584-17-kabel@kernel.org
State Superseded
Delegated to: Stefan Roese
Headers show
Series Turris Omnia - New board revision support | expand

Commit Message

Marek Behún March 27, 2024, 4:23 p.m. UTC
In the rng command, print
  Abort
instead of
  Reading RNG failed
if the error number is -EINTR, which can happen if the user pressed
CTRL-C.

Signed-off-by: Marek Behún <kabel@kernel.org>
---
 cmd/rng.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

Comments

Stefan Roese March 28, 2024, 10:22 a.m. UTC | #1
On 3/27/24 17:23, Marek Behún wrote:
> In the rng command, print
>    Abort
> instead of
>    Reading RNG failed
> if the error number is -EINTR, which can happen if the user pressed
> CTRL-C.
> 
> Signed-off-by: Marek Behún <kabel@kernel.org>

Reviewed-by: Stefan Roese <sr@denx.de>

Thanks,
Stefan

> ---
>   cmd/rng.c | 7 ++++---
>   1 file changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/cmd/rng.c b/cmd/rng.c
> index 52f722c7af..48ba67061b 100644
> --- a/cmd/rng.c
> +++ b/cmd/rng.c
> @@ -17,7 +17,7 @@ static int do_rng(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
>   	u8 buf[64];
>   	int devnum;
>   	struct udevice *dev;
> -	int ret = CMD_RET_SUCCESS;
> +	int ret = CMD_RET_SUCCESS, err;
>   
>   	switch (argc) {
>   	case 1:
> @@ -46,8 +46,9 @@ static int do_rng(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
>   
>   	n = min(n, sizeof(buf));
>   
> -	if (dm_rng_read(dev, buf, n)) {
> -		printf("Reading RNG failed\n");
> +	err = dm_rng_read(dev, buf, n);
> +	if (err) {
> +		puts(err == -EINTR ? "Abort\n" : "Reading RNG failed\n");
>   		ret = CMD_RET_FAILURE;
>   	} else {
>   		print_hex_dump_bytes("", DUMP_PREFIX_OFFSET, buf, n);

Viele Grüße,
Stefan Roese
diff mbox series

Patch

diff --git a/cmd/rng.c b/cmd/rng.c
index 52f722c7af..48ba67061b 100644
--- a/cmd/rng.c
+++ b/cmd/rng.c
@@ -17,7 +17,7 @@  static int do_rng(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
 	u8 buf[64];
 	int devnum;
 	struct udevice *dev;
-	int ret = CMD_RET_SUCCESS;
+	int ret = CMD_RET_SUCCESS, err;
 
 	switch (argc) {
 	case 1:
@@ -46,8 +46,9 @@  static int do_rng(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
 
 	n = min(n, sizeof(buf));
 
-	if (dm_rng_read(dev, buf, n)) {
-		printf("Reading RNG failed\n");
+	err = dm_rng_read(dev, buf, n);
+	if (err) {
+		puts(err == -EINTR ? "Abort\n" : "Reading RNG failed\n");
 		ret = CMD_RET_FAILURE;
 	} else {
 		print_hex_dump_bytes("", DUMP_PREFIX_OFFSET, buf, n);