Re: [PATCH] staging: vt6656: Avoid multiple line dereference

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 2017-02-01 at 21:43 +0000, Craig Kewley wrote:
> This patch fixes the checkpatch.pl warning:
> WARNING: Avoid multiple line dereference

Hi Craig.

Please try to make the code more sensible in preference to
just fixing checkpatch warnings.

> diff --git a/drivers/staging/vt6656/rxtx.c b/drivers/staging/vt6656/rxtx.c
[]
> @@ -692,8 +692,8 @@ static u16 vnt_generate_tx_parameter(struct vnt_usb_send_context *tx_context,
>  	    tx_context->pkt_type == PK_TYPE_11GA) {
>  		if (need_rts) {
>  			if (need_mic)
> -				*mic_hdr = &tx_buffer->
> -						tx_head.tx_rts.tx.mic.hdr;
> +				*mic_hdr =
> +					&tx_buffer->tx_head.tx_rts.tx.mic.hdr;
>  
>  			return vnt_rxtx_rts(tx_context, &tx_buffer->tx_head,
>  					    need_mic);

This block would be more legible using a temporary for
&tx_buffer->tx_head like:
---
 drivers/staging/vt6656/rxtx.c | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

diff --git a/drivers/staging/vt6656/rxtx.c b/drivers/staging/vt6656/rxtx.c
index aa59e7f14ab3..89ca5c20cd1c 100644
--- a/drivers/staging/vt6656/rxtx.c
+++ b/drivers/staging/vt6656/rxtx.c
@@ -687,28 +687,27 @@ static u16 vnt_generate_tx_parameter(struct vnt_usb_send_context *tx_context,
 	struct vnt_mic_hdr **mic_hdr, u32 need_mic,
 	bool need_rts)
 {
+	union vnt_tx_head *tx_head = &tx_buffer->tx_head;
 
 	if (tx_context->pkt_type == PK_TYPE_11GB ||
 	    tx_context->pkt_type == PK_TYPE_11GA) {
 		if (need_rts) {
 			if (need_mic)
-				*mic_hdr = &tx_buffer->
-						tx_head.tx_rts.tx.mic.hdr;
+				*mic_hdr = &tx_head->tx_rts.tx.mic.hdr;
 
-			return vnt_rxtx_rts(tx_context, &tx_buffer->tx_head,
-					    need_mic);
+			return vnt_rxtx_rts(tx_context, tx_head, need_mic);
 		}
 
 		if (need_mic)
-			*mic_hdr = &tx_buffer->tx_head.tx_cts.tx.mic.hdr;
+			*mic_hdr = &tx_head->tx_cts.tx.mic.hdr;
 
-		return vnt_rxtx_cts(tx_context, &tx_buffer->tx_head, need_mic);
+		return vnt_rxtx_cts(tx_context, tx_head, need_mic);
 	}
 
 	if (need_mic)
-		*mic_hdr = &tx_buffer->tx_head.tx_ab.tx.mic.hdr;
+		*mic_hdr = &tx_head->tx_ab.tx.mic.hdr;
 
-	return vnt_rxtx_ab(tx_context, &tx_buffer->tx_head, need_rts, need_mic);
+	return vnt_rxtx_ab(tx_context, tx_head, need_rts, need_mic);
 }
 
 static void vnt_fill_txkey(struct vnt_usb_send_context *tx_context,
_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel




[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux