Don't populate the const array spaces on the stack but make it static
const and make the pointer an array to remove a dereference. Shrinks
object code a little too. Also clean up intent, currently it is spaces
and should be a tab.
Signed-off-by: Colin Ian King <[email protected]>
---
drivers/block/rbd.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
index 8f140da1efe3..de7ede6aa95a 100644
--- a/drivers/block/rbd.c
+++ b/drivers/block/rbd.c
@@ -6189,7 +6189,7 @@ static inline size_t next_token(const char **buf)
* These are the characters that produce nonzero for
* isspace() in the "C" and "POSIX" locales.
*/
- const char *spaces = " \f\n\r\t\v";
+ static const char spaces[] = " \f\n\r\t\v";
*buf += strspn(*buf, spaces); /* Find start of token */
--
2.33.1
On Sat, 2021-11-27 at 17:21 +0000, Colin Ian King wrote:
> Don't populate the const array spaces on the stack but make it static
> const and make the pointer an array to remove a dereference. Shrinks
> object code a little too. Also clean up intent, currently it is spaces
> and should be a tab.
>
> Signed-off-by: Colin Ian King <[email protected]>
> ---
> drivers/block/rbd.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
> index 8f140da1efe3..de7ede6aa95a 100644
> --- a/drivers/block/rbd.c
> +++ b/drivers/block/rbd.c
> @@ -6189,7 +6189,7 @@ static inline size_t next_token(const char **buf)
> * These are the characters that produce nonzero for
> * isspace() in the "C" and "POSIX" locales.
> */
> - const char *spaces = " \f\n\r\t\v";
> + static const char spaces[] = " \f\n\r\t\v";
>
> *buf += strspn(*buf, spaces); /* Find start of token */
>
Thanks, Colin. Merged into our "testing" branch. It should make v5.17.
--
Jeff Layton <[email protected]>
On Sat, 2021-11-27 at 17:21 +0000, Colin Ian King wrote:
> Don't populate the const array spaces on the stack but make it static
> const and make the pointer an array to remove a dereference. Shrinks
> object code a little too. Also clean up intent, currently it is spaces
> and should be a tab.
[]
> diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
[]
> @@ -6189,7 +6189,7 @@ static inline size_t next_token(const char **buf)
> * These are the characters that produce nonzero for
> * isspace() in the "C" and "POSIX" locales.
> */
> - const char *spaces = " \f\n\r\t\v";
> + static const char spaces[] = " \f\n\r\t\v";
>
> *buf += strspn(*buf, spaces); /* Find start of token */
>
perhaps
while (isspace(**buf))
(*buf)++;
and not have or use spaces at all.