Re: linux-next: Tree for Aug 28 [ xhci build breakage ]

Sedat Dilek
2013-08-28T15:17:11Z

On Wed, Aug 28, 2013 at 1:19 PM, Sedat Dilek <sedat.dilek@gmail.com> wrote:
> On Wed, Aug 28, 2013 at 12:53 PM, Dmitry Kasatkin
> <d.kasatkin@samsung.com> wrote:
>> On 28/08/13 13:46, Sedat Dilek wrote:
>>> On Wed, Aug 28, 2013 at 12:43 PM, Dmitry Kasatkin
>>> <d.kasatkin@samsung.com> wrote:
>>>> On 28/08/13 13:38, Sedat Dilek wrote:
>>>>> On Wed, Aug 28, 2013 at 12:29 PM, Sedat Dilek <sedat.dilek@gmail.com> wrote:
>>>>>> On Wed, Aug 28, 2013 at 11:56 AM, Sedat Dilek <sedat.dilek@gmail.com> wrote:
>>>>>>> On Wed, Aug 28, 2013 at 11:49 AM, Sedat Dilek <sedat.dilek@gmail.com> wrote:
>>>>>>>> Hi all,
>>>>>>>>
>>>>>>>> Changes since 20130827:
>>>>>>>>
>>>>>>>> The f2fs tree lost its build failure.
>>>>>>>>
>>>>>>>> The md tree gained a conflict against the arm tree.
>>>>>>>>
>>>>>>>> The libata tree lost its build failure.
>>>>>>>>
>>>>>>>> The spi tree lost its build failure.
>>>>>>>>
>>>>>>>> The arm-soc tree gained conflicts against the usb tree.
>>>>>>>>
>>>>>>>> The dma-mapping tree gained a conflict against the driver-core tree.
>>>>>>>>
>>>>>>>> The akpm-current tree gained a conflict against the net tree.
>>>>>>>>
>>>>>>>> ----------------------------------------------------------------------------
>>>>>>>>
>>>>>>>> My build here breaks like this:
>>>>>>>>
>>>>>>>> CC drivers/usb/host/xhci-ring.o
>>>>>>>> CC drivers/video/console/softcursor.o
>>>>>>>> drivers/usb/host/xhci-ring.c: In function 'xhci_queue_intr_tx':
>>>>>>>> drivers/usb/host/xhci-ring.c:3090:3: error: implicit declaration of
>>>>>>>> function 'DEFINE_DYNAMIC_DEBUG_METADATA'
>>>>>>>> [-Werror=implicit-function-declaration]
>>>>>>>> drivers/usb/host/xhci-ring.c:3090:3: error: 'descriptor' undeclared
>>>>>>>> (first use in this function)
>>>>>>>> drivers/usb/host/xhci-ring.c:3090:3: note: each undeclared identifier
>>>>>>>> is reported only once for each function it appears in
>>>>>>>> drivers/usb/host/xhci-ring.c:3090:3: error: implicit declaration of
>>>>>>>> function '__dynamic_pr_debug' [-Werror=implicit-function-declaration]
>>>>>>>> drivers/usb/host/xhci-ring.c: In function 'xhci_queue_isoc_tx_prepare':
>>>>>>>> drivers/usb/host/xhci-ring.c:3875:3: error: 'descriptor' undeclared
>>>>>>>> (first use in this function)
>>>>>>>> cc1: some warnings being treated as errors
>>>>>>>> make[5]: *** [drivers/usb/host/xhci-ring.o] Error 1
>>>>>>>> make[4]: *** [drivers/usb/host] Error 2
>>>>>>>>
>>>>>>>> My kernel-config is attached.
>>>>>>>>
>>>>>>> Looks like <linux/device.h> or <linux/dynamic_debug.h> is missing.
>>>>>>>
>>>>>>> $ egrep -w '__dynamic_pr_debug|DEFINE_DYNAMIC_DEBUG_METADATA' -nr linux/include/
>>>>>>> linux/include/linux/device.h:1118:
>>>>>>> DEFINE_DYNAMIC_DEBUG_METADATA(descriptor, fmt); \
>>>>>>> linux/include/linux/device.h:1121:
>>>>>>> __dynamic_pr_debug(&descriptor, pr_fmt(fmt), \
>>>>>>> linux/include/linux/dynamic_debug.h:45:int __dynamic_pr_debug(struct
>>>>>>> _ddebug *descriptor, const char *fmt, ...);
>>>>>>> linux/include/linux/dynamic_debug.h:63:#define
>>>>>>> DEFINE_DYNAMIC_DEBUG_METADATA(name, fmt) \
>>>>>>> linux/include/linux/dynamic_debug.h:76:
>>>>>>> DEFINE_DYNAMIC_DEBUG_METADATA(descriptor, fmt); \
>>>>>>> linux/include/linux/dynamic_debug.h:78:
>>>>>>> __dynamic_pr_debug(&descriptor, pr_fmt(fmt), \
>>>>>>> linux/include/linux/dynamic_debug.h:84:
>>>>>>> DEFINE_DYNAMIC_DEBUG_METADATA(descriptor, fmt); \
>>>>>>> linux/include/linux/dynamic_debug.h:92:
>>>>>>> DEFINE_DYNAMIC_DEBUG_METADATA(descriptor, fmt); \
>>>>>>> linux/include/linux/dynamic_debug.h:101:
>>>>>>> DEFINE_DYNAMIC_DEBUG_METADATA(descriptor, \
>>>>>>>
>>>>>>> Can't say which one is preferred here.
>>>>>>>
>>>>>> looks like device.h is preferred or used in the sources, but this does
>>>>>> not fix the issue here.
>>>>>> sth. wrong with dev_dbg_ratelimited()?
>>>>>>
>>>>> That change seems to cause the problems:
>>>>>
>>>>> commit 0730d52a86919300a39a2be37f6c140997dfb82f
>>>>> "xhci:prevent "callbacks suppressed" when debug is not enabled"
>>>>>
>>>>> - Sedat -
>>>>>
>>>>> [1] http://git.kernel.org/cgit/linux/kernel/git/gregkh/usb.git/commit/drivers/usb/host/xhci-ring.c?h=usb-next&id=0730d52a86919300a39a2be37f6c140997dfb82f
>>>>>
>>>> Hello,
>>>>
>>>> [PATCHv2 1/2] was not applied before.
>>>> I pointed this out few hours ago...
>>>>
>>>> - Dmitry
>>>>
>>> Yupp, just read it a few seconds ago.
>>>
>>> Where is that whatever 2nd fix?
>>>
>>> - Sedat -
>>>
>>> [1] http://marc.info/?l=linux-usb&m=137767590629869&w=2
>>>
>>
>> 1/2 - was not applied
>> https://patchwork.kernel.org/patch/2850217/
>>
>
> Tested-by: Sedat Dilek <sedat.dilek@gmail.com> (against next-20130828).
>

The build-breakage happened here with CONFIG_DYNAMIC_DEBUG=n (see
changelog of Dmitry's 1/2 patch).

$ grep CONFIG_DYNAMIC_DEBUG /boot/config-$(uname -r)
# CONFIG_DYNAMIC_DEBUG is not set

I guess with the "defined(DEBUG)" statement people check for
CONFIG_DEBUG_KERNEL=y.

- Sedat -

> - Sedat -
>
>> 2/2 - this one was applied
>> https://patchwork.kernel.org/patch/2850218/
>>
>> - Dmitry
>>