summaryrefslogtreecommitdiff
path: root/scripts/coccinelle
AgeCommit message (Collapse)AuthorFilesLines
2021-09-28scripts: ensure the cocci script for miiphy_register does not leak the MDIO busVladimir Oltean1-1/+1
When mdio_register fails, mdio_free should be called on the mdiodev that was previously allocated with mdio_alloc. Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
2021-09-28scripts: ensure the cocci script for miiphy_register does not leave ↵Vladimir Oltean1-1/+1
NULL-unterminated strings strncpy() simply bails out when copying a source string whose size exceeds the destination string size, potentially leaving the destination string unterminated. One possible way to address is to pass MDIO_NAME_LEN - 1 and a previously zero-initialized destination string, but this is more difficult to maintain. The chosen alternative is to use strlcpy(), which properly limits the copy len in the (srclen >= size) case to "size - 1", and which is also more efficient than the strncpy() byte-by-byte implementation by using memcpy. The destination string returned by strlcpy() is always NULL terminated. Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
2020-04-24coccinelle: adjust NULL check before free()Heinrich Schuchardt1-13/+11
The free() function checks if its argument is NULL. We should avoid checking for NULL before calling free like in     if (result->tds)         free(result->tds); The list of relevant functions differs between Linux and U-Boot, e.g. we use free(). Adjust the list of relevant functions. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2020-04-24coccinelle: check for casting malloc outputHeinrich Schuchardt1-0/+102
Casting the (void *) output of memory allocation functions before assignment like in sata->cmd_hdr_tbl_offset = (void *)malloc(length + align); is useless. Adopt the Linux kernel script scripts/coccinelle/api/alloc/alloc_cast.cocci. Now 'make coccicheck' generates warnings like: ./drivers/ata/fsl_sata.c:143:29-33: WARNING: casting value returned by memory allocation function to (void *) is useless. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2018-03-09scripts/coccinelle: add some more coccinelle testsHeinrich Schuchardt2-0/+316
kmerr: verify that malloc and calloc are followed by a check to verify that we are not out of memory. badzero: Compare pointer-typed values to NULL rather than 0 Both checks are copied from the Linux kernel archive. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2017-11-21scripts/coccinelle: add some more coccinelle testsHeinrich Schuchardt5-0/+438
Add some useful static code analysis scripts for coccinelle copied from the Linux kernel v4.14-rc8: Warn on check against NULL before calling free. scripts/coccinelle/free/ifnullfree.cocci Detect superfluous NULL check for list iterator. scripts/coccinelle/iterators/itnull.cocci Check if list iterator is reassigned. scripts/coccinelle/iterators/list_entry_update.cocci Check if list iterator is used after loop. scripts/coccinelle/iterators/use_after_iter.cocci Find wrong argument of sizeof in allocation function: scripts/coccinelle/misc/badty.cocci Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2016-08-15scripts: Add a cocci patch for miiphy_registerJoe Hershberger1-0/+142
Many Ethernet drivers still use the legacy miiphy API to register their mdio interface for access to the mdio commands. This semantic patch will convert the drivers from the legacy adapter API to the more modern alloc/register API. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>