We are getting many build warning about:
'bar_start' may be used uninitialized
and
'bar_len' may be used uninitialized
They are not actually uninitialized as dfx_get_bars() will initialize
them properly. But still lets have them initialized just to satisfy the
compiler.
Signed-off-by: Sudip Mukherjee <redacted>
---
drivers/net/fddi/defxx.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/net/fddi/defxx.c b/drivers/net/fddi/defxx.c
index 7f975a2..4113535 100644
--- a/drivers/net/fddi/defxx.c
+++ b/drivers/net/fddi/defxx.c
@@ -533,8 +533,8 @@ static int dfx_register(struct device *bdev)
const char *print_name = dev_name(bdev);
struct net_device *dev;
DFX_board_t *bp; /* board pointer */
- resource_size_t bar_start[3]; /* pointers to ports */
- resource_size_t bar_len[3]; /* resource length */
+ resource_size_t bar_start[3] = {0, 0, 0}; /* pointers to ports */
+ resource_size_t bar_len[3] = {0, 0, 0}; /* resource length */
int alloc_size; /* total buffer size used */
struct resource *region;
int err = 0;@@ -3697,8 +3697,8 @@ static void dfx_unregister(struct device *bdev)
int dfx_bus_pci = dev_is_pci(bdev);
int dfx_bus_tc = DFX_BUS_TC(bdev);
int dfx_use_mmio = DFX_MMIO || dfx_bus_tc;
- resource_size_t bar_start[3]; /* pointers to ports */
- resource_size_t bar_len[3]; /* resource lengths */
+ resource_size_t bar_start[3] = {0, 0, 0}; /* pointers to ports */
+ resource_size_t bar_len[3] = {0, 0, 0}; /* resource lengths */
int alloc_size; /* total buffer size used */
unregister_netdev(dev);--
1.9.1
On Mon, 25 Jan 2016, Sudip Mukherjee wrote:
We are getting many build warning about:
'bar_start' may be used uninitialized
and
'bar_len' may be used uninitialized
They are not actually uninitialized as dfx_get_bars() will initialize
them properly. But still lets have them initialized just to satisfy the
compiler.
Which compiler/version is that?
quoted hunk
diff --git a/drivers/net/fddi/defxx.c b/drivers/net/fddi/defxx.c
index 7f975a2..4113535 100644
--- a/drivers/net/fddi/defxx.c
+++ b/drivers/net/fddi/defxx.c
@@ -533,8 +533,8 @@ static int dfx_register(struct device *bdev)
const char *print_name = dev_name(bdev);
struct net_device *dev;
DFX_board_t *bp; /* board pointer */
- resource_size_t bar_start[3]; /* pointers to ports */
- resource_size_t bar_len[3]; /* resource length */
+ resource_size_t bar_start[3] = {0, 0, 0}; /* pointers to ports */
+ resource_size_t bar_len[3] = {0, 0, 0}; /* resource length */
int alloc_size; /* total buffer size used */
struct resource *region;
int err = 0;
Just setting the first element will do, the rest will then be implicitly
zeroed, following the semantics of initialisers in C. So just do:
resource_size_t bar_start[3] = {0}; /* pointers to ports */
resource_size_t bar_len[3] = {0}; /* resource length */
for brevity and to save formatting.
quoted hunk
@@ -3697,8 +3697,8 @@ static void dfx_unregister(struct device *bdev)
int dfx_bus_pci = dev_is_pci(bdev);
int dfx_bus_tc = DFX_BUS_TC(bdev);
int dfx_use_mmio = DFX_MMIO || dfx_bus_tc;
- resource_size_t bar_start[3]; /* pointers to ports */
- resource_size_t bar_len[3]; /* resource lengths */
+ resource_size_t bar_start[3] = {0, 0, 0}; /* pointers to ports */
+ resource_size_t bar_len[3] = {0, 0, 0}; /* resource lengths */
int alloc_size; /* total buffer size used */
unregister_netdev(dev);
Likewise here. Please resend with the update requested and I'll ack it.
Thanks for your submission!
Maciej