From: Lan Tianyu <tianyu.lan@intel.com>
To: kernel-janitors@vger.kernel.org
Subject: Re: [balbi-usb:merge-result-for-greg 66/99] drivers/usb/core/hub.c:2654 usb_get_hub_port_power_state
Date: Wed, 12 Sep 2012 14:41:32 +0000 [thread overview]
Message-ID: <50509F1C.2030208@intel.com> (raw)
In-Reply-To: <20120912082622.GB27847@localhost>
On 2012/9/12 21:11, Alan Stern wrote:
> On Wed, 12 Sep 2012, Fengguang Wu wrote:
>
>> Hi Felipe,
>>
>> FYI, there are new smatch warnings show up in
>>
>> tree: git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb.git merge-result-for-greg
>> head: 23953bde3e4d6aa8780dc054f6ad9882ac63f4f4
>> commit: e918fa161f510136fce45a524e934fe20e62c8b1 [66/99] Merge tag 'gadget-for-v3.7' into merge-result-for-greg
>>
>> drivers/usb/core/hub.c:2654 usb_get_hub_port_power_state() error: doing dma on the stack ((null))
>> drivers/usb/core/hub.c:4733 store_port_power_control() info: why not propagate 'ret' from set_port_feature() instead of -5?
>> drivers/usb/core/hub.c:4744 store_port_power_control() info: why not propagate 'ret' from clear_port_feature() instead of -5?
>>
>> vim +2654 drivers/usb/core/hub.c
>> 2644 return ret;
>> 2645 }
>> 2646
>> 2647 static int usb_get_hub_port_power_state(struct usb_device *hdev, int port1)
>> 2648 {
>> 2649 struct usb_hub *hub = hdev_to_hub(hdev);
>> 2650 struct usb_port_status data;
>> 2651 u16 portstatus;
>> 2652 int ret;
>> 2653
>>> 2654 ret = get_port_status(hub->hdev, port1, &data);
>> 2655 if (ret < 4) {
>> 2656 dev_err(hub->intfdev,
>> 2657 "%s failed (err = %d)\n", __func__, ret);
>> 2658 if (ret >= 0)
>> 2659 ret = -EIO;
>> 2660 return ret;
>> 2661 } else
>> 2662 portstatus = le16_to_cpu(data.wPortStatus);
>> 2663 return port_is_power_on(hub, portstatus);
>> 2664 }
>
> This is a real problem. It looks like it really is necessary to call
> hub_port_status() here, not get_port_status(). Would you like to fix
> this?
>
Yeah. I'd like to fix it.
> The reason for changing the return codes from clear_port_feature() and
> set_port_feature() is simple. The values they return are meant for
> internal use within the kernel, whereas the return code from
> store_port_power_control() will be passed back to userspace.
>
> Alan Stern
>
--
Best Regards
Tianyu Lan
linux kernel enabling team
prev parent reply other threads:[~2012-09-12 14:41 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-12 8:26 [balbi-usb:merge-result-for-greg 66/99] drivers/usb/core/hub.c:2654 usb_get_hub_port_power_state() e Fengguang Wu
2012-09-12 8:26 ` [balbi-usb:merge-result-for-greg 66/99] drivers/usb/core/hub.c:2654 usb_get_hub_port_power_state() error: doing dma on the stack ((null)) Fengguang Wu
2012-09-12 8:50 ` [balbi-usb:merge-result-for-greg 66/99] drivers/usb/core/hub.c:2654 usb_get_hub_port_power_state Dan Carpenter
2012-09-12 8:50 ` [balbi-usb:merge-result-for-greg 66/99] drivers/usb/core/hub.c:2654 usb_get_hub_port_power_state() error: doing dma on the stack ((null)) Dan Carpenter
2012-09-12 12:02 ` [balbi-usb:merge-result-for-greg 66/99] drivers/usb/core/hub.c:2654 usb_get_hub_port_power_state Felipe Balbi
2012-09-12 12:02 ` [balbi-usb:merge-result-for-greg 66/99] drivers/usb/core/hub.c:2654 usb_get_hub_port_power_state() error: doing dma on the stack ((null)) Felipe Balbi
[not found] ` <20120912120211.GC5732-S8G//mZuvNWo5Im9Ml3/Zg@public.gmane.org>
2012-09-12 12:09 ` [balbi-usb:merge-result-for-greg 66/99] drivers/usb/core/hub.c:2654 usb_get_hub_port_power_state Fengguang Wu
2012-09-12 12:09 ` [balbi-usb:merge-result-for-greg 66/99] drivers/usb/core/hub.c:2654 usb_get_hub_port_power_state() error: doing dma on the stack ((null)) Fengguang Wu
2012-09-12 13:11 ` [balbi-usb:merge-result-for-greg 66/99] drivers/usb/core/hub.c:2654 usb_get_hub_port_power_state Alan Stern
2012-09-12 14:41 ` Lan Tianyu [this message]
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=50509F1C.2030208@intel.com \
--to=tianyu.lan@intel.com \
--cc=kernel-janitors@vger.kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.