From: Larry F. <Lar...@lw...> - 2012-05-13 02:07:24
|
A "make C=2" build shows a number of sparse warnings. Not all of them are easily fixed; however, those that are are fixed here. Several of the routines got a warning that they were "defined but not used", and were not used after being converted to static. Those can eventually be deleted, but for the moment, they are inside #if 0 .. #endif directives. The remaining warnings are: CHECK /home/finger/acx-mac80211/common.c /home/finger/acx-mac80211/common.c:4522:30: warning: incorrect type in argument 1 (different address spaces) /home/finger/acx-mac80211/common.c:4522:30: expected char const *<noident> /home/finger/acx-mac80211/common.c:4522:30: got char const [noderef] <asn:1>*buf /home/finger/acx-mac80211/common.c:4523:22: error: subtraction of different types can't work (different address spaces) /home/finger/acx-mac80211/common.c:4695:29: error: subtraction of different types can't work (different address spaces) /home/finger/acx-mac80211/common.c:4744:22: error: subtraction of different types can't work (different address spaces) /home/finger/acx-mac80211/common.c:4794:22: error: subtraction of different types can't work (different address spaces) /home/finger/acx-mac80211/common.c:4843:22: error: subtraction of different types can't work (different address spaces) /home/finger/acx-mac80211/common.c:4894:22: error: subtraction of different types can't work (different address spaces) CHECK /home/finger/acx-mac80211/mem.c /home/finger/acx-mac80211/mem.c:2524:26: warning: cast removes address space of expression /home/finger/acx-mac80211/mem.c:2524:26: warning: incorrect type in argument 1 (different address spaces) /home/finger/acx-mac80211/mem.c:2524:26: expected void volatile [noderef] <asn:2>*addr /home/finger/acx-mac80211/mem.c:2524:26: got void *<noident> /home/finger/acx-mac80211/mem.c:783:9: warning: context imbalance in 'acxmem_issue_cmd_timeo_debug' - different lock contexts for basic block /home/finger/acx-mac80211/mem.c:791:12: warning: context imbalance in 'acxmem_complete_hw_reset' - different lock contexts for basic block /home/finger/acx-mac80211/mem.c:1121:9: warning: context imbalance in 'acxmem_proc_diag_output' - different lock contexts for basic block /home/finger/acx-mac80211/mem.c:2433:9: warning: context imbalance in 'acxmem_probe' - different lock contexts for basic block /home/finger/acx-mac80211/mem.c:2615:9: warning: context imbalance in 'acxmem_remove' - different lock contexts for basic block CC [M] /home/finger/acx-mac80211/mem.o CHECK /home/finger/acx-mac80211/merge.c /home/finger/acx-mac80211/merge.c:469:35: warning: cast removes address space of expression /home/finger/acx-mac80211/merge.c:481:43: warning: cast removes address space of expression /home/finger/acx-mac80211/merge.c:568:20: warning: cast removes address space of expression /home/finger/acx-mac80211/merge.c:1561:32: warning: incorrect type in assignment (different address spaces) /home/finger/acx-mac80211/merge.c:1561:32: expected unsigned char [noderef] [usertype] <asn:2>*[usertype] cmd_area /home/finger/acx-mac80211/merge.c:1561:32: got unsigned char [usertype] *<noident> /home/finger/acx-mac80211/merge.c:1562:33: warning: incorrect type in assignment (different address spaces) /home/finger/acx-mac80211/merge.c:1562:33: expected unsigned char [noderef] [usertype] <asn:2>*[usertype] info_area /home/finger/acx-mac80211/merge.c:1562:33: got unsigned char [usertype] *<noident> /home/finger/acx-mac80211/merge.c:1566:35: warning: cast removes address space of expression /home/finger/acx-mac80211/merge.c:1566:32: warning: incorrect type in assignment (different address spaces) /home/finger/acx-mac80211/merge.c:1566:32: expected unsigned char [noderef] [usertype] <asn:2>*[usertype] cmd_area /home/finger/acx-mac80211/merge.c:1566:32: got unsigned char [usertype] * /home/finger/acx-mac80211/merge.c:1567:36: warning: cast removes address space of expression /home/finger/acx-mac80211/merge.c:1567:33: warning: incorrect type in assignment (different address spaces) /home/finger/acx-mac80211/merge.c:1567:33: expected unsigned char [noderef] [usertype] <asn:2>*[usertype] info_area /home/finger/acx-mac80211/merge.c:1567:33: got unsigned char [usertype] * /home/finger/acx-mac80211/merge.c:160:17: warning: context imbalance in 'acx_upload_radio' - different lock contexts for basic block /home/finger/acx-mac80211/merge.c:696:9: warning: context imbalance in 'acx_create_desc_queues' - different lock contexts for basic block /home/finger/acx-mac80211/merge.c:887:9: warning: context imbalance in 'acx_proc_eeprom_output' - different lock contexts for basic block /home/finger/acx-mac80211/merge.c:1047:9: warning: context imbalance in '_acx_read_phy_reg' - different lock contexts for basic block /home/finger/acx-mac80211/merge.c:1092:9: warning: context imbalance in '_acx_write_phy_reg' - different lock contexts for basic block /home/finger/acx-mac80211/merge.c:1352:17: warning: context imbalance in '_acx_upload_fw' - different lock contexts for basic block /home/finger/acx-mac80211/merge.c:1899:9: warning: context imbalance in 'acx_up' - different lock contexts for basic block /home/finger/acx-mac80211/merge.c:2081:9: warning: context imbalance in 'acx_reset_dev' - unexpected unlock /home/finger/acx-mac80211/merge.c:2134:9: warning: context imbalance in 'acx_verify_init' - different lock contexts for basic block /home/finger/acx-mac80211/merge.c:2793:9: warning: context imbalance in 'acxmem_alloc_tx' - different lock contexts for basic block /home/finger/acx-mac80211/merge.c:2841:9: warning: context imbalance in 'acxmem_dealloc_tx' - different lock contexts for basic block /home/finger/acx-mac80211/merge.c:3271:9: warning: context imbalance in '_acx_tx_data' - different lock contexts for basic block /home/finger/acx-mac80211/merge.c:3769:9: warning: context imbalance in 'acx_irq_work' - different lock contexts for basic block /home/finger/acx-mac80211/interrupt-masks.h:33:26: warning: cast truncates bits from constant value (ffff10fc becomes 10fc) /home/finger/acx-mac80211/merge.c:4107:9: warning: context imbalance in 'acx_op_stop' - different lock contexts for basic block Signed-off-by: Larry Finger <Lar...@lw...> --- debugfs.c | 8 ++++---- inlines.h | 28 ++++++++++++++-------------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/debugfs.c b/debugfs.c index e76eee2..8ad57b4 100644 --- a/debugfs.c +++ b/debugfs.c @@ -59,7 +59,7 @@ static const char *const dbgfs_files[] = { static int acx_dbgfs_open(struct inode *inode, struct file *file) { - int fidx = (uintptr_t)inode->i_private; + int fidx = (int) inode->i_private; struct acx_device *adev = (struct acx_device *) file->f_path.dentry->d_parent->d_inode->i_private; @@ -84,10 +84,10 @@ static int acx_dbgfs_open(struct inode *inode, struct file *file) return single_open(file, acx_proc_show_funcs[fidx], adev); } -static ssize_t acx_dbgfs_write(struct file *file, const char __user *buf, +static int acx_dbgfs_write(struct file *file, const char __user *buf, size_t count, loff_t *ppos) { - int fidx = (uintptr_t) file->f_path.dentry->d_inode->i_private; + int fidx = (int) file->f_path.dentry->d_inode->i_private; struct acx_device *adev = (struct acx_device *) file->f_path.dentry->d_parent->d_inode->i_private; @@ -123,7 +123,7 @@ static struct dentry *acx_dbgfs_dir; int acx_debugfs_add_adev(struct acx_device *adev) { - long i; + int i; fmode_t fmode; struct dentry *file; const char *devname = wiphy_name(adev->ieee->wiphy); diff --git a/inlines.h b/inlines.h index f70dd9d..7093aa1 100644 --- a/inlines.h +++ b/inlines.h @@ -132,7 +132,7 @@ INLINE_IO u32 read_id_register(acx_device_t *adev) /* note the buried return */ #define ret_addr_lt20_rd_(adev, addr, _lwb) \ if (addr < 0x20) \ - return acx_read##_lwb(((u8 *) adev->iobase) + addr); + return acx_read##_lwb(adev->iobase + addr); #define ret_addr_lt20_rdl(adev, addr) ret_addr_lt20_rd_(adev, addr, l) #define ret_addr_lt20_rdw(adev, addr) ret_addr_lt20_rd_(adev, addr, w) @@ -141,7 +141,7 @@ INLINE_IO u32 read_id_register(acx_device_t *adev) /* note the buried return */ #define ret_addr_lt20_wr_(adev, addr, _lwb, val) \ if (addr < 0x20) { \ - acx_write##_lwb(val, ((u8 *) adev->iobase) + addr); \ + acx_write##_lwb(val, adev->iobase + addr); \ return; \ } @@ -159,10 +159,10 @@ INLINE_IO u32 read_reg32(acx_device_t *adev, unsigned int offset) if (IS_PCI(adev)) { #if ACX_IO_WIDTH == 32 - return acx_readl((u8 *) adev->iobase + adev->io[offset]); + return acx_readl(adev->iobase + adev->io[offset]); #else - return acx_readw((u8 *) adev->iobase + adev->io[offset]) - + (acx_readw((u8 *) adev->iobase + + return acx_readw(adev->iobase + adev->io[offset]) + + (acx_readw(adev->iobase + adev->io[offset] + 2) << 16); #endif } @@ -184,7 +184,7 @@ INLINE_IO u16 read_reg16(acx_device_t *adev, unsigned int offset) u32 addr; if (IS_PCI(adev)) - return acx_readw((u8 *) adev->iobase + adev->io[offset]); + return acx_readw(adev->iobase + adev->io[offset]); /* else IS_MEM */ @@ -193,7 +193,7 @@ INLINE_IO u16 read_reg16(acx_device_t *adev, unsigned int offset) ret_addr_lt20_rdw(adev, addr); acx_writel(addr, adev->iobase + ACX_SLV_REG_ADDR); - lo = acx_readw((u16 *) (adev->iobase + ACX_SLV_REG_DATA)); + lo = acx_readw(adev->iobase + ACX_SLV_REG_DATA); return lo; } @@ -204,7 +204,7 @@ INLINE_IO u8 read_reg8(acx_device_t *adev, unsigned int offset) u32 addr; if (IS_PCI(adev)) - return readb((u8 *) adev->iobase + adev->io[offset]); + return readb(adev->iobase + adev->io[offset]); /* else IS_MEM */ @@ -213,7 +213,7 @@ INLINE_IO u8 read_reg8(acx_device_t *adev, unsigned int offset) ret_addr_lt20_rdb(adev, addr); acx_writel(addr, adev->iobase + ACX_SLV_REG_ADDR); - lo = acx_readw((u8 *) (adev->iobase + ACX_SLV_REG_DATA)); + lo = acx_readw(adev->iobase + ACX_SLV_REG_DATA); return (u8) lo; } @@ -225,7 +225,7 @@ INLINE_IO void write_reg32(acx_device_t *adev, unsigned int offset, if (IS_PCI(adev)) { #if ACX_IO_WIDTH == 32 - acx_writel(val, (u8 *) adev->iobase + adev->io[offset]); + acx_writel(val, adev->iobase + adev->io[offset]); #else acx_writew(val & 0xffff, (u8 *) adev->iobase + adev->io[offset]); @@ -249,7 +249,7 @@ INLINE_IO void write_reg16(acx_device_t *adev, unsigned int offset, u32 addr; if (IS_PCI(adev)) { - acx_writew(val, (u8 *) adev->iobase + adev->io[offset]); + acx_writew(val, adev->iobase + adev->io[offset]); return; } /* else IS_MEM */ @@ -259,7 +259,7 @@ INLINE_IO void write_reg16(acx_device_t *adev, unsigned int offset, ret_addr_lt20_wrw(adev, addr, val); acx_writel(addr, adev->iobase + ACX_SLV_REG_ADDR); - acx_writew(val, (u16 *) (adev->iobase + ACX_SLV_REG_DATA)); + acx_writew(val, adev->iobase + ACX_SLV_REG_DATA); } INLINE_IO void write_reg8(acx_device_t *adev, unsigned int offset, u8 val) @@ -267,7 +267,7 @@ INLINE_IO void write_reg8(acx_device_t *adev, unsigned int offset, u8 val) u32 addr; if (IS_PCI(adev)) { - writeb(val, (u8 *) adev->iobase + adev->io[offset]); + writeb(val, adev->iobase + adev->io[offset]); return; } /* else IS_MEM */ @@ -277,7 +277,7 @@ INLINE_IO void write_reg8(acx_device_t *adev, unsigned int offset, u8 val) ret_addr_lt20_wrb(adev, addr, val); acx_writel(addr, adev->iobase + ACX_SLV_REG_ADDR); - writeb(val, (u8 *) (adev->iobase + ACX_SLV_REG_DATA)); + writeb(val, adev->iobase + ACX_SLV_REG_DATA); } -- 1.7.9.2 |