Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752371AbbHEI1w (ORCPT ); Wed, 5 Aug 2015 04:27:52 -0400 Received: from mail-wi0-f177.google.com ([209.85.212.177]:37552 "EHLO mail-wi0-f177.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752340AbbHEI1q (ORCPT ); Wed, 5 Aug 2015 04:27:46 -0400 MIME-Version: 1.0 In-Reply-To: <201508041842.03871.marex@denx.de> References: <201508032346.36032.marex@denx.de> <201508041842.03871.marex@denx.de> From: Michal Suchanek Date: Wed, 5 Aug 2015 10:27:05 +0200 Message-ID: Subject: Re: [PATCH v2 1/6] mtd: spi-nor: change return value of read/write To: Marek Vasut Cc: David Woodhouse , Brian Norris , Han Xu , =?UTF-8?B?UmFmYcWCIE1pxYJlY2tp?= , Huang Shijie , Ben Hutchings , Gabor Juhos , =?UTF-8?B?QmVhbiBIdW8g6ZyN5paM5paM?= , MTD Maling List , Linux Kernel Mailing List , Hou Zhiqiang , Huang Shijie Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2508 Lines: 63 On 4 August 2015 at 18:42, Marek Vasut wrote: > On Tuesday, August 04, 2015 at 08:42:51 AM, Michal Suchanek wrote: >> On 3 August 2015 at 23:46, Marek Vasut wrote: >> > On Monday, August 03, 2015 at 08:39:01 PM, Michal Suchanek wrote: >> >> Change the return value of spi-nor device read and write methods to >> >> allow returning amount of data transferred and errors as >> >> read(2)/write(2) does. >> >> >> >> Signed-off-by: Michal Suchanek >> >> --- >> >> >> >> include/linux/mtd/spi-nor.h | 4 ++-- >> >> 1 file changed, 2 insertions(+), 2 deletions(-) >> >> >> >> diff --git a/include/linux/mtd/spi-nor.h b/include/linux/mtd/spi-nor.h >> >> index e540952..7d782cb 100644 >> >> --- a/include/linux/mtd/spi-nor.h >> >> +++ b/include/linux/mtd/spi-nor.h >> >> @@ -185,9 +185,9 @@ struct spi_nor { >> >> >> >> int (*write_reg)(struct spi_nor *nor, u8 opcode, u8 *buf, int len, >> >> >> >> int write_enable); >> >> >> >> - int (*read)(struct spi_nor *nor, loff_t from, >> >> + ssize_t (*read)(struct spi_nor *nor, loff_t from, >> >> >> >> size_t len, size_t *retlen, u_char *read_buf); >> >> >> >> - void (*write)(struct spi_nor *nor, loff_t to, >> >> + ssize_t (*write)(struct spi_nor *nor, loff_t to, >> >> >> >> size_t len, size_t *retlen, const u_char >> >> *write_buf); >> >> >> >> int (*erase)(struct spi_nor *nor, loff_t offs); >> > >> > You realize that if someone does bisect and has only this patch applied, >> > the compiler will complain loudly about mismatching data types, right ? >> > :) >> >> Yes, the compiler prints a warning. However, only the return value >> which is not used changes so it should not cause any real problem. > > Are you certain that ssize_t is equal to int , always , everywhere ? :-) No, it's larger or equal. > Note that it is possible to do such conversion even without introducing > compiler warnings along the way -- just do the data type conversion first > and the other changes in subsequent patches. It will be clear that one > patch does one thing then. If this is the only concern with these patches it is easily amended ;-) Thanks Michal -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/