lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <E9954878DD1FB34FAE5187FB88C58A350198F2C4CD@orsmsx506.amr.corp.intel.com>
Date:	Thu, 23 Jun 2011 08:49:39 -0700
From:	"Guy, Wey-Yi W" <wey-yi.w.guy@...el.com>
To:	"John W. Linville" <linville@...driver.com>
CC:	Evgeni Golov <sargentd@...-welt.net>,
	"ilw@...ux.intel.com" <ilw@...ux.intel.com>,
	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: RE: [PATCH] iwlagn: fix *_UCODE_API_MAX output in the firmware field



Wey-Yi Guy
Intel Corporation
2111 N.E. 25th Avenue  M/S JF3-308                 
Hillsboro OR 97124-5961
USA
Work Phone: 503-264-6023 (OR)
Cell Phone: 503-329-8410
Email: wey-yi.w.guy@...el.com
 

-----Original Message-----
From: John W. Linville [mailto:linville@...driver.com] 
Sent: Thursday, June 23, 2011 8:35 AM
To: Guy, Wey-Yi W
Cc: Evgeni Golov; ilw@...ux.intel.com; linux-kernel@...r.kernel.org
Subject: Re: [PATCH] iwlagn: fix *_UCODE_API_MAX output in the firmware field

On Thu, Jun 23, 2011 at 07:49:22AM -0700, Guy, Wey-Yi wrote:
> On Thu, 2011-06-23 at 07:31 -0700, Evgeni Golov wrote:
> > On 06/12/2011 04:44 PM, Guy, Wey-Yi wrote:
> > > Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@...el.com>
> > > 
> > > Good catch, thank you very much
> > 
> > Ping, any plans on merging this? :)
> > 
> 
> John, could you merge?
> 
> Thanks
> Wey

Could someone send me the patch?

John
-- 
John W. Linville		Someday the world will need a hero, and you
linville@...driver.com			might be all we have.  Be ready.

Received: from orsmsx151.amr.corp.intel.com (10.22.226.38) by
 orsmsx601.amr.corp.intel.com (10.22.226.213) with Microsoft SMTP Server (TLS)
 id 8.2.255.0; Sun, 12 Jun 2011 05:35:13 -0700
Received: from rrsmsx602.amr.corp.intel.com (10.31.0.33) by
 ORSMSX151.amr.corp.intel.com (10.22.226.38) with Microsoft SMTP Server (TLS)
 id 14.1.289.1; Sun, 12 Jun 2011 05:35:12 -0700
Received: from azsmga001.ch.intel.com (10.2.17.19) by rrsmsx602-1.rr.intel.com
 (10.31.0.33) with Microsoft SMTP Server id 8.2.255.0; Sun, 12 Jun 2011
 06:35:12 -0600
Received: from azsmga101.ch.intel.com ([10.2.16.36])  by
 azsmga001-1.ch.intel.com with ESMTP; 12 Jun 2011 05:35:11 -0700
Received: from chi.die-welt.net ([84.246.123.210])  by mga03.intel.com with
 ESMTP; 12 Jun 2011 05:35:10 -0700
Received: from localhost (localhost [127.0.0.1])	by chi.die-welt.net (Postfix)
 with ESMTP id 471E363E95;	Sun, 12 Jun 2011 14:35:07 +0200 (CEST)
Received: from chi.die-welt.net ([127.0.0.1])	by localhost (chi.die-welt.net
 [127.0.0.1]) (amavisd-new, port 10024)	with ESMTP id BnheL0oqLQVW; Sun, 12
 Jun 2011 14:35:05 +0200 (CEST)
Received: from dorei.kerker.die-welt.net (ip-62-143-231-6.unitymediagroup.de
 [62.143.231.6])	by chi.die-welt.net (Postfix) with ESMTPSA id 538E063E93;
	Sun, 12 Jun 2011 14:35:05 +0200 (CEST)
From: Evgeni Golov <sargentd@...-welt.net>
To: "Guy, Wey-Yi W" <wey-yi.w.guy@...el.com>, "ilw@...ux.intel.com"
	<ilw@...ux.intel.com>
CC: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>, Evgeni
 Golov <sargentd@...-welt.net>
Date: Sun, 12 Jun 2011 05:34:31 -0700
Subject: [PATCH] iwlagn: fix *_UCODE_API_MAX output in the firmware field
Thread-Topic: [PATCH] iwlagn: fix *_UCODE_API_MAX output in the firmware
 field
