Re: [PATCH v2 01/14] staging: most: add new file configfs.c

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Mar 28, 2019 at 02:17:29PM +0100, Christian Gromm wrote:
> +static ssize_t mdev_link_direction_store(struct config_item *item,
> +					 const char *page, size_t count)
> +{
> +	struct mdev_link *mdev_link = to_mdev_link(item);
> +
> +	if (sysfs_streq(page, "dir_rx") && sysfs_streq(page, "rx") &&
> +	    sysfs_streq(page, "dir_tx") && sysfs_streq(page, "tx"))

These tests are reversed.  It will never return -EINVAL because one
string can't be four things.

	if (!sysfs_streq(page, "dir_rx") && !sysfs_streq(page, "rx") &&
	    !sysfs_streq(page, "dir_tx") && !sysfs_streq(page, "tx"))
		return -EINVAL;

The sysfs_streq() return true if the strings are equal.  The strcmp()
functions less intuitive and they should be used like this:

	if (strcmp(foo, bar) < 0) {  // <-- foo < bar
	if (strcmp(foo, bar) != 0) { // <-- foo != bar
	if (strcmp(foo, bar) == 0) { // <-- foo == bar

The other streq() tests have the same issue.

regards,
dan carpenter

_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel



[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux