On Mon, Jan 21, 2013 at 11:51 PM, Russell King - ARM Linux <linux@xxxxxxxxxxxxxxxx> wrote: > On Mon, Jan 21, 2013 at 05:07:36AM -0500, Chao Xie wrote: >> + mv_phy->extern_chip.head = devm_kzalloc(&pdev->dev, >> + sizeof(*mv_phy->extern_chip.head), >> + GFP_KERNEL); >> + if (mv_phy->extern_chip.head == NULL) >> + return -ENOMEM; >> + ATOMIC_INIT_NOTIFIER_HEAD(mv_phy->extern_chip.head); > > Why do you need to allocate an atomic notifier list head as an entirely > separate data structure? > -- > To unsubscribe from this list: send the line "unsubscribe linux-usb" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html Th reason is that the original code seperate the extern_chip and phy support. So it depends on the ->head to detect whether extern_chip is initialized or not. Now it is combined with phy, the ->phy pointer can do the job. -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html