Re: [PATCH 1/2] Fix build error caused by broken PCH_PTP module dependency.
From: David Miller <davem@davemloft.net>
Date: 2012-10-03 02:23:56
Also in:
lkml
From: Haicheng Li <redacted> Date: Fri, 28 Sep 2012 14:57:38 +0800
On 09/28/2012 02:46 PM, David Miller wrote:quoted
From: Haicheng Li<redacted> Date: Fri, 28 Sep 2012 14:41:43 +0800quoted
On 09/28/2012 06:09 AM, David Miller wrote:quoted
Look at how other people submit patches, do any other patch submissions look like your's having all of this metadata in the message body:I'm sorry for it.quoted
As for this specific patch:quoted
- depends on PTP_1588_CLOCK_PCH + depends on PTP_1588_CLOCK_PCH = PCH_GBEThis is not the correct way to ensure that the module'ness of one config option meets the module'ness requirements of another. The correct way is to say something like "&& (PCH_GBE || PCH_GBE=n)"This case is a little bit tricky than usual, with PCH_PTP selected, the valid config would be either "PTP_1588_CLOCK_PCH=PCH_GBE=m" or "PTP_1588_CLOCK_PCH=PCH_GBE=y", and PTP_1588_CLOCK_PCH depends on PCH_GBE.And a simple "&& PCH_GBE" should accomplish this, no?No sir. it's actually same with the original Kconfig (by a if PCH_GBE"), it just failed with this config: CONFIG_PCH_GBE=y CONFIG_PCH_PTP=y CONFIG_PTP_1588_CLOCK=m
The correct fix is to make the Kconfig entry for PCH_PTP use a "select PTP_1588_CLOCK" instead of "depends PTP_1588_CLOCK" I'll apply this fix. The is another, extremely convoluted, way to do this, which is what the SFC driver does which is: depends on SFC && PTP_1588_CLOCK && !(SFC=y && PTP_1588_CLOCK=m) but that looks horrible to me.