diff options
author | Marek Belisko <marek.belisko@gmail.com> | 2010-10-15 02:57:25 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-10-15 15:41:35 -0400 |
commit | 78890fdb24e2f61c22a9bf75270e14018bff83c5 (patch) | |
tree | f76725e2a8ede8286052602dfc11b4477a7d42a0 | |
parent | dd9b6aa4fd58b3ac39a696e518a09994e687ba72 (diff) |
staging: ft1000: Use specific return error codes.
Signed-off-by: Marek Belisko <marek.belisko@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r-- | drivers/staging/ft1000/ft1000-usb/ft1000_hw.c | 30 |
1 files changed, 17 insertions, 13 deletions
diff --git a/drivers/staging/ft1000/ft1000-usb/ft1000_hw.c b/drivers/staging/ft1000/ft1000-usb/ft1000_hw.c index 1190f361d8dc..1f91f2242ce4 100644 --- a/drivers/staging/ft1000/ft1000-usb/ft1000_hw.c +++ b/drivers/staging/ft1000/ft1000-usb/ft1000_hw.c | |||
@@ -952,7 +952,7 @@ u16 init_ft1000_netdev(struct ft1000_device *ft1000dev) | |||
952 | if (!netdev ) | 952 | if (!netdev ) |
953 | { | 953 | { |
954 | DEBUG("init_ft1000_netdev: can not allocate network device\n"); | 954 | DEBUG("init_ft1000_netdev: can not allocate network device\n"); |
955 | return STATUS_FAILURE; | 955 | return -ENOMEM; |
956 | } | 956 | } |
957 | 957 | ||
958 | //pInfo = (PFT1000_INFO)netdev->priv; | 958 | //pInfo = (PFT1000_INFO)netdev->priv; |
@@ -975,8 +975,7 @@ u16 init_ft1000_netdev(struct ft1000_device *ft1000dev) | |||
975 | ret_val = strict_strtoul(card_nr, 10, &gCardIndex); | 975 | ret_val = strict_strtoul(card_nr, 10, &gCardIndex); |
976 | if (ret_val) { | 976 | if (ret_val) { |
977 | printk(KERN_ERR "Can't parse netdev\n"); | 977 | printk(KERN_ERR "Can't parse netdev\n"); |
978 | free_netdev(netdev); | 978 | goto err_net; |
979 | return STATUS_FAILURE; | ||
980 | } | 979 | } |
981 | 980 | ||
982 | pInfo->CardNumber = gCardIndex; | 981 | pInfo->CardNumber = gCardIndex; |
@@ -984,8 +983,8 @@ u16 init_ft1000_netdev(struct ft1000_device *ft1000dev) | |||
984 | } | 983 | } |
985 | else { | 984 | else { |
986 | printk(KERN_ERR "ft1000: Invalid device name\n"); | 985 | printk(KERN_ERR "ft1000: Invalid device name\n"); |
987 | free_netdev(netdev); | 986 | ret_val = -ENXIO; |
988 | return STATUS_FAILURE; | 987 | goto err_net; |
989 | } | 988 | } |
990 | } | 989 | } |
991 | else | 990 | else |
@@ -1056,21 +1055,24 @@ u16 init_ft1000_netdev(struct ft1000_device *ft1000dev) | |||
1056 | for (i=0; i<NUM_OF_FREE_BUFFERS; i++) { | 1055 | for (i=0; i<NUM_OF_FREE_BUFFERS; i++) { |
1057 | // Get memory for DPRAM_DATA link list | 1056 | // Get memory for DPRAM_DATA link list |
1058 | pdpram_blk = kmalloc ( sizeof(DPRAM_BLK), GFP_KERNEL ); | 1057 | pdpram_blk = kmalloc ( sizeof(DPRAM_BLK), GFP_KERNEL ); |
1059 | if (pdpram_blk == NULL) | 1058 | if (pdpram_blk == NULL) { |
1060 | goto err_free; | 1059 | ret_val = -ENOMEM; |
1060 | goto err_free; | ||
1061 | } | ||
1061 | // Get a block of memory to store command data | 1062 | // Get a block of memory to store command data |
1062 | pdpram_blk->pbuffer = kmalloc ( MAX_CMD_SQSIZE, GFP_KERNEL ); | 1063 | pdpram_blk->pbuffer = kmalloc ( MAX_CMD_SQSIZE, GFP_KERNEL ); |
1063 | if (pdpram_blk->pbuffer == NULL) { | 1064 | if (pdpram_blk->pbuffer == NULL) { |
1064 | kfree(pdpram_blk); | 1065 | ret_val = -ENOMEM; |
1065 | goto err_free; | 1066 | kfree(pdpram_blk); |
1066 | } | 1067 | goto err_free; |
1068 | } | ||
1067 | // link provisioning data | 1069 | // link provisioning data |
1068 | list_add_tail (&pdpram_blk->list, &freercvpool); | 1070 | list_add_tail (&pdpram_blk->list, &freercvpool); |
1069 | } | 1071 | } |
1070 | numofmsgbuf = NUM_OF_FREE_BUFFERS; | 1072 | numofmsgbuf = NUM_OF_FREE_BUFFERS; |
1071 | 1073 | ||
1072 | 1074 | ||
1073 | return STATUS_SUCCESS; | 1075 | return 0; |
1074 | 1076 | ||
1075 | 1077 | ||
1076 | err_free: | 1078 | err_free: |
@@ -1080,7 +1082,9 @@ err_free: | |||
1080 | kfree(pdpram_blk->pbuffer); | 1082 | kfree(pdpram_blk->pbuffer); |
1081 | kfree(pdpram_blk); | 1083 | kfree(pdpram_blk); |
1082 | } | 1084 | } |
1083 | return STATUS_FAILURE; | 1085 | err_net: |
1086 | free_netdev(netdev); | ||
1087 | return ret_val; | ||
1084 | } | 1088 | } |
1085 | 1089 | ||
1086 | 1090 | ||