Re: [GIT PULL] UWB, WUSB, and WLP subsystems for 2.6.28

From: David Vrabel
Date: Wed Oct 15 2008 - 08:50:41 EST


Andrew Morton wrote:
>> On Fri, 10 Oct 2008 13:08:28 +0100 David Vrabel <david.vrabel@xxxxxxx> wrote:
>> Please pull the new UWB, WUSB and WLP subsystems from
>>
>> git://git.kernel.org/pub/scm/linux/kernel/git/dvrabel/uwb.git for-upstream
>
> didn't happen?

Not yet.

> What is the review status of this work? I don't remember seeing it on any
> of the lists where I lurk - perhaps a full resend will help things along.

Several iterations were posted and reviewed on the linux-usb mailing list.

> <quick scan>
>
> Code looks reasonable.
>
> It has lots of comments which start with /**, which is the
> this-is-kerneldoc token. Only they're not kerneldoc comments. These
> should all be converted to kerneldoc, or replace the /** with /*.

I've been fixing these up when I've been updating the documentation.

> uwb_beca_purge() should use time_after() or time_before().

Ok.

> In uwb_bce_print_IEs(), the cast of
> uwb_rc_evt_beacon_WUSB_0100.BeaconInfo[] into a struct uwb_rc_evt_beacon*
> looks really worrisome from an alignment POV. Can it result in misaligned
> accesses on architectures which don't like that? (ia64, alpha, ...)

In that function *be is of type struct uwb_rc_evt_beacon which is 48
octets long. struct uwb_beacon_frame only contains u8's so there are no
alignment issues.

> Code does kzalloc(a * b, ..) in some places. kcalloc() is preferred, so
> readers don't have to worry whether the code is vulnerable to
> multiplicative overflows.

Ok.

> The code has a random mixture of
> zero-lines-between-end-of-locals-and-start-of-code and
> one-line-between-end-of-locals-and-start-of-code (and two line). The
> latter is usually preferred.

I agree here. I've been fixing these up when had to make other changes
to the affected functions.

> The person who misnamed DEFINE_BITMAP as DECLARE_BITMAP instead gets a
> wedgie.

Not sure you mean here?

> It seems strange that uwb_drp_ie_update(UWB_RSV_STATE_NONE) will free
> rsv->drp_ie then reallocate it.

If rsv->state == UWB_RSV_STATE_NONE the function returns in the switch
before the call to uwb_drp_ie_alloc().

> printk_ratelimit() is a bit silly because it shares state with other
> unrelated subsystems which might be using it. Direct use of __ratelimit()
> would be better.

Ok.

> All minor stuff - I didn't spend long looking...

I can fix up some of the issues in the next couple of days (use
time_after() and kcalloc()). Could these subsystems then be merged?

The printk_ratelimit() will take a bit longer.

David
--
David Vrabel, Senior Software Engineer, Drivers
CSR, Churchill House, Cambridge Business Park, Tel: +44 (0)1223 692562
Cowley Road, Cambridge, CB4 0WZ http://www.csr.com/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/