netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Ming Lei <tom.leiming@gmail.com>
To: David Miller <davem@davemloft.net>
Cc: joe@perches.com, gregkh@linuxfoundation.org,
	hayeswang@realtek.com, netdev@vger.kernel.org,
	linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org,
	nic_swsd@realtek.com
Subject: Re: [PATCH v3 1/3] net/usb/r815x: replace USB buffer from stack to DMA-able
Date: Wed, 31 Jul 2013 18:29:47 +0800	[thread overview]
Message-ID: <CACVXFVNH=71cEncYfJRAf61j-WJWmoZrs+PdsC1XtWybu8v-Gw@mail.gmail.com> (raw)
In-Reply-To: <20130730.114900.5636932806999400.davem@davemloft.net>

On Wed, Jul 31, 2013 at 2:49 AM, David Miller <davem@davemloft.net> wrote:
> From: Joe Perches <joe@perches.com>
> Date: Tue, 30 Jul 2013 11:41:17 -0700
>
>> On Tue, 2013-07-30 at 11:33 -0700, David Miller wrote:
>>> From: Greg KH <gregkh@linuxfoundation.org>
>>> Date: Tue, 30 Jul 2013 07:00:59 -0700
>>>
>>> > This call is so slow, you can afford to make a call to kmalloc for the
>>> > data, as it sure just did for other structures it needed :)
>>>
>>> I told him to implement things this way, to avoid calling kmalloc every
>>> single register access.
>>>
>>> Using kmalloc all the time makes the access fragile, since a badly timed
>>> call during high memory pressure can fail.
>>>
>>> I'd rather the potential failure happen at one time, probe time.
>>>
>>> In any event, Ming Lei has suggested using usbnet_{read,write}_cmd()
>>> instead, which sounds like a good solution to this problem.
>>
>> Those do per-call allocs too.
>
> Sigh...  Ok I won't fight this any longer then :-)

It might not be a big deal because most of these commands are sent
during probe()/ethtool/... context, and not in tx/rx path.

Another choice is to reserve a big enough buffer during probe()
for read/write command, but one mutex is needed too for avoiding
concurrent calling.

Anyway, please call the command API to do such thing, so that we
can improve it easily in future.

Thanks,
-- 
Ming Lei

  reply	other threads:[~2013-07-31 10:29 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-23  9:26 [PATCH 1/3] net/usb/r815x: replace USB buffer from stack to DMA-able hayeswang
2013-07-25  0:49 ` David Miller
2013-07-25  7:59   ` [PATCH v2 " Hayes Wang
2013-07-25  7:59     ` [PATCH v2 2/3] net/usb/r8152: make sure the USB buffer is DMA-able Hayes Wang
2013-07-25  7:59     ` [PATCH v2 3/3] net/usb/r8152: adjust relative ocp function Hayes Wang
     [not found]     ` <1374739144-732-1-git-send-email-hayeswang-Rasf1IRRPZFBDgjK7y7TUQ@public.gmane.org>
2013-07-28  3:21       ` [PATCH v2 1/3] net/usb/r815x: replace USB buffer from stack to DMA-able David Miller
2013-07-29  5:20         ` Oliver Neukum
2013-07-29  7:46           ` David Miller
2013-07-30  8:28 ` [PATCH v3 " Hayes Wang
2013-07-30  8:28   ` [PATCH v3 2/3] net/usb/r8152: " Hayes Wang
2013-07-30 14:01     ` Greg KH
2013-07-30  8:28   ` [PATCH v3 3/3] net/usb/r8152: adjust relative ocp function Hayes Wang
2013-07-30 13:58   ` [PATCH v3 1/3] net/usb/r815x: replace USB buffer from stack to DMA-able Greg KH
2013-07-30 15:17     ` [PATCH] MAINTAINERS: USB, remove F: drivers/net/usb/ pattern Joe Perches
2013-07-30 14:00   ` [PATCH v3 1/3] net/usb/r815x: replace USB buffer from stack to DMA-able Greg KH
2013-07-30 18:33     ` David Miller
2013-07-30 18:41       ` Joe Perches
2013-07-30 18:49         ` David Miller
2013-07-31 10:29           ` Ming Lei [this message]
2013-07-30 18:58       ` Greg KH
2013-07-30 14:29   ` Ming Lei
2013-07-31  9:21 ` [PATCH v4 1/5] " Hayes Wang
2013-07-31  9:21   ` [PATCH v4 2/5] net/usb/r815x: avoid to call mdio functions for runtime-suspended device Hayes Wang
2013-07-31 21:49     ` David Miller
2013-07-31  9:21   ` [PATCH v4 3/5] net/usb/r815x: change the return value for bind functions Hayes Wang
     [not found]     ` <1375262486-5373-3-git-send-email-hayeswang-Rasf1IRRPZFBDgjK7y7TUQ@public.gmane.org>
2013-07-31 21:49       ` David Miller
     [not found]   ` <1375262486-5373-1-git-send-email-hayeswang-Rasf1IRRPZFBDgjK7y7TUQ@public.gmane.org>
2013-07-31  9:21     ` [PATCH v4 4/5] net/usb/r8152: make sure the USB buffer is DMA-able Hayes Wang
2013-07-31 12:54       ` Greg KH
2013-07-31 21:50       ` David Miller
2013-07-31  9:21   ` [PATCH v4 5/5] net/usb/r8152: adjust relative ocp function Hayes Wang
2013-07-31 21:50     ` David Miller
2013-07-31 12:53   ` [PATCH v4 1/5] net/usb/r815x: replace USB buffer from stack to DMA-able Greg KH
2013-07-31 21:49   ` David Miller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CACVXFVNH=71cEncYfJRAf61j-WJWmoZrs+PdsC1XtWybu8v-Gw@mail.gmail.com' \
    --to=tom.leiming@gmail.com \
    --cc=davem@davemloft.net \
    --cc=gregkh@linuxfoundation.org \
    --cc=hayeswang@realtek.com \
    --cc=joe@perches.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=nic_swsd@realtek.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).