lkml.org 
[lkml]   [2020]   [Jul]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] staging: r8188eu: remove unused members of struct xmit_buf
From
Date
On 7/13/20 5:23 PM, Dan Carpenter wrote:
> On Mon, Jul 13, 2020 at 04:16:07PM +0300, Dan Carpenter wrote:
>> On Sun, Jul 12, 2020 at 03:38:21PM +0300, Ivan Safonov wrote:
>>> Remove unused members of struct xmit_buf: alloc_sz, ff_hwaddr,
>>> dma_transfer_addr, bpending and last.
>>>
>>> Signed-off-by: Ivan Safonov <insafonov@gmail.com>
>>> ---
>>> drivers/staging/rtl8188eu/include/rtw_xmit.h | 5 -----
>>> drivers/staging/rtl8188eu/os_dep/xmit_linux.c | 1 -
>>> 2 files changed, 6 deletions(-)
>>>
>>> diff --git a/drivers/staging/rtl8188eu/include/rtw_xmit.h b/drivers/staging/rtl8188eu/include/rtw_xmit.h
>>> index 12d16e98176a..3c03987c81a1 100644
>>> --- a/drivers/staging/rtl8188eu/include/rtw_xmit.h
>>> +++ b/drivers/staging/rtl8188eu/include/rtw_xmit.h
>>> @@ -193,14 +193,9 @@ struct xmit_buf {
>>> void *priv_data;
>>> u16 ext_tag; /* 0: Normal xmitbuf, 1: extension xmitbuf. */
>>> u16 flags;
>>> - u32 alloc_sz;
>>> u32 len;
>>> struct submit_ctx *sctx;
>>> - u32 ff_hwaddr;
>>> struct urb *pxmit_urb[8];
>>> - dma_addr_t dma_transfer_addr; /* (in) dma addr for transfer_buffer */
>>> - u8 bpending[8];
>>> - int last[8];
>>> };
>>>
>>> struct xmit_frame {
>>> diff --git a/drivers/staging/rtl8188eu/os_dep/xmit_linux.c b/drivers/staging/rtl8188eu/os_dep/xmit_linux.c
>>> index 017e1d628461..61ced1160951 100644
>>> --- a/drivers/staging/rtl8188eu/os_dep/xmit_linux.c
>>> +++ b/drivers/staging/rtl8188eu/os_dep/xmit_linux.c
>>> @@ -24,7 +24,6 @@ int rtw_os_xmit_resource_alloc(struct adapter *padapter,
>>> return _FAIL;
>>>
>>> pxmitbuf->pbuf = PTR_ALIGN(pxmitbuf->pallocated_buf, XMITBUF_ALIGN_SZ);
>>
>> Not related to this patch but kmalloc always returns data which is at
>> least ARCH_KMALLOC_MINALIGN aligned which is never less than
>> XMITBUF_ALIGN_SZ (4) so this is a no-op.

4-byte alignment for 8-byte pointer (for example void *priv_data) on
64-bit arch is an _error_. It’s good that kmalloc (and vmalloc) is
already aligned to 8 bytes.

>
> The alignment in the driver is pretty crazy because it's all unnecessary
> and so complicated. Every allocation is 4 bytes extra so we can align
> it later.
>
> Also every buffer is called "pbuf" which stands for pointer to buffer.
> "pallocated_buf" is not really useful either.
>
> I tried to look at this to see if we could change the alignment, and
> it's complicated because of the naming and the alignment.
>
> regards,
> dan carpenter
>

I have already fixed 4 places with unnecessary alignment, but, alas,
there is no great desire to test them on real hardware.

Ivan.

\
 
 \ /
  Last update: 2020-07-13 20:25    [W:0.100 / U:0.136 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site