lkml.org 
[lkml]   [2008]   [Jul]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: [PATCH] padlock: don't whinge when loaded on a non-VIA cpu
On Tue, Jul 08, 2008 at 07:52:11PM +0100, Alan Cox wrote:
> On Tue, 8 Jul 2008 15:04:27 -0400
> Kyle McMartin <kmcmartin@redhat.com> wrote:
>
> > I've become seriously tired of seeing these messages on every machine
> > running an i386 Fedora kernel...
> >
> > padlock: VIA PadLock not detected.
> > padlock: VIA PadLock Hash Engine not detected.
> >
> > So let's eliminate them!
>
> Silly question - but why are they being printed even for older VIA
> processors. We don't see the following on boot
>
> i386: no CMOV instruction detected
> i386: no SSE3 instruction detected
>
> So I think your patch should be a bit more brutal ;)
>

I completely agree, but I don't know anything about Centaur cpuids...

Something like this might suffice:

diff --git a/drivers/crypto/padlock-aes.c b/drivers/crypto/padlock-aes.c
index bb30eb9..0192de4 100644
--- a/drivers/crypto/padlock-aes.c
+++ b/drivers/crypto/padlock-aes.c
@@ -384,6 +384,10 @@ static int __init padlock_init(void)
{
int ret;

+ if (!((boot_cpu_data.x86_vendor == X86_VENDOR_CENTAUR) &&
+ (boot_cpu_data.x86 >= 6))) /* only on VIA C3 and above */
+ return -ENODEV;
+
if (!cpu_has_xcrypt) {
printk(KERN_ERR PFX "VIA PadLock not detected.\n");
return -ENODEV;
diff --git a/drivers/crypto/padlock-sha.c b/drivers/crypto/padlock-sha.c
index c666b4e..70ec14b 100644
--- a/drivers/crypto/padlock-sha.c
+++ b/drivers/crypto/padlock-sha.c
@@ -253,6 +253,10 @@ static int __init padlock_init(void)
{
int rc = -ENODEV;

+ if (!((boot_cpu_data.x86_vendor == X86_VENDOR_CENTAUR) &&
+ (boot_cpu_data.x86 >= 6))) /* only on VIA C3 and above */
+ return -ENODEV;
+
if (!cpu_has_phe) {
printk(KERN_ERR PFX "VIA PadLock Hash Engine not detected.\n");
return -ENODEV;

\
 
 \ /
  Last update: 2008-07-08 21:41    [W:0.054 / U:17.544 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site