Message ID | 20181114101342.7199-3-ben.dooks@codethink.co.uk |
---|---|
State | Superseded |
Headers | show |
Series | [1/3] dma: tegra: avoid overflow of byte tracking | expand |
On 14.11.2018 13:13, Ben Dooks wrote: > The buffer byte request length and counter are declared as signed integers > but the values should never be below zero, so make these unsigned integers > instead. > > Reviewed-by: Dmitry Osipenko <digetx@gmail.com> > Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk> > --- > drivers/dma/tegra20-apb-dma.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/dma/tegra20-apb-dma.c b/drivers/dma/tegra20-apb-dma.c > index 8219ab88a507..adfd918baedc 100644 > --- a/drivers/dma/tegra20-apb-dma.c > +++ b/drivers/dma/tegra20-apb-dma.c > @@ -155,7 +155,7 @@ struct tegra_dma_channel_regs { > */ > struct tegra_dma_sg_req { > struct tegra_dma_channel_regs ch_regs; > - int req_len; > + unsigned int req_len; > bool configured; > bool last_sg; > struct list_head node; > @@ -169,8 +169,8 @@ struct tegra_dma_sg_req { > */ > struct tegra_dma_desc { > struct dma_async_tx_descriptor txd; > - int bytes_requested; > - int bytes_transferred; > + unsigned int bytes_requested; > + unsigned int bytes_transferred; > enum dma_status dma_status; > struct list_head node; > struct list_head tx_list; > Tested-by: Dmitry Osipenko <digetx@gmail.com>
diff --git a/drivers/dma/tegra20-apb-dma.c b/drivers/dma/tegra20-apb-dma.c index 8219ab88a507..adfd918baedc 100644 --- a/drivers/dma/tegra20-apb-dma.c +++ b/drivers/dma/tegra20-apb-dma.c @@ -155,7 +155,7 @@ struct tegra_dma_channel_regs { */ struct tegra_dma_sg_req { struct tegra_dma_channel_regs ch_regs; - int req_len; + unsigned int req_len; bool configured; bool last_sg; struct list_head node; @@ -169,8 +169,8 @@ struct tegra_dma_sg_req { */ struct tegra_dma_desc { struct dma_async_tx_descriptor txd; - int bytes_requested; - int bytes_transferred; + unsigned int bytes_requested; + unsigned int bytes_transferred; enum dma_status dma_status; struct list_head node; struct list_head tx_list;