Openembedded Core Discussions
 help / color / mirror / Atom feed
* [PATCH 0/1] A QA_check fix for x32 kernel module packages
@ 2014-03-04 18:27 nitin.a.kamble
  2014-03-04 18:28 ` [PATCH 1/1] QA_check: special case kernel modules for x32 targets nitin.a.kamble
  0 siblings, 1 reply; 4+ messages in thread
From: nitin.a.kamble @ 2014-03-04 18:27 UTC (permalink / raw)
  To: saul.wold, Openembedded-core

From: Nitin A Kamble <nitin.a.kamble@intel.com>


The kernel modules for x32 target are 64bit, but the QA_check was expecting
them to be 32bit. The QA_check is fixed in this commit to avoid false errors.

Thanks,
Nitin

The following changes since commit 83b3e3e8e34a2512bcb1fe298715ece58c83dca3:

  package_manager.py: RpmPM: don't add smart channel if already added (2014-03-03 15:05:32 -0800)

are available in the git repository at:

  git://git.yoctoproject.org/poky-contrib nitin/fix1
  http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=nitin/fix1

Nitin A Kamble (1):
  QA_check: special case kernel modules for x32 targets

 meta/classes/insane.bbclass | 4 ++--
 meta/classes/module.bbclass | 1 +
 2 files changed, 3 insertions(+), 2 deletions(-)

-- 
1.8.1.4



^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH 1/1] QA_check: special case kernel modules for x32 targets
  2014-03-04 18:27 [PATCH 0/1] A QA_check fix for x32 kernel module packages nitin.a.kamble
@ 2014-03-04 18:28 ` nitin.a.kamble
  2014-03-04 21:38   ` Phil Blundell
  0 siblings, 1 reply; 4+ messages in thread
From: nitin.a.kamble @ 2014-03-04 18:28 UTC (permalink / raw)
  To: saul.wold, Openembedded-core

From: Nitin A Kamble <nitin.a.kamble@intel.com>

The Kernel module packages for x32 target have 64 bit binaries, which
breaks the QA_check expecting all the packages to be 32bit.

Make a special case for kernel module packages for x32 targets, to avoid
this false error.

Fixes Bug:
[YOCTO #5903]

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 meta/classes/insane.bbclass | 4 ++--
 meta/classes/module.bbclass | 1 +
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
index cf00e12..4d3916d 100644
--- a/meta/classes/insane.bbclass
+++ b/meta/classes/insane.bbclass
@@ -443,11 +443,11 @@ def package_qa_check_arch(path,name,d, elf, messages):
 
     # Check the architecture and endiannes of the binary
     if not ((machine == elf.machine()) or \
-        ("virtual/kernel" in provides) and (target_os == "linux-gnux32")):
+        (("virtual/kernel" in provides) or (KERNEL_MODULE_RECIPE == "1")) and (target_os == "linux-gnux32")):
         messages.append("Architecture did not match (%d to %d) on %s" % \
                  (machine, elf.machine(), package_qa_clean_path(path,d)))
     elif not ((bits == elf.abiSize()) or  \
-        ("virtual/kernel" in provides) and (target_os == "linux-gnux32")):
+        (("virtual/kernel" in provides) or (KERNEL_MODULE_RECIPE == "1")) and (target_os == "linux-gnux32")):
         messages.append("Bit size did not match (%d to %d) %s on %s" % \
                  (bits, elf.abiSize(), bpn, package_qa_clean_path(path,d)))
     elif not littleendian == elf.isLittleEndian():
diff --git a/meta/classes/module.bbclass b/meta/classes/module.bbclass
index ad6f7af..de1d97b 100644
--- a/meta/classes/module.bbclass
+++ b/meta/classes/module.bbclass
@@ -1,4 +1,5 @@
 DEPENDS += "virtual/kernel"
+KERNEL_MODULE_RECIPE = "1"
 
 inherit module-base kernel-module-split
 
-- 
1.8.1.4



^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH 1/1] QA_check: special case kernel modules for x32 targets
  2014-03-04 18:28 ` [PATCH 1/1] QA_check: special case kernel modules for x32 targets nitin.a.kamble
@ 2014-03-04 21:38   ` Phil Blundell
  2014-03-04 22:26     ` Kamble, Nitin A
  0 siblings, 1 reply; 4+ messages in thread
From: Phil Blundell @ 2014-03-04 21:38 UTC (permalink / raw)
  To: nitin.a.kamble; +Cc: Openembedded-core, saul.wold

On Tue, 2014-03-04 at 10:28 -0800, nitin.a.kamble@intel.com wrote:
> -        ("virtual/kernel" in provides) and (target_os == "linux-gnux32")):
> +        (("virtual/kernel" in provides) or (KERNEL_MODULE_RECIPE == "1")) and (target_os == "linux-gnux32")):

Can you not use bb.data.inherits_class("module") rather than adding this
extra variable?

Also, out of curiosity, I don't entirely understand how the code above
can possibly work.  KERNEL_MODULE_RECIPE is a bitbake variable that's
either defined to 1 or not defined at all, right?  Is there some special
magic nowadays that allows you to refer to it transparently from python
code without using d.getVar()?

p.




^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 1/1] QA_check: special case kernel modules for x32 targets
  2014-03-04 21:38   ` Phil Blundell
@ 2014-03-04 22:26     ` Kamble, Nitin A
  0 siblings, 0 replies; 4+ messages in thread
From: Kamble, Nitin A @ 2014-03-04 22:26 UTC (permalink / raw)
  To: Phil Blundell; +Cc: Openembedded-core, saul.wold


On 3/4/2014 1:38 PM, Phil Blundell wrote:
> On Tue, 2014-03-04 at 10:28 -0800, nitin.a.kamble@intel.com wrote:
>> -        ("virtual/kernel" in provides) and (target_os == "linux-gnux32")):
>> +        (("virtual/kernel" in provides) or (KERNEL_MODULE_RECIPE == "1")) and (target_os == "linux-gnux32")):
> Can you not use bb.data.inherits_class("module") rather than adding this
> extra variable?
This would simplify the code.
> Also, out of curiosity, I don't entirely understand how the code above
> can possibly work.  KERNEL_MODULE_RECIPE is a bitbake variable that's
> either defined to 1 or not defined at all, right?  Is there some special
> magic nowadays that allows you to refer to it transparently from python
> code without using d.getVar()?
There is no such special magic. This fix need to be fixed.

Thanks,
Nitin

> p.
>
>



^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2014-03-04 22:27 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-03-04 18:27 [PATCH 0/1] A QA_check fix for x32 kernel module packages nitin.a.kamble
2014-03-04 18:28 ` [PATCH 1/1] QA_check: special case kernel modules for x32 targets nitin.a.kamble
2014-03-04 21:38   ` Phil Blundell
2014-03-04 22:26     ` Kamble, Nitin A

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox