linux-scsi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] scsi: ufs: fix memory boundary check for UFS 3.0
@ 2020-12-11 19:38 Jaegeuk Kim
  2020-12-11 20:43 ` Eric Biggers
  0 siblings, 1 reply; 3+ messages in thread
From: Jaegeuk Kim @ 2020-12-11 19:38 UTC (permalink / raw)
  To: linux-kernel, linux-scsi, kernel-team
  Cc: cang, alim.akhtar, avri.altman, bvanassche, martin.petersen,
	stanley.chu, Jaegeuk Kim

From: Jaegeuk Kim <jaegeuk@google.com>

If param_offset is greater than what UFS supports, it'll give kernel panic.

Signed-off-by: Jaegeuk Kim <jaegeuk@google.com>
Change-Id: I48ea6f3f3074bd42abf4ecf8be87806732f3e6a3
---
 drivers/scsi/ufs/ufshcd.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c
index d6a3a0ba6960..04687661d0df 100644
--- a/drivers/scsi/ufs/ufshcd.c
+++ b/drivers/scsi/ufs/ufshcd.c
@@ -3194,6 +3194,9 @@ int ufshcd_read_desc_param(struct ufs_hba *hba,
 		return -EINVAL;
 	}
 
+	if (param_offset > buff_len)
+		return -EINVAL;
+
 	/* Check whether we need temp memory */
 	if (param_offset != 0 || param_size < buff_len) {
 		desc_buf = kmalloc(buff_len, GFP_KERNEL);
-- 
2.29.2.576.ga3fc446d84-goog


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] scsi: ufs: fix memory boundary check for UFS 3.0
  2020-12-11 19:38 [PATCH] scsi: ufs: fix memory boundary check for UFS 3.0 Jaegeuk Kim
@ 2020-12-11 20:43 ` Eric Biggers
  2020-12-11 20:46   ` Jaegeuk Kim
  0 siblings, 1 reply; 3+ messages in thread
From: Eric Biggers @ 2020-12-11 20:43 UTC (permalink / raw)
  To: Jaegeuk Kim
  Cc: linux-kernel, linux-scsi, kernel-team, cang, alim.akhtar,
	avri.altman, bvanassche, martin.petersen, stanley.chu,
	Jaegeuk Kim

On Fri, Dec 11, 2020 at 11:38:14AM -0800, Jaegeuk Kim wrote:
> From: Jaegeuk Kim <jaegeuk@google.com>
> 
> If param_offset is greater than what UFS supports, it'll give kernel panic.
> 
> Signed-off-by: Jaegeuk Kim <jaegeuk@google.com>
> Change-Id: I48ea6f3f3074bd42abf4ecf8be87806732f3e6a3
> ---
>  drivers/scsi/ufs/ufshcd.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c
> index d6a3a0ba6960..04687661d0df 100644
> --- a/drivers/scsi/ufs/ufshcd.c
> +++ b/drivers/scsi/ufs/ufshcd.c
> @@ -3194,6 +3194,9 @@ int ufshcd_read_desc_param(struct ufs_hba *hba,
>  		return -EINVAL;
>  	}
>  
> +	if (param_offset > buff_len)
> +		return -EINVAL;
> +
>  	/* Check whether we need temp memory */
>  	if (param_offset != 0 || param_size < buff_len) {
>  		desc_buf = kmalloc(buff_len, GFP_KERNEL);
> -- 

Didn't this already get fixed by:

	commit 1699f980d87fb678a669490462cf0b9517c1fb47
	Author: Can Guo <cang@codeaurora.org>
	Date:   Wed Oct 21 22:59:00 2020 -0700

	    scsi: ufs: Fix unexpected values from ufshcd_read_desc_param()

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] scsi: ufs: fix memory boundary check for UFS 3.0
  2020-12-11 20:43 ` Eric Biggers
@ 2020-12-11 20:46   ` Jaegeuk Kim
  0 siblings, 0 replies; 3+ messages in thread
From: Jaegeuk Kim @ 2020-12-11 20:46 UTC (permalink / raw)
  To: Eric Biggers
  Cc: linux-kernel, linux-scsi, kernel-team, cang, alim.akhtar,
	avri.altman, bvanassche, martin.petersen, stanley.chu

On 12/11, Eric Biggers wrote:
> On Fri, Dec 11, 2020 at 11:38:14AM -0800, Jaegeuk Kim wrote:
> > From: Jaegeuk Kim <jaegeuk@google.com>
> > 
> > If param_offset is greater than what UFS supports, it'll give kernel panic.
> > 
> > Signed-off-by: Jaegeuk Kim <jaegeuk@google.com>
> > Change-Id: I48ea6f3f3074bd42abf4ecf8be87806732f3e6a3
> > ---
> >  drivers/scsi/ufs/ufshcd.c | 3 +++
> >  1 file changed, 3 insertions(+)
> > 
> > diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c
> > index d6a3a0ba6960..04687661d0df 100644
> > --- a/drivers/scsi/ufs/ufshcd.c
> > +++ b/drivers/scsi/ufs/ufshcd.c
> > @@ -3194,6 +3194,9 @@ int ufshcd_read_desc_param(struct ufs_hba *hba,
> >  		return -EINVAL;
> >  	}
> >  
> > +	if (param_offset > buff_len)
> > +		return -EINVAL;
> > +
> >  	/* Check whether we need temp memory */
> >  	if (param_offset != 0 || param_size < buff_len) {
> >  		desc_buf = kmalloc(buff_len, GFP_KERNEL);
> > -- 
> 
> Didn't this already get fixed by:
> 
> 	commit 1699f980d87fb678a669490462cf0b9517c1fb47
> 	Author: Can Guo <cang@codeaurora.org>
> 	Date:   Wed Oct 21 22:59:00 2020 -0700
> 
> 	    scsi: ufs: Fix unexpected values from ufshcd_read_desc_param()

Oh, cool. Yes, please ignore this.

Thanks,

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2020-12-11 21:41 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-11 19:38 [PATCH] scsi: ufs: fix memory boundary check for UFS 3.0 Jaegeuk Kim
2020-12-11 20:43 ` Eric Biggers
2020-12-11 20:46   ` Jaegeuk Kim

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).