Thread-Index: Acwo/S0B8/MdOAW+QM6VHRNoUd7g0Q==
Message-ID: <1307882071-767-1-git-send-email-sargentd@...-welt.net>
X-MS-Exchange-Organization-AuthAs: Anonymous
X-MS-Exchange-Organization-AuthSource: rrsmsx602.amr.corp.intel.com
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ironport-av: E=Sophos;i="4.65,354,1304319600";
    d="scan'208";a="733999533"
x-ironport-anti-spam-filtered: true
x-ironport-anti-spam-result: Av0EADax9E1U9nvS/2dsb2JhbABSpk53yQiGJASZFod9
x-virus-scanned: Debian amavisd-new at chi.die-welt.net
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0

Currently (3.0-rc2), modinfo iwlagn shows:
    firmware:       iwlwifi-5150-IWL5150_UCODE_API_MAX.ucode
    firmware:       iwlwifi-5000-IWL5000_UCODE_API_MAX.ucode
    firmware:       iwlwifi-6000g2b-IWL6000G2_UCODE_API_MAX.ucode
    firmware:       iwlwifi-6000g2a-IWL6000G2_UCODE_API_MAX.ucode
    firmware:       iwlwifi-6050-IWL6050_UCODE_API_MAX.ucode
    firmware:       iwlwifi-6000-IWL6000_UCODE_API_MAX.ucode
    firmware:       iwlwifi-100-IWL100_UCODE_API_MAX.ucode
    firmware:       iwlwifi-1000-IWL1000_UCODE_API_MAX.ucode
    firmware:       iwlwifi-105-IWL105_UCODE_API_MAX.ucode
    firmware:       iwlwifi-2030-IWL2030_UCODE_API_MAX.ucode
    firmware:       iwlwifi-2000-IWL2000_UCODE_API_MAX.ucode

which is obviously wrong, the user should not see the *_UCODE_API_MAX
macros but the actual ucode API versions here.

The problem are the
    #define *_MODULE_FIRMWARE(api) *_FW_PRE #api ".ucode"
which do not expand api correctly (because this is a macro itself).

Fixed by using __stringify() from linux/stringify.h.

Further information about macro stringification can be found here:
    http://gcc.gnu.org/onlinedocs/cpp/Stringification.html

Signed-off-by: Evgeni Golov <sargentd@...-welt.net>
---
 drivers/net/wireless/iwlwifi/iwl-1000.c |    5 +++--
 drivers/net/wireless/iwlwifi/iwl-2000.c |    7 ++++---
 drivers/net/wireless/iwlwifi/iwl-5000.c |    5 +++--
 drivers/net/wireless/iwlwifi/iwl-6000.c |    9 +++++----
 4 files changed, 15 insertions(+), 11 deletions(-)

diff --git a/drivers/net/wireless/iwlwifi/iwl-1000.c b/drivers/net/wireless=
/iwlwifi/iwl-1000.c
index 61d4a11..2a88e73 100644
--- a/drivers/net/wireless/iwlwifi/iwl-1000.c
+++ b/drivers/net/wireless/iwlwifi/iwl-1000.c
@@ -36,6 +36,7 @@
 #include <net/mac80211.h>
 #include <linux/etherdevice.h>
 #include <asm/unaligned.h>
+#include <linux/stringify.h>

 #include "iwl-eeprom.h"
 #include "iwl-dev.h"
@@ -55,10 +56,10 @@
 #define IWL100_UCODE_API_MIN 5

 #define IWL1000_FW_PRE "iwlwifi-1000-"
-#define IWL1000_MODULE_FIRMWARE(api) IWL1000_FW_PRE #api ".ucode"
+#define IWL1000_MODULE_FIRMWARE(api) IWL1000_FW_PRE __stringify(api) ".uco=
de"

 #define IWL100_FW_PRE "iwlwifi-100-"
-#define IWL100_MODULE_FIRMWARE(api) IWL100_FW_PRE #api ".ucode"
+#define IWL100_MODULE_FIRMWARE(api) IWL100_FW_PRE __stringify(api) ".ucode=
"


 /*
diff --git a/drivers/net/wireless/iwlwifi/iwl-2000.c b/drivers/net/wireless=
/iwlwifi/iwl-2000.c
index 86feec8..1044309 100644
--- a/drivers/net/wireless/iwlwifi/iwl-2000.c
+++ b/drivers/net/wireless/iwlwifi/iwl-2000.c
@@ -36,6 +36,7 @@
 #include <net/mac80211.h>
 #include <linux/etherdevice.h>
 #include <asm/unaligned.h>
+#include <linux/stringify.h>

 #include "iwl-eeprom.h"
 #include "iwl-dev.h"
@@ -58,13 +59,13 @@
 #define IWL105_UCODE_API_MIN 5

 #define IWL2030_FW_PRE "iwlwifi-2030-"
-#define IWL2030_MODULE_FIRMWARE(api) IWL2030_FW_PRE #api ".ucode"
+#define IWL2030_MODULE_FIRMWARE(api) IWL2030_FW_PRE __stringify(api) ".uco=
de"

 #define IWL2000_FW_PRE "iwlwifi-2000-"
-#define IWL2000_MODULE_FIRMWARE(api) IWL2000_FW_PRE #api ".ucode"
+#define IWL2000_MODULE_FIRMWARE(api) IWL2000_FW_PRE __stringify(api) ".uco=
de"

 #define IWL105_FW_PRE "iwlwifi-105-"
-#define IWL105_MODULE_FIRMWARE(api) IWL105_FW_PRE #api ".ucode"
+#define IWL105_MODULE_FIRMWARE(api) IWL105_FW_PRE __stringify(api) ".ucode=
"

 static void iwl2000_set_ct_threshold(struct iwl_priv *priv)
 {
diff --git a/drivers/net/wireless/iwlwifi/iwl-5000.c b/drivers/net/wireless=
/iwlwifi/iwl-5000.c
index a70b8cf..168153d 100644
--- a/drivers/net/wireless/iwlwifi/iwl-5000.c
+++ b/drivers/net/wireless/iwlwifi/iwl-5000.c
@@ -37,6 +37,7 @@
 #include <net/mac80211.h>
 #include <linux/etherdevice.h>
 #include <asm/unaligned.h>
+#include <linux/stringify.h>

 #include "iwl-eeprom.h"
 #include "iwl-dev.h"
@@ -57,10 +58,10 @@
 #define IWL5150_UCODE_API_MIN 1

 #define IWL5000_FW_PRE "iwlwifi-5000-"
-#define IWL5000_MODULE_FIRMWARE(api) IWL5000_FW_PRE #api ".ucode"
+#define IWL5000_MODULE_FIRMWARE(api) IWL5000_FW_PRE __stringify(api) ".uco=
de"

 #define IWL5150_FW_PRE "iwlwifi-5150-"
-#define IWL5150_MODULE_FIRMWARE(api) IWL5150_FW_PRE #api ".ucode"
+#define IWL5150_MODULE_FIRMWARE(api) IWL5150_FW_PRE __stringify(api) ".uco=
de"

 /* NIC configuration for 5000 series */
 static void iwl5000_nic_config(struct iwl_priv *priv)
diff --git a/drivers/net/wireless/iwlwifi/iwl-6000.c b/drivers/net/wireless=
/iwlwifi/iwl-6000.c
index fda6fe0..443a191 100644
--- a/drivers/net/wireless/iwlwifi/iwl-6000.c
+++ b/drivers/net/wireless/iwlwifi/iwl-6000.c
@@ -36,6 +36,7 @@
 #include <net/mac80211.h>
 #include <linux/etherdevice.h>
 #include <asm/unaligned.h>
+#include <linux/stringify.h>

 #include "iwl-eeprom.h"
 #include "iwl-dev.h"
@@ -58,16 +59,16 @@
 #define IWL6000G2_UCODE_API_MIN 4

 #define IWL6000_FW_PRE "iwlwifi-6000-"
-#define IWL6000_MODULE_FIRMWARE(api) IWL6000_FW_PRE #api ".ucode"
+#define IWL6000_MODULE_FIRMWARE(api) IWL6000_FW_PRE __stringify(api) ".uco=
de"

 #define IWL6050_FW_PRE "iwlwifi-6050-"
-#define IWL6050_MODULE_FIRMWARE(api) IWL6050_FW_PRE #api ".ucode"
+#define IWL6050_MODULE_FIRMWARE(api) IWL6050_FW_PRE __stringify(api) ".uco=
de"

 #define IWL6005_FW_PRE "iwlwifi-6000g2a-"
-#define IWL6005_MODULE_FIRMWARE(api) IWL6005_FW_PRE #api ".ucode"
+#define IWL6005_MODULE_FIRMWARE(api) IWL6005_FW_PRE __stringify(api) ".uco=
de"

 #define IWL6030_FW_PRE "iwlwifi-6000g2b-"
-#define IWL6030_MODULE_FIRMWARE(api) IWL6030_FW_PRE #api ".ucode"
+#define IWL6030_MODULE_FIRMWARE(api) IWL6030_FW_PRE __stringify(api) ".uco=
de"

 static void iwl6000_set_ct_threshold(struct iwl_priv *priv)
 {
--
1.7.2.5


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