* r8168 is needed to enter P-state: Package State 6 (pc6) on Haswell hardware @ 2014-09-30 23:09 Ceriel Jacobs 2014-10-05 16:59 ` Francois Romieu 0 siblings, 1 reply; 18+ messages in thread From: Ceriel Jacobs @ 2014-09-30 23:09 UTC (permalink / raw) To: Realtek linux nic maintainers, Francois Romieu; +Cc: netdev With in-kernel r8169 module, only P-state package C3 (pc3) can be reached when enabling ASPM. Only after installing r8168 driver (and enabling ASPM), a Haswell Celeron G1820/G1840 processer will enter package C6 state (pc6). Tested with Ubuntu kernel 3.13 x86_64 and Ubuntu mainline Linux ubuntu14 3.17.0-999-generic #201409240305 SMP Wed Sep 24 02:07:04 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux I hope this gets fixed: Haswell processor entering pc6 with ASPM enabled and r8169 in-kernel module. R8111GR hardware: # lspci -nnkvv -s 03:00.0 03:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 11) Subsystem: ASRock Incorporation Motherboard (one of many) [1849:8168] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+ Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 27 Region 0: I/O ports at e000 [size=256] Region 2: Memory at f0404000 (64-bit, non-prefetchable) [size=4K] Region 4: Memory at f0400000 (64-bit, prefetchable) [size=16K] Capabilities: [40] Power Management version 3 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA PME(D0+,D1+,D2+,D3hot+,D3cold+) Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME- Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit+ Address: 00000000fee0100c Data: 41e1 Capabilities: [70] Express (v2) Endpoint, MSI 01 DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <512ns, L1 <64us ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset- DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported- RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop- MaxPayload 128 bytes, MaxReadReq 4096 bytes DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr+ TransPend- LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L0s L1, Exit Latency L0s unlimited, L1 <64us ClockPM+ Surprise- LLActRep- BwNot- LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- CommClk+ ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt- LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt- DevCap2: Completion Timeout: Range ABCD, TimeoutDis+, LTR+, OBFF Via message/WAKE# DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR+, OBFF Disabled LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis- Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS- Compliance De-emphasis: -6dB LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete-, EqualizationPhase1- EqualizationPhase2-, EqualizationPhase3-, LinkEqualizationRequest- Capabilities: [b0] MSI-X: Enable- Count=4 Masked- Vector table: BAR=4 offset=00000000 PBA: BAR=4 offset=00000800 Capabilities: [d0] Vital Product Data Unknown small resource type 00, will not decode more. Capabilities: [100 v1] Advanced Error Reporting UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol- UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol- UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol- CESta: RxErr- BadTLP+ BadDLLP- Rollover- Timeout+ NonFatalErr- CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+ AERCap: First Error Pointer: 00, GenCap+ CGenEn- ChkCap+ ChkEn- Capabilities: [140 v1] Virtual Channel Caps: LPEVC=0 RefClk=100ns PATEntryBits=1 Arb: Fixed- WRR32- WRR64- WRR128- Ctrl: ArbSelect=Fixed Status: InProgress- VC0: Caps: PATOffset=00 MaxTimeSlots=1 RejSnoopTrans- Arb: Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256- Ctrl: Enable+ ID=0 ArbSelect=Fixed TC/VC=01 Status: NegoPending- InProgress- Capabilities: [160 v1] Device Serial Number <cut> Capabilities: [170 v1] Latency Tolerance Reporting Max snoop latency: 71680ns Max no snoop latency: 71680ns ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: r8168 is needed to enter P-state: Package State 6 (pc6) on Haswell hardware 2014-09-30 23:09 r8168 is needed to enter P-state: Package State 6 (pc6) on Haswell hardware Ceriel Jacobs @ 2014-10-05 16:59 ` Francois Romieu 2014-10-05 22:22 ` Ceriel Jacobs 2014-10-06 3:06 ` r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware Hayes Wang 0 siblings, 2 replies; 18+ messages in thread From: Francois Romieu @ 2014-10-05 16:59 UTC (permalink / raw) To: Ceriel Jacobs; +Cc: Realtek linux nic maintainers, netdev Ceriel Jacobs <linux-ide@crashplan.pro> : > With in-kernel r8169 module, only P-state package C3 (pc3) can be reached > when enabling ASPM. > > Only after installing r8168 driver (and enabling ASPM), a Haswell Celeron > G1820/G1840 processer will enter package C6 state (pc6). Vanilla kernel r8169 driver logs a message that contains an "XID" string. Please grep for it in your dmesg so that I can narrow the search for meaningful differences in Realtek's r8168 driver. Thanks. -- Ueimor ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: r8168 is needed to enter P-state: Package State 6 (pc6) on Haswell hardware 2014-10-05 16:59 ` Francois Romieu @ 2014-10-05 22:22 ` Ceriel Jacobs 2014-10-06 3:06 ` r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware Hayes Wang 1 sibling, 0 replies; 18+ messages in thread From: Ceriel Jacobs @ 2014-10-05 22:22 UTC (permalink / raw) To: Francois Romieu; +Cc: Realtek linux nic maintainers, netdev This is the requested "XID" dmesg line is: [ 1.479298] r8169 0000:03:00.0 eth0: RTL8168g/8111g at 0xffffc90004752000, d0:50:99:0b:09:90, XID 0c000800 IRQ 27 Francois Romieu schreef op 05-10-14 om 18:59: > Ceriel Jacobs <linux-ide@crashplan.pro> : >> With in-kernel r8169 module, only P-state package C3 (pc3) can be reached >> when enabling ASPM. >> >> Only after installing r8168 driver (and enabling ASPM), a Haswell Celeron >> G1820/G1840 processer will enter package C6 state (pc6). > > Vanilla kernel r8169 driver logs a message that contains an "XID" string. > Please grep for it in your dmesg so that I can narrow the search for > meaningful differences in Realtek's r8168 driver. > > Thanks. > ^ permalink raw reply [flat|nested] 18+ messages in thread
* RE: r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware 2014-10-05 16:59 ` Francois Romieu 2014-10-05 22:22 ` Ceriel Jacobs @ 2014-10-06 3:06 ` Hayes Wang 2014-10-06 22:13 ` Francois Romieu 1 sibling, 1 reply; 18+ messages in thread From: Hayes Wang @ 2014-10-06 3:06 UTC (permalink / raw) To: Francois Romieu, Ceriel Jacobs; +Cc: nic_swsd, netdev@vger.kernel.org Francois Romieu [mailto:romieu@fr.zoreil.com] > Sent: Monday, October 06, 2014 12:59 AM [...] > > With in-kernel r8169 module, only P-state package C3 (pc3) > > can be reached > > when enabling ASPM. > > > > Only after installing r8168 driver (and enabling ASPM), a > > Haswell Celeron > > G1820/G1840 processer will enter package C6 state (pc6). > > Vanilla kernel r8169 driver logs a message that contains an > "XID" string. > Please grep for it in your dmesg so that I can narrow the search for > meaningful differences in Realtek's r8168 driver. I don't sure if the following information is helpful. Besides, I remember the rtl_init_one() would disable it. http://git.kernel.org/cgit/linux/kernel/git/davem/net-next.git/commit/?id=d64ec841517a25f6d468bde9f67e5b4cffdc67c7 http://git.kernel.org/cgit/linux/kernel/git/davem/net-next.git/commit/?id=4521e1a94279ce610d3f9b7945c17d581f804242 Best Regards, Hayes ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware 2014-10-06 3:06 ` r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware Hayes Wang @ 2014-10-06 22:13 ` Francois Romieu 2014-10-07 2:50 ` r8168 is needed to enter P-state: Package State 6(pc6)onHaswellhardware Hayes Wang ` (2 more replies) 0 siblings, 3 replies; 18+ messages in thread From: Francois Romieu @ 2014-10-06 22:13 UTC (permalink / raw) To: Hayes Wang; +Cc: Ceriel Jacobs, nic_swsd, netdev@vger.kernel.org Hayes Wang <hayeswang@realtek.com> : > Francois Romieu [mailto:romieu@fr.zoreil.com] [...] > I don't sure if the following information is helpful. Besides, I remember > the rtl_init_one() would disable it. > > http://git.kernel.org/cgit/linux/kernel/git/davem/net-next.git/commit/?id=d64ec841517a25f6d468bde9f67e5b4cffdc67c7 > > http://git.kernel.org/cgit/linux/kernel/git/davem/net-next.git/commit/?id=4521e1a94279ce610d3f9b7945c17d581f804242 Yes, I did not expect this stuff to stay in geostationary orbit for long :o/ Realtek's r8168 driver defaults to CONFIG_ASPM=1 but I guess some users need to disable it and there's no known pattern / blacklist, right ? Ceriel, does the patch below against current kernel make a difference ? diff --git a/drivers/net/ethernet/realtek/r8169.c b/drivers/net/ethernet/realtek/r8169.c index 0921302..b4a3881 100644 --- a/drivers/net/ethernet/realtek/r8169.c +++ b/drivers/net/ethernet/realtek/r8169.c @@ -468,6 +468,7 @@ enum rtl8168_registers { #define PWM_EN (1 << 22) #define RXDV_GATED_EN (1 << 19) #define EARLY_TALLY_EN (1 << 16) +#define FORCE_CLK (1 << 15) /* force clock request */ }; enum rtl_register_content { @@ -5279,8 +5280,10 @@ static void rtl_hw_start_8168g_1(struct rtl8169_private *tp) rtl_eri_write(tp, 0x2f8, ERIAR_MASK_0011, 0x1d8f, ERIAR_EXGMAC); RTL_W8(ChipCmd, CmdTxEnb | CmdRxEnb); - RTL_W32(MISC, RTL_R32(MISC) & ~RXDV_GATED_EN); + RTL_W32(MISC, (RTL_R32(MISC) | FORCE_CLK) & ~RXDV_GATED_EN); RTL_W8(MaxTxPacketSize, EarlySize); + RTL_W8(Config5, RTL_R8(Config5) | ASPM_en); + RTL_W8(Config2, RTL_R8(Config2) | ClkReqEn); rtl_eri_write(tp, 0xc0, ERIAR_MASK_0011, 0x0000, ERIAR_EXGMAC); rtl_eri_write(tp, 0xb8, ERIAR_MASK_0011, 0x0000, ERIAR_EXGMAC); ^ permalink raw reply related [flat|nested] 18+ messages in thread
* RE: r8168 is needed to enter P-state: Package State 6(pc6)onHaswellhardware 2014-10-06 22:13 ` Francois Romieu @ 2014-10-07 2:50 ` Hayes Wang 2014-10-07 20:17 ` Francois Romieu 2014-10-07 10:40 ` r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware Ceriel Jacobs 2014-10-08 20:29 ` r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware: does the patch below against current kernel make a difference? Ceriel Jacobs 2 siblings, 1 reply; 18+ messages in thread From: Hayes Wang @ 2014-10-07 2:50 UTC (permalink / raw) To: Francois Romieu; +Cc: Ceriel Jacobs, nic_swsd, netdev@vger.kernel.org Francois Romieu [mailto:romieu@fr.zoreil.com] > Sent: Tuesday, October 07, 2014 6:13 AM [...] > Realtek's r8168 driver defaults to CONFIG_ASPM=1 but I guess > some users > need to disable it and there's no known pattern / blacklist, right ? When enabling the ASPM, it would influence the thrpughput. It is hard to choose performance or power saving. Therefore, we reserve the config to let the user determines it. Best Regards, Hayes ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: r8168 is needed to enter P-state: Package State 6(pc6)onHaswellhardware 2014-10-07 2:50 ` r8168 is needed to enter P-state: Package State 6(pc6)onHaswellhardware Hayes Wang @ 2014-10-07 20:17 ` Francois Romieu 2014-10-08 2:35 ` r8168 is needed to enter P-state: Package State6(pc6)onHaswellhardware Hayes Wang 0 siblings, 1 reply; 18+ messages in thread From: Francois Romieu @ 2014-10-07 20:17 UTC (permalink / raw) To: Hayes Wang; +Cc: Ceriel Jacobs, nic_swsd, netdev@vger.kernel.org Hayes Wang <hayeswang@realtek.com> : [...] > When enabling the ASPM, it would influence the thrpughput. It is hard to > choose performance or power saving. Therefore, we reserve the config > to let the user determines it. Mmmm... How do Realtek's devices behave if Config{2, 3} + MISC registers are configured for ASPM whereas PCI config space registers aren't ? -- Ueimor ^ permalink raw reply [flat|nested] 18+ messages in thread
* RE: r8168 is needed to enter P-state: Package State6(pc6)onHaswellhardware 2014-10-07 20:17 ` Francois Romieu @ 2014-10-08 2:35 ` Hayes Wang 2014-10-08 11:40 ` Ceriel Jacobs 0 siblings, 1 reply; 18+ messages in thread From: Hayes Wang @ 2014-10-08 2:35 UTC (permalink / raw) To: Francois Romieu; +Cc: Ceriel Jacobs, nic_swsd, netdev@vger.kernel.org Francois Romieu [mailto:romieu@fr.zoreil.com] > Sent: Wednesday, October 08, 2014 4:17 AM [...] > > When enabling the ASPM, it would influence the thrpughput. > > It is hard to > > choose performance or power saving. Therefore, we reserve the config > > to let the user determines it. > > Mmmm... > > How do Realtek's devices behave if Config{2, 3} + MISC registers are > configured for ASPM whereas PCI config space registers aren't ? The feature of the ASPM for the nic would be disabled. ASPM is enabled when both the internal settings and the PCI config space registers are enabled. Best Regards, Hayes ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: r8168 is needed to enter P-state: Package State6(pc6)onHaswellhardware 2014-10-08 2:35 ` r8168 is needed to enter P-state: Package State6(pc6)onHaswellhardware Hayes Wang @ 2014-10-08 11:40 ` Ceriel Jacobs 0 siblings, 0 replies; 18+ messages in thread From: Ceriel Jacobs @ 2014-10-08 11:40 UTC (permalink / raw) To: Hayes Wang, Francois Romieu; +Cc: nic_swsd, netdev@vger.kernel.org Hayes Wang schreef op 08-10-14 om 04:35: > Francois Romieu [mailto:romieu@fr.zoreil.com] >> Sent: Wednesday, October 08, 2014 4:17 AM > [...] >>> When enabling the ASPM, it would influence the thrpughput. >>> It is hard to >>> choose performance or power saving. Therefore, we reserve the config >>> to let the user determines it. >> >> Mmmm... >> >> How do Realtek's devices behave if Config{2, 3} + MISC registers are >> configured for ASPM whereas PCI config space registers aren't ? > > The feature of the ASPM for the nic would be disabled. > ASPM is enabled when both the internal settings and > the PCI config space registers are enabled. Have in mind a situation where the PCI config space registers are set manually (after user login). At which point in time will be determined whether ASPM for the nic will be disabled or enabled? Once, when loading the kernel module? Or more often? ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware 2014-10-06 22:13 ` Francois Romieu 2014-10-07 2:50 ` r8168 is needed to enter P-state: Package State 6(pc6)onHaswellhardware Hayes Wang @ 2014-10-07 10:40 ` Ceriel Jacobs 2014-10-07 20:16 ` Francois Romieu 2014-10-08 20:29 ` r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware: does the patch below against current kernel make a difference? Ceriel Jacobs 2 siblings, 1 reply; 18+ messages in thread From: Ceriel Jacobs @ 2014-10-07 10:40 UTC (permalink / raw) To: Francois Romieu, Hayes Wang; +Cc: nic_swsd, netdev@vger.kernel.org Francois Romieu schreef op 07-10-14 om 00:13: > Hayes Wang <hayeswang@realtek.com> : >> Francois Romieu [mailto:romieu@fr.zoreil.com] > [...] >> I don't sure if the following information is helpful. Besides, I remember >> the rtl_init_one() would disable it. >> >> http://git.kernel.org/cgit/linux/kernel/git/davem/net-next.git/commit/?id=d64ec841517a25f6d468bde9f67e5b4cffdc67c7 >> >> http://git.kernel.org/cgit/linux/kernel/git/davem/net-next.git/commit/?id=4521e1a94279ce610d3f9b7945c17d581f804242 > > Yes, I did not expect this stuff to stay in geostationary orbit for long :o/ > > Realtek's r8168 driver defaults to CONFIG_ASPM=1 # modinfo r8168 suggests the opposite (ASPM is disabled by default): version: 8.039.00-NAPI parm: aspm:Enable ASPM. (int) When ASPM would be enabled by default, one would need a boot parameter like: parm: aspm:Disable ASPM. (int) but I guess some users > need to disable it and there's no known pattern / blacklist, right ? I don't want to disable ASPM. In fact the r8168 module I am even running with poot params like: # cat /proc/cmdline BOOT_IMAGE=/boot/vmlinuz-3.17.0-999-generic root=/dev/sda1 ro biosdevname=0 intel_pstate=enable ipv6.disabled=1 debug ignore_loglevel panic=10 pcie_aspm.policy=powersave pcie_aspm=force r8168.aspm=1 r8168.eee_enable=1 oops=panic > > Ceriel, does the patch below against current kernel make a difference ? Francois, what do you mean with "current kernel", the latest Ubuntu mainline kernel or something different? > > diff --git a/drivers/net/ethernet/realtek/r8169.c b/drivers/net/ethernet/realtek/r8169.c > index 0921302..b4a3881 100644 > --- a/drivers/net/ethernet/realtek/r8169.c > +++ b/drivers/net/ethernet/realtek/r8169.c > @@ -468,6 +468,7 @@ enum rtl8168_registers { > #define PWM_EN (1 << 22) > #define RXDV_GATED_EN (1 << 19) > #define EARLY_TALLY_EN (1 << 16) > +#define FORCE_CLK (1 << 15) /* force clock request */ > }; > > enum rtl_register_content { > @@ -5279,8 +5280,10 @@ static void rtl_hw_start_8168g_1(struct rtl8169_private *tp) > rtl_eri_write(tp, 0x2f8, ERIAR_MASK_0011, 0x1d8f, ERIAR_EXGMAC); > > RTL_W8(ChipCmd, CmdTxEnb | CmdRxEnb); > - RTL_W32(MISC, RTL_R32(MISC) & ~RXDV_GATED_EN); > + RTL_W32(MISC, (RTL_R32(MISC) | FORCE_CLK) & ~RXDV_GATED_EN); > RTL_W8(MaxTxPacketSize, EarlySize); > + RTL_W8(Config5, RTL_R8(Config5) | ASPM_en); > + RTL_W8(Config2, RTL_R8(Config2) | ClkReqEn); > > rtl_eri_write(tp, 0xc0, ERIAR_MASK_0011, 0x0000, ERIAR_EXGMAC); > rtl_eri_write(tp, 0xb8, ERIAR_MASK_0011, 0x0000, ERIAR_EXGMAC); > ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware 2014-10-07 10:40 ` r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware Ceriel Jacobs @ 2014-10-07 20:16 ` Francois Romieu 0 siblings, 0 replies; 18+ messages in thread From: Francois Romieu @ 2014-10-07 20:16 UTC (permalink / raw) To: Ceriel Jacobs; +Cc: Hayes Wang, nic_swsd, netdev@vger.kernel.org Ceriel Jacobs <linux-ide@crashplan.pro> : > Francois Romieu schreef op 07-10-14 om 00:13: [...] > >Realtek's r8168 driver defaults to CONFIG_ASPM=1 > > # modinfo r8168 suggests the opposite (ASPM is disabled by default): > version: 8.039.00-NAPI > parm: aspm:Enable ASPM. (int) $ grep CONFIG_ASPM src/Makefile CONFIG_ASPM = y $ less src/r8168_n.c [...] #ifdef CONFIG_ASPM static int aspm = 1; #else static int aspm = 0; #endif [...] > Francois, what do you mean with "current kernel", the latest Ubuntu mainline > kernel or something different? Sorry. I meant current mainline as seen from git but anything close like v3.15.x, v3.16.y or v3.17.k should be fine (patch applies). -- Ueimor ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware: does the patch below against current kernel make a difference? 2014-10-06 22:13 ` Francois Romieu 2014-10-07 2:50 ` r8168 is needed to enter P-state: Package State 6(pc6)onHaswellhardware Hayes Wang 2014-10-07 10:40 ` r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware Ceriel Jacobs @ 2014-10-08 20:29 ` Ceriel Jacobs 2014-10-08 22:17 ` Francois Romieu 2 siblings, 1 reply; 18+ messages in thread From: Ceriel Jacobs @ 2014-10-08 20:29 UTC (permalink / raw) To: Francois Romieu, Hayes Wang; +Cc: nic_swsd, netdev@vger.kernel.org Sorry for the delay. As newbie I first needed to learn about depmod to restore loading the r8169 module instead of r8168. Now, I am struggling with applying the patch. Even with fuzz 99 applying this patch fails for hunk #2: ~/linux-3.13.0# patch -Np1 -F99 -r - --dry-run <<'END' > index 0921302..b4a3881 100644 ... > rtl_eri_write(tp, 0xb8, ERIAR_MASK_0011, 0x0000, ERIAR_EXGMAC); > END checking file drivers/net/ethernet/realtek/r8169.c Hunk #1 succeeded at 468 with fuzz 3. Hunk #2 FAILED at 5280. 1 out of 2 hunks FAILED ~/linux-3.13.0# grep -nA8 'rtl_eri_write(tp, 0x2f8, ERIAR_MASK_0011, 0x1d8f, ERIAR_EXGMAC)' drivers/net/ethernet/realtek/r8169.c 5274: rtl_eri_write(tp, 0x2f8, ERIAR_MASK_0011, 0x1d8f, ERIAR_EXGMAC); 5275- 5276- RTL_W8(ChipCmd, CmdTxEnb | CmdRxEnb); 5277- RTL_W32(MISC, RTL_R32(MISC) & ~RXDV_GATED_EN); 5278- RTL_W8(MaxTxPacketSize, EarlySize); 5279- 5280- rtl_eri_write(tp, 0xc0, ERIAR_MASK_0011, 0x0000, ERIAR_EXGMAC); 5281- rtl_eri_write(tp, 0xb8, ERIAR_MASK_0011, 0x0000, ERIAR_EXGMAC); 5282- # ls -l $(locate drivers/net/ethernet/realtek/r8169.c) -rw-r--r-- 1 root root 177933 Aug 12 23:42 /home/user/src/linux-3.13.0/drivers/net/ethernet/realtek/r8169.c -rw-r--r-- 1 root root 177933 Aug 24 22:41 /root/linux-3.13.0/drivers/net/ethernet/realtek/r8169.c # md5sum /root/linux-3.13.0/drivers/net/ethernet/realtek/r8169.c 95056b56932b375f8b65a6379009f704 /root/linux-3.13.0/drivers/net/ethernet/realtek/r8169.c Francois, could you help me apply your patch? Francois Romieu schreef op 07-10-14 om 00:13: > Hayes Wang <hayeswang@realtek.com> : >> Francois Romieu [mailto:romieu@fr.zoreil.com] > [...] >> I don't sure if the following information is helpful. Besides, I remember >> the rtl_init_one() would disable it. >> >> http://git.kernel.org/cgit/linux/kernel/git/davem/net-next.git/commit/?id=d64ec841517a25f6d468bde9f67e5b4cffdc67c7 >> >> http://git.kernel.org/cgit/linux/kernel/git/davem/net-next.git/commit/?id=4521e1a94279ce610d3f9b7945c17d581f804242 > > Yes, I did not expect this stuff to stay in geostationary orbit for long :o/ > > Realtek's r8168 driver defaults to CONFIG_ASPM=1 but I guess some users > need to disable it and there's no known pattern / blacklist, right ? > > Ceriel, does the patch below against current kernel make a difference ? > > diff --git a/drivers/net/ethernet/realtek/r8169.c b/drivers/net/ethernet/realtek/r8169.c > index 0921302..b4a3881 100644 > --- a/drivers/net/ethernet/realtek/r8169.c > +++ b/drivers/net/ethernet/realtek/r8169.c > @@ -468,6 +468,7 @@ enum rtl8168_registers { > #define PWM_EN (1 << 22) > #define RXDV_GATED_EN (1 << 19) > #define EARLY_TALLY_EN (1 << 16) > +#define FORCE_CLK (1 << 15) /* force clock request */ > }; > > enum rtl_register_content { > @@ -5279,8 +5280,10 @@ static void rtl_hw_start_8168g_1(struct rtl8169_private *tp) > rtl_eri_write(tp, 0x2f8, ERIAR_MASK_0011, 0x1d8f, ERIAR_EXGMAC); > > RTL_W8(ChipCmd, CmdTxEnb | CmdRxEnb); > - RTL_W32(MISC, RTL_R32(MISC) & ~RXDV_GATED_EN); > + RTL_W32(MISC, (RTL_R32(MISC) | FORCE_CLK) & ~RXDV_GATED_EN); > RTL_W8(MaxTxPacketSize, EarlySize); > + RTL_W8(Config5, RTL_R8(Config5) | ASPM_en); > + RTL_W8(Config2, RTL_R8(Config2) | ClkReqEn); > > rtl_eri_write(tp, 0xc0, ERIAR_MASK_0011, 0x0000, ERIAR_EXGMAC); > rtl_eri_write(tp, 0xb8, ERIAR_MASK_0011, 0x0000, ERIAR_EXGMAC); > ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware: does the patch below against current kernel make a difference? 2014-10-08 20:29 ` r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware: does the patch below against current kernel make a difference? Ceriel Jacobs @ 2014-10-08 22:17 ` Francois Romieu 2014-10-08 22:46 ` Ceriel Jacobs 0 siblings, 1 reply; 18+ messages in thread From: Francois Romieu @ 2014-10-08 22:17 UTC (permalink / raw) To: Ceriel Jacobs; +Cc: Hayes Wang, nic_swsd, netdev@vger.kernel.org Ceriel Jacobs <linux-ide@crashplan.pro> : [...] > Francois, could you help me apply your patch? $ git describe v3.13 $ patch -p1 --dry-run < /tmp/plop checking file drivers/net/ethernet/realtek/r8169.c Hunk #1 succeeded at 467 (offset -1 lines). Hunk #2 succeeded at 5275 (offset -5 lines). $ git rev-list v3.16 -- drivers/net/ethernet/realtek/r8169.c | while read x; do echo $x:$(git cat-file -p $x:drivers/net/ethernet/realtek/r8169.c | md5sum); done | grep 95056b56932b375f8b65a6379009f704 -> oualou Where does your 3.13 source tree come from ? -- Ueimor ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware: does the patch below against current kernel make a difference? 2014-10-08 22:17 ` Francois Romieu @ 2014-10-08 22:46 ` Ceriel Jacobs 2014-10-08 23:26 ` Francois Romieu 0 siblings, 1 reply; 18+ messages in thread From: Ceriel Jacobs @ 2014-10-08 22:46 UTC (permalink / raw) To: Francois Romieu; +Cc: Hayes Wang, nic_swsd, netdev@vger.kernel.org The 3.13 source was installed using "apt-get source linux-source-3.13.0" The patch hunk#2 failing issue is something in the "heredoc" notation (me trying to apply the patch without storing the patch lines as temporary input file). I am now using the temp file without any issue. The next newly blocking issue is this: # make -C /lib/modules/$(uname -r)/build M=$(pwd) modules make: Entering directory `/usr/src/linux-headers-3.17.0-031700rc7-generic' CC [M] /root/linux-3.13.0/drivers/net/ethernet/realtek/8139cp.o CC [M] /root/linux-3.13.0/drivers/net/ethernet/realtek/8139too.o CC [M] /root/linux-3.13.0/drivers/net/ethernet/realtek/atp.o CC [M] /root/linux-3.13.0/drivers/net/ethernet/realtek/r8169.o /root/linux-3.13.0/drivers/net/ethernet/realtek/r8169.c: In function 'rtl_init_one': /root/linux-3.13.0/drivers/net/ethernet/realtek/r8169.c:7127:2: error: implicit declaration of function 'SET_ETHTOOL_OPS' [-Werror=implicit-function-declaration] SET_ETHTOOL_OPS(dev, &rtl8169_ethtool_ops); ^ cc1: some warnings being treated as errors make[1]: *** [/root/linux-3.13.0/drivers/net/ethernet/realtek/r8169.o] Error 1 make: *** [_module_/root/linux-3.13.0/drivers/net/ethernet/realtek] Error 2 make: Leaving directory `/usr/src/linux-headers-3.17.0-031700rc7-generic' Any new suggestion how to honour your patch/test request? Francois Romieu schreef op 09-10-14 om 00:17: > Ceriel Jacobs <linux-ide@crashplan.pro> : > [...] >> Francois, could you help me apply your patch? > > $ git describe > v3.13 > $ patch -p1 --dry-run < /tmp/plop > checking file drivers/net/ethernet/realtek/r8169.c > Hunk #1 succeeded at 467 (offset -1 lines). > Hunk #2 succeeded at 5275 (offset -5 lines). > > $ git rev-list v3.16 -- drivers/net/ethernet/realtek/r8169.c | while read x; do echo $x:$(git cat-file -p $x:drivers/net/ethernet/realtek/r8169.c | md5sum); done | grep 95056b56932b375f8b65a6379009f704 > > -> oualou > > Where does your 3.13 source tree come from ? > ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware: does the patch below against current kernel make a difference? 2014-10-08 22:46 ` Ceriel Jacobs @ 2014-10-08 23:26 ` Francois Romieu 2014-10-09 12:02 ` Ceriel Jacobs 0 siblings, 1 reply; 18+ messages in thread From: Francois Romieu @ 2014-10-08 23:26 UTC (permalink / raw) To: Ceriel Jacobs; +Cc: Hayes Wang, nic_swsd, netdev@vger.kernel.org Ceriel Jacobs <linux-ide@crashplan.pro> : > The 3.13 source was installed using "apt-get source linux-source-3.13.0" > > The patch hunk#2 failing issue is something in the "heredoc" notation (me > trying to apply the patch without storing the patch lines as temporary input > file). I am now using the temp file without any issue. > > The next newly blocking issue is this: > > # make -C /lib/modules/$(uname -r)/build M=$(pwd) modules > make: Entering directory `/usr/src/linux-headers-3.17.0-031700rc7-generic' You are mixing 3.13 and 3.17. Try 'uname -r' alone. Got it ? Please get some pristine 3.17 sources - they're available on www.kernel.org - and try again. -- Ueimor ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware: does the patch below against current kernel make a difference? 2014-10-08 23:26 ` Francois Romieu @ 2014-10-09 12:02 ` Ceriel Jacobs 2014-10-09 22:14 ` Francois Romieu 0 siblings, 1 reply; 18+ messages in thread From: Ceriel Jacobs @ 2014-10-09 12:02 UTC (permalink / raw) To: Francois Romieu; +Cc: Hayes Wang, nic_swsd, netdev@vger.kernel.org Francois Romieu schreef op 09-10-14 om 01:26: > You are mixing 3.13 and 3.17. Try 'uname -r' alone. Got it ? I think I have got it. Francois Romieu schreef op 07-10-14 om 00:13: > Ceriel, does the patch below against current kernel make a difference? Old r8169 "powertop --auto-tune && powertop" result: C2 (pc2) 26.1% | | C3 (pc3) 73.6% | C3 (cc3) 1.6% | C3-HSW 1.6% 108.0 ms C6 (pc6) 0.0% | C6 (cc6) 98.3% | C6-HSW 98.3% 194.9 ms --- C2 (pc2) 0.0% | | C3 (pc3) 99.4% | C3 (cc3) 0.0% | C3-HSW 0.0% 0.0 ms C6 (pc6) 0.0% | C6 (cc6) 99.6% | C6-HSW 99.6% 237.4 ms --- New r8169 "powertop" result (even without --auto-tune): C2 (pc2) 0.0% | | C3 (pc3) 9.9% | C3 (cc3) 0.7% | C3-HSW 0.7% 16.4 ms C6 (pc6) 89.9% | C6 (cc6) 99.2% | C6-HSW 99.2% 223.2 ms --- ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware: does the patch below against current kernel make a difference? 2014-10-09 12:02 ` Ceriel Jacobs @ 2014-10-09 22:14 ` Francois Romieu 2014-10-10 11:09 ` r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware: does the patch below against current kernel make a difference? Yes, it does Ceriel Jacobs 0 siblings, 1 reply; 18+ messages in thread From: Francois Romieu @ 2014-10-09 22:14 UTC (permalink / raw) To: Ceriel Jacobs; +Cc: Hayes Wang, nic_swsd, netdev@vger.kernel.org Ceriel Jacobs <linux-ide@crashplan.pro> : > Francois Romieu schreef op 07-10-14 om 00:13: > > Ceriel, does the patch below against current kernel make a difference? [...] > New r8169 "powertop" result (even without --auto-tune): > C2 (pc2) 0.0% | | > C3 (pc3) 9.9% | C3 (cc3) 0.7% | C3-HSW 0.7% 16.4 ms > C6 (pc6) 89.9% | C6 (cc6) 99.2% | C6-HSW 99.2% 223.2 ms > --- Fine (almost: I hope that ASPM was enabled from bios or during boot behind your back). Remember your "lspci -nnkvv -s 03:00.0" ? 03:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 11) [...] Capabilities: [70] Express (v2) Endpoint, MSI 01 DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <512ns, L1 <64us ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset- DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported- RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop- MaxPayload 128 bytes, MaxReadReq 4096 bytes DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr+ TransPend- LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L0s L1, Exit Latency L0s unlimited, L1 <64us ClockPM+ Surprise- LLActRep- BwNot- LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- CommClk+ ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt- It should now look like: [...] LnkCtl: ASPM L1 Enabled; RCB 64 bytes Disabled- CommClk+ Let's temporarily disable it and see if powertop notices a difference. <full disclosure> "Capabilities: [70]" above gives you the offset of the relevant registers: # lspci -xxx -s 03:00.0 [...] 70: .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ^^ -> "[70]" You are interested in the Link Control register, aka PCI_EXP_LNKCTL in /usr/include/pci/header.h (devel part of pciutils) or kernel's include/uapi/linux/pci_regs.h. It's 16 bytes further, thus [...] 70: .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 80: 42 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ^^ 0x42 matches "LnkCtl: ASPM L1 Enabled; RCB 64 bytes Disabled- CommClk+ ExtSynch-" built from above. There may be differences but the 3 lower weight binary digits in 0x42 encode ASPM control (0=nada, 1=L0, 2=L1, see PCI_EXP_LNKCTL_ASPxyz in include/uapi/linux/pci_regs.h). Mask these out (0x42 & ~0x03) and feed the resulting value back into the Link Control register: # setpci -s 03:00.0 CAP_EXP+10.b=0x40 (CAP_EXP is pciutils's alias for the PCI Express capability block, see PCI_CAP_ID_EXP in kernel's include/uapi/linux/pci_regs.h) If you are not too sure about the 0x40 value, you can retrieve it with lspci and an unpatched r8169 driver. </full disclosure> If I have understood Hayes correctly and he got my question right, lspci should now tell that ASPM is disabled. C6 should not be reached anymore. ASPM could thus be enabled unconditionally at the driver level, then controled through the PCI config registers. Kernel r8169 driver would thus protect polar bears as Realtek's own r8168 driver already does. I can't exclude that it will fail miserably in a firework of smelly smoke though. -- Ueimor ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware: does the patch below against current kernel make a difference? Yes, it does 2014-10-09 22:14 ` Francois Romieu @ 2014-10-10 11:09 ` Ceriel Jacobs 0 siblings, 0 replies; 18+ messages in thread From: Ceriel Jacobs @ 2014-10-10 11:09 UTC (permalink / raw) To: Francois Romieu; +Cc: Hayes Wang, nic_swsd, netdev@vger.kernel.org ASPM is enabled in the BIOS as far as possible. ASPM is also enabled using kernel parameters: 1. pcie_aspm.policy=powersave 2. pcie_aspm=force Despite the result for 03:00.0 (and 2 other PCIe devices) is: LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- CommClk+ I have filed a bug report for that at: https://bugzilla.kernel.org/show_bug.cgi?id=85621 In my testing before, I did manually enable L0s L1 ASPM after login prompt using: # setpci -s 03:00.0 0x80.B=0x43 (also for 3 other ASPM PCIe devices) ============================= Now back to your Realtek test request ============================= For your information: I am running all testing remote via SSH over the Realtek NIc. ======= L0s and L1 = PC6 ======= # setpci -s 03:00.0 0x80.B=0x43 # lspci -vvvv -s 03:00.0 | grep LnkCtl: LnkCtl: ASPM L0s L1 Enabled; RCB 64 bytes Disabled- ... PC6 reached in 1 powertop screen update (5 second interval) C3 (pc3) 21.0% | C3 (cc3) 0.0% | C3-HSW 0.0% 0.0 ms C6 (pc6) 76.0% | C6 (cc6) 99.9% | C6-HSW 99.9% 198.1 ms ======= L1 only = no PC6 ======= # setpci -s 03:00.0 0x80.B=0x42 LnkCtl: ASPM L1 Enabled; RCB 64 bytes Disabled- CommClk+ C3 (pc3) 99.8% | C3 (cc3) 0.0% | C3-HSW 0.0% 0.0 ms C6 (pc6) 0.0% | C6 (cc6) 99.9% | C6-HSW 100.0% 206.4 ms ======= L0s only = PC6 !! ======= # setpci -s 03:00.0 0x80.B=0x41 LnkCtl: ASPM L0s Enabled; RCB 64 bytes Disabled- ... C3 (pc3) 10.6% | C3 (cc3) 0.0% | C3-HSW 0.0% 0.0 ms C6 (pc6) 89.1% | C6 (cc6) 99.9% | C6-HSW 99.9% 210.7 ms ======= Disabled = no PC6 ======= # setpci -s 03:00.0 0x80.B=0x40 LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- CommClk+ C3 (pc3) 99.8% | C3 (cc3) 0.0% | C3-HSW 0.0% 0.0 ms C6 (pc6) 0.0% | C6 (cc6) 99.9% | C6-HSW 99.9% 230.1 ms Now I am wondering whether it is by design or a bug that PC6 is not reached when only L1 ASPM is activated An applause for: 1. saving "polar bears", 2. letting me test a little more, 3. realtime behavior changing (no module unloading and loading to active ASPM, just set the config space registers). Francois Romieu schreef op 10-10-14 om 00:14: > Ceriel Jacobs <linux-ide@crashplan.pro> : >> Francois Romieu schreef op 07-10-14 om 00:13: >>> Ceriel, does the patch below against current kernel make a difference? > [...] >> New r8169 "powertop" result (even without --auto-tune): >> C2 (pc2) 0.0% | | >> C3 (pc3) 9.9% | C3 (cc3) 0.7% | C3-HSW 0.7% 16.4 ms >> C6 (pc6) 89.9% | C6 (cc6) 99.2% | C6-HSW 99.2% 223.2 ms >> --- > > Fine (almost: I hope that ASPM was enabled from bios or during boot > behind your back). > > Remember your "lspci -nnkvv -s 03:00.0" ? > > 03:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 11) > [...] > Capabilities: [70] Express (v2) Endpoint, MSI 01 > DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <512ns, L1 <64us > ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset- > DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported- > RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop- > MaxPayload 128 bytes, MaxReadReq 4096 bytes > DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr+ TransPend- > LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L0s L1, Exit Latency L0s unlimited, L1 <64us > ClockPM+ Surprise- LLActRep- BwNot- > LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- CommClk+ > ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt- > > It should now look like: > [...] > LnkCtl: ASPM L1 Enabled; RCB 64 bytes Disabled- CommClk+ > > Let's temporarily disable it and see if powertop notices a difference. > > <full disclosure> > > "Capabilities: [70]" above gives you the offset of the relevant registers: > # lspci -xxx -s 03:00.0 > [...] > 70: .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. > ^^ -> "[70]" > > You are interested in the Link Control register, aka PCI_EXP_LNKCTL in > /usr/include/pci/header.h (devel part of pciutils) or kernel's > include/uapi/linux/pci_regs.h. It's 16 bytes further, thus > [...] > 70: .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. > 80: 42 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. > ^^ > > 0x42 matches "LnkCtl: ASPM L1 Enabled; RCB 64 bytes Disabled- CommClk+ > ExtSynch-" built from above. There may be differences but the 3 lower > weight binary digits in 0x42 encode ASPM control (0=nada, 1=L0, 2=L1, > see PCI_EXP_LNKCTL_ASPxyz in include/uapi/linux/pci_regs.h). Mask these > out (0x42 & ~0x03) and feed the resulting value back into the Link > Control register: > > # setpci -s 03:00.0 CAP_EXP+10.b=0x40 > > (CAP_EXP is pciutils's alias for the PCI Express capability block, see > PCI_CAP_ID_EXP in kernel's include/uapi/linux/pci_regs.h) > > If you are not too sure about the 0x40 value, you can retrieve it with > lspci and an unpatched r8169 driver. > > </full disclosure> > > If I have understood Hayes correctly and he got my question right, lspci > should now tell that ASPM is disabled. C6 should not be reached anymore. > > ASPM could thus be enabled unconditionally at the driver level, then > controled through the PCI config registers. Kernel r8169 driver would > thus protect polar bears as Realtek's own r8168 driver already does. > > I can't exclude that it will fail miserably in a firework of smelly > smoke though. > ^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2014-10-10 11:09 UTC | newest] Thread overview: 18+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-09-30 23:09 r8168 is needed to enter P-state: Package State 6 (pc6) on Haswell hardware Ceriel Jacobs 2014-10-05 16:59 ` Francois Romieu 2014-10-05 22:22 ` Ceriel Jacobs 2014-10-06 3:06 ` r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware Hayes Wang 2014-10-06 22:13 ` Francois Romieu 2014-10-07 2:50 ` r8168 is needed to enter P-state: Package State 6(pc6)onHaswellhardware Hayes Wang 2014-10-07 20:17 ` Francois Romieu 2014-10-08 2:35 ` r8168 is needed to enter P-state: Package State6(pc6)onHaswellhardware Hayes Wang 2014-10-08 11:40 ` Ceriel Jacobs 2014-10-07 10:40 ` r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware Ceriel Jacobs 2014-10-07 20:16 ` Francois Romieu 2014-10-08 20:29 ` r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware: does the patch below against current kernel make a difference? Ceriel Jacobs 2014-10-08 22:17 ` Francois Romieu 2014-10-08 22:46 ` Ceriel Jacobs 2014-10-08 23:26 ` Francois Romieu 2014-10-09 12:02 ` Ceriel Jacobs 2014-10-09 22:14 ` Francois Romieu 2014-10-10 11:09 ` r8168 is needed to enter P-state: Package State 6 (pc6)onHaswell hardware: does the patch below against current kernel make a difference? Yes, it does Ceriel Jacobs
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).