Prev: [PATCH v4 0/2] bsearch: fix overflow and avoid unnecessary calculation
Next: [PATCH -next] staging/rtl8192u: depends on USB
From: Roel Kluin on 11 Nov 2009 11:00 When signed, it is possible in theory to pass a negative mfp, and read/write outside the array bounds. Signed-off-by: Roel Kluin <roel.kluin(a)gmail.com> --- arch/arm/plat-pxa/include/plat/mfp.h | 4 ++-- arch/arm/plat-pxa/mfp.c | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) I did not observe the passing of a negative mfp anywhere so this can be considered as a cleanup. Alternatively I could introduce a `mfp < 0' check in mfp_{read,write} instead if desired. diff --git a/arch/arm/plat-pxa/include/plat/mfp.h b/arch/arm/plat-pxa/include/plat/mfp.h index 22086e6..0743f4a 100644 --- a/arch/arm/plat-pxa/include/plat/mfp.h +++ b/arch/arm/plat-pxa/include/plat/mfp.h @@ -458,8 +458,8 @@ void __init mfp_init_addr(struct mfp_addr_map *map); * mfp_config_lpm() - configuring all low power MFPR registers for suspend * mfp_config_run() - configuring all run time MFPR registers after resume */ -unsigned long mfp_read(int mfp); -void mfp_write(int mfp, unsigned long mfpr_val); +unsigned long mfp_read(unsigned mfp); +void mfp_write(unsigned mfp, unsigned long mfpr_val); void mfp_config(unsigned long *mfp_cfgs, int num); void mfp_config_run(void); void mfp_config_lpm(void); diff --git a/arch/arm/plat-pxa/mfp.c b/arch/arm/plat-pxa/mfp.c index 9405d03..c80d0db 100644 --- a/arch/arm/plat-pxa/mfp.c +++ b/arch/arm/plat-pxa/mfp.c @@ -203,7 +203,7 @@ void mfp_config(unsigned long *mfp_cfgs, int num) spin_unlock_irqrestore(&mfp_spin_lock, flags); } -unsigned long mfp_read(int mfp) +unsigned long mfp_read(unsigned mfp) { unsigned long val, flags; @@ -216,7 +216,7 @@ unsigned long mfp_read(int mfp) return val; } -void mfp_write(int mfp, unsigned long val) +void mfp_write(unsigned mfp, unsigned long val) { unsigned long flags; -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |