Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id ; Wed, 18 Jul 2001 06:46:28 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id ; Wed, 18 Jul 2001 06:46:18 -0400 Received: from unamed.infotel.bg ([212.39.68.18]:47878 "EHLO l.himel.bg") by vger.kernel.org with ESMTP id ; Wed, 18 Jul 2001 06:46:16 -0400 Date: Wed, 18 Jul 2001 13:48:00 +0300 (EEST) From: Julian Anastasov To: linux-kernel Subject: cpuid_eax damages registers (2.4.7pre7) Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Hello, I don't know whether cpuid_eax (2.4.7pre) should preserve the registers changed from cpuid but I have an oops on boot with 2.4.7pre7 in squash_the_stupid_serial_number where cpuid_eax changes ebx and the parameter "c" is loaded with "Genu". The following change fixes the problem: from: c->cpuid_level = cpuid_eax(0); to: unsigned int dummy; cpuid(0, &c->cpuid_level, &dummy, &dummy, &dummy); but I'm not sure in the definitions of these cpuid_XXX funcs. I see that they are used at many places. IMO, they have to preserve the registers. Regards -- Julian Anastasov - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/