Project

General

Profile

Bug #9251

p123_pcbe is useless and can be removed

Added by Yuri Pankov over 1 year ago. Updated over 1 year ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Category:
kernel
Start date:
2018-03-07
Due date:
% Done:

100%

Estimated time:
Difficulty:
Medium
Tags:
needs-triage

Description

Looking at x86_archext.h, I started wondering what the following defines are about:

#define P5_MCHADDR      0x0
#define P5_CESR         0x11
#define P5_CTR0         0x12
#define P5_CTR1         0x13

#define K5_MCHADDR      0x0
#define K5_MCHTYPE      0x01
#define K5_TSC          0x10
#define K5_TR12         0x12

#define REG_MC0_CTL             0x400
#define REG_MC5_MISC            0x417
#define REG_PERFCTR0            0xc1
#define REG_PERFCTR1            0xc2

#define REG_PERFEVNT0           0x186
#define REG_PERFEVNT1           0x187

It turns out that they are used only by usr/src/uts/intel/pcbe/p123_pbce.c, which is useless as we no longer support 32bit CPUs, so both the defines and code/module itself can be removed.

History

#1

Updated by Joshua Clulow over 1 year ago

Note that p123_pcbe is shipped as pcbe.GenuineIntel.6 and pcbe.GenuineIntel.5. These modules are loaded by kcpc_init(), which calls kcpc_hw_load_pcbe(). In the latter function, we pass the vendor prefix (i.e., GenuineIntel and the family (5 or 6).

Looking at the list of Intel microprocessors on Wikipedia, it does indeed seem that Family 5 was the (32-bit) Pentium and that Family 6 was predominantly 32-bit as well.

This change leaves behind core_pcbe which handles later Family 6 chips, which were 64-bit.

#2

Updated by Electric Monk over 1 year ago

  • Status changed from New to Closed
  • % Done changed from 0 to 100

git commit b13f152e9f7bf4b4426892b07a35568bd4d9e17f

commit  b13f152e9f7bf4b4426892b07a35568bd4d9e17f
Author: Yuri Pankov <yuri.pankov@nexenta.com>
Date:   2018-03-11T06:46:05.000Z

    9251 p123_pcbe is useless and can be removed
    Reviewed by: Toomas Soome <tsoome@me.com>
    Reviewed by: Peter Tribble <peter.tribble@gmail.com>
    Approved by: Joshua M. Clulow <josh@sysmgr.org>

Also available in: Atom PDF